Objektumorientált programozás Pál László Sapientia EMTE, Csíkszereda, 2014/2015
Előadás tematika 1. Visual Basic ismétlés, kiegészítések 2. Objektum orientált programozás (OOP) 3. Visual Studio.NET környezet bemutatása 4. Komponensek bemutatása 5. Több űrlapos alkalmazások 6. Kivételkezelés 7. Grafika 8. Állomány-kezelés 9. Adatbázis-kezelés 2
Laborgyakorlat tematika 1. Nagyjából követi az előadás tematikát. Kitűzött feladatok közös illetve egyéni megoldása. 2. Használt software: Visual Studio Express 2012 Ingyenes programcsomag C#, Visual Basic, and C++ nyelveket tartalmazza 3
Visual Studio Express telepítési útmutató Letöltés: az alábbi címről http://www.microsoft.com/en-us/download/details.aspx?id=34673 Itt válasszuk a Windows Desktop változatot 4
Visual Studio Express telepítési útmutató Regisztrálás: Regisztrálás után: 5
Visual Studio Express telepítési útmutató Rendszer követelmények (VS 2012 Express): Operációs rendszer: Windows 7 SP1 (x86 and x64) Windows 8 (x86 and x64) Hardware: 1.6 GHz processzor 1 GB RAM 5 GB hard disk Megjegyzés: Win XP re a Visual Basic 2010 Express telepíthető az alábbi címről http://www.visualstudio.com/en-us/downloads#d-2010-express 6
Könyvészet -1/2 [1] Juhász Tibor-Kiss Zsolt: Programozási ismeretek, Műszaki Könyvkiadó, 2011. [2] Davis, Harold : Visual Basic.NET pentru Windows, Corint, 2004. 7
Könyvészet - 2/2 [3] Linkek: http://msdn.microsoft.com/en-us/library/vstudio/2x7h1hfk.aspx http://www.dotnetperls.com/vb http://visualstudiomagazine.com/home.aspx Előadások, labor feladatok, egyéb dokumentációk megtalálhatók az alábbi linken: www.emte.siculorum.ro/~pallaszlo 8
Vizsgakövetelmények 1. Felmérési mód: kollokvium a) Zárthelyi vizsga I.: 35% (8. hét) b) Zárthelyi vizsga II.: 35% (14. hét) c) Elméleti teszt: 20% ( 14. hét) d) Előadás jelenlét: 10% 9
1. ELŐADÁS Visual Basic bevezető Visual Basic.NET nyelvi elemek 10
Visual Basic bevezető Objektum orientált programozás - Pál László Visual Basic (VB): a Microsoft által kifejlesztett objektumorientált, eseményvezérelt, strukturált szerkezetű programozási nyelv, a hozzá tartozó integrált fejlesztői környezettel Ismertebb VB változatok: Visual Basic: a VB különböző verziói 2008-ig (VB6) Visual Basic.NET (VB.NET):.NET keretrendszerére épült új fejlesztőbázis (2002-től) Visual Basic for Applications (VBA): a Microsoft Office csomag, valamint néhány más alkalmazáson (pl. AutoCAD) belül futtatható programok írására szolgál 11
Visual Basic kronológia Főbb állomások: 1991 1.0 verzió 1992 2.0 verzió, windows-os, formok Objektum orientált programozás - Pál László 1993 3.0 verzió, adatbázis alapú alkalmazások 1995 4.0 verzió, 16 bites és 32 bites programok előállítása 1997 5.0 verzió, csak 32 bites támogatás 1998 6.0 verzió, internet alapú alkalmazások (2008 - a Microsoft hivatalosan, végleg befejezte a VB6 fejlesztői támogatását) 2002 Visual Basic.NET (VB7) 12
Programozási nyelvek rangsora Forrás: http://www.tiobe.com 13
Microsoft Visual Studio Objektum orientált programozás - Pál László Egy integrált fejlesztő környezet, amely alkalmas konzol, grafikus, mobil alkalmazások valamint weboldalak készítésére Több fejlesztő eszközt tartalmaz: Visual Basic C++ C# (C-Sharp) J# (J-Sharp) ASP Kronológia: VS 97, VS 98, VS.NET 2002,, VS.NET 2013 A Professional, Enterprise változatok mellett elérhető az ingyenes Express változat is 14
Microsoft Visual Studio.NET A.NET keretrendszerre alapúló integrált fejlesztő környezet, amely alkalmas desktop, mobil valamint webalapú alkalmazások készítésére Valamennyi nyelv (Visual Basic.NET, Visual C++.NET, Visual C#.NET, and Visual J#.NET) ugyanazt a fejlesztő környezetet használja 15
A.NET keretrendszer (framework) A.NET technológia lehetővé teszi alkalmazások, programok, szolgáltatások nyelv-, rendszer- és platformfüggetlen felépítését Fontosabb jellemzői: Sok osztálykönyvtárral rendelkezik, amelyek a.net nyelvek rendelkezésére állnak Nem követel meg egy bizonyos operációs rendszert. Az ilyen programok futtatásához csak a.net futáskörnyezet (runtime framework) megléte szükséges. A.NET osztályok a Win32 API osztályokat helyettesítik. 16
A.NET keretrendszer (framework) Fontosabb jellemzői (folytatás): A.NET "szíve" egy virtuális gép, amely menedzselt kódot (managed code) hajt végre. A.NET fordítók menedzselt kódot állítanak elő, ezért az ilyen alkalmazások platformfüggetlenek lesznek. Rendelkezik szemétgyűjtővel (Garbage Collector) Mivel a.net fordítók közbülső nyelvre (MSIL - Microsoft Internal Language) fordítanak, ezért minden.net nyelv lényegében ugyanazt tudja. 17
A.NET keretrendszer (framework) A.NET vázlatos felépítése: 18
A.NET keretrendszer (framework) A.NET vázlatos felépítése: 19
Névterek a.net - ben Objektum orientált programozás - Pál László A.NET több ezer definíciót magában foglaló osztálykönyvtára hierarchikus rendszert alkot A rendszer csomópontjait névtérnek nevezzük Egy névtér többek között tartalmazhat további névtereket, osztálydefiníciókat vagy struktúrákat A névterek rendszerét egy háttértár mappaszerkezetéhez hasonlóan képzelhetjük el A névterek lehetővé teszik az osztályok csoportosítását, megkönnyítik az áttekintést és megakadályozzák az azonosítók ütközését A.NET-ben egy névtértérben tárolt azonosítóinak közvetlen eléréséhez importálnunk kell a névteret a projektbe (Imports utasítás) 20
Névterek a.net - ben Objektum orientált programozás - Pál László Új projekt létrehozása esetén a fejlesztőrendszer alapértelmezés szerint automatikusan importálja a következő névtereket: Microsoft.VisualBasic System System.Collections System.Collections.Generic System.Data System.Diagnostic System.Drawing System.Windows.Forms 21
Visual Basic.NET Objektum orientált programozás - Pál László Visual Basic.NET(VB.NET): egy objektumorientált programozási nyelv, amely a klasszikus Visual Basic nyelv továbbfejlesztett változata a.net keretrendszerben Változatok: VB.NET 2002: felügyelt kód bevezetése (managed code) VB.NET 2003: gyorsabb fordítás VB 2005: My namespace bevezetése, a javításokkal közelebb kerül más nyelvekhez (pld. C#). Express kiadások megjelenése VB 2008: újabb nyelvi javítások VB 2010: VB 2012: iterátorok bevezetése, 4.5.NET keretrendszer 22
VB 2012 Express IDE jellemzők Lényegesen csökkenti a beírandó kód mennyiségét: gyors fejlesztés (RAD - Rapid Application Development) Automatikus kód színezés: Kulcsszavak kék színnel Megjegyzés: zöld Forráskód rendezése különböző fájlokban, modulokban IntelliSense: technológia, amely a gyors fejlesztést segíti lista elemek, paraméter infó, gyors információ és kódkiegészítés Valós-idejű hibajelzés: Kék aláhúzás hibát jelent Zöld aláhúzás lehetséges hibát jelent 23
Visual Basic 2012 Express IDE 24
Visual Basic programok szerkezete Konzol (nem grafikus) alkalmazások szerkezete A Windows parancssori ablakában futnak Karakteres felületén keresztül kommunikálnak a felhasználóval Egy vagy több modulból áll Változódeklarációkat és eljárásokat tartalmazhat Futtatáskor a modul Main nevű eljárása kerül végrehajtásra 25
Visual Basic programok szerkezete Konzol alkalmazások szerkezete Több modul esetén mindig be kell állítani a futtatandó modult a Project Properties tulajdonságánál 26
Visual Basic programok szerkezete Konzol alkalmazások létrehozása FILE -> New Project -> Console Application Konzol alkalmazások futtatása Zöld nyíl: Vagy F5 27
Visual Basic programok szerkezete Példa konzol alkalmazás futtatására 28
Visual Basic programok szerkezete Windows alkalmazások szerkezete Egy vagy több ablak (form) osztálydefinícióját tartalmazzák Üres űrlapnak megfelelő osztálydefiníció 29
Visual Basic programok szerkezete Windows alkalmazások létrehozása FILE -> New Project -> Windows Forms Application Windows alkalmazások futtatása Zöld nyíl: Vagy F5 30
Visual Basic projektek kezelése Megoldások és projektek Projekt (Project): adott alkalmazáshoz szükséges fájlokat fogja össze (űrlapok, modulok, stb.) Megoldás (Solution): egy vagy több projektből áll 31
Visual Basic projektek kezelése Megoldások és projektek Kódfájl:.vb kiterjesztésű szövegfájlok, amelyek programjaink (űrlapok, modulok) forráskódját tartalmazzák A Visual Studio adminisztrációs fájlokban tárolja a megoldás és a projektek jellemzőit 32
Visual Basic projektek kezelése A projekt fájljai A Visual Studio a projekt mentésénél összetett mappaszerkezetet alakít ki A projektek a megoldás mappában találhatóak Az alkalmazás forráskódja a.vb valamint a.designer.vb fájlokban van Az előbbi az osztály definícióját tartalmazza a változódeklarációkkal és eljárásokkal együtt, míg a.designer.vb fájlban az ablak beállításait, szerkezetét tároljuk A projekt bin mappájában találjuk a futtatható.exe fájlokat.sln a megoldás fájlt jelenti 33
Visual Basic projektek kezelése A projekt fájljai Megoldás 4 projekttel Az F1 projekt szerkezete 34
Visual Basic projektek kezelése Projekt mentése és megnyitása Mentés: Save All az egész projektet menti, a Save pedig az aktuális kódfájlt Megnyitás: File -> Open Project vagy kattintsunk a projekt mappájában lévő.vbproj fájlra vagy az.sln fájlra 35
Visual Basic projektek kezelése Űrlap és kódszerkesztő közötti mozgás Dupla klikk a.vb fájlon a Megoldás-tallózóban (Solution Explorer) vagy rajta jobb klikk: View Code (Ctrl+Alt+0) <-> View Designer (Shift+F7) A fülek közötti mozgással Megoldás-tallózó 36
Megoldások alkalmazása Objektum orientált programozás - Pál László Ha létrehozunk egy új projektet, az önmagában is egy megoldást alkot. A különbség azonban akkor válik láthatóvá, amikor újabb projekteket veszünk fel a megoldásba Új projekt hozzáadása egy létező megoldáshoz: A megoldásra jobb klikk, majd a menüből válasszuk az Add->New Project menüpontot Kezdőprojekt kijelölése: jobb klikk a projektre, majd a Set as StartUp Project menü kiválasztása A kezdőprojekt félkövér névvel látható 37
Felhasznált szakirodalom Objektum orientált programozás - Pál László 1. Juhász Tibor Kiss Zsolt, Programozási ismeretek, Műszaki Könyvkiadó, 2012 2. http://msdn.microsoft.com/enus/library/vstudio/dd831853.aspx 3. http://www.tutorialspoint.com/vb.net/ 38