objektumorientált programozás pál lászlópallaszlo/oop/eloadasok/1.eloadas.pdf ·...

38
Objektumorientált programozás Sapientia EMTE, Csíkszereda, 2014/2015 Pál László

Upload: others

Post on 21-Oct-2019

12 views

Category:

Documents


0 download

TRANSCRIPT

Objektumorientált programozás

Sapientia EMTE, Csíkszereda, 2014/2015

Pál László

Objektum orientált programozás - Pál László

Előadás tematika

1. Visual Basic ismétlés, kiegészítések2. Objektum orientált programozás (OOP)3. Visual Studio .NET környezet bemutatása4. Komponensek bemutatása

2

4. Komponensek bemutatása5. Több űrlapos alkalmazások6. Kivételkezelés7. Grafika8. Állomány-kezelés9. Adatbázis-kezelés

Objektum orientált programozás - Pál László

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.

3

megoldása.

2. Használt software: Visual Studio Express 2012� Ingyenes programcsomag

� C#, Visual Basic, and C++ nyelveket tartalmazza

Objektum orientált programozás - Pál László

Visual Studio Express telepítési útmutató

� Letöltés: az alábbi címrőlhttp://www.microsoft.com/en-us/download/details.aspx?id=34673

Itt válasszuk a Windows Desktop változatot

4

Objektum orientált programozás - Pál László

Visual Studio Express telepítési útmutató

� Regisztrálás:

Regisztrálás után:

5

Objektum orientált programozás - Pál László

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)

6

� 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

Objektum orientált programozás - Pál László

Könyvészet -1/2

[1] Juhász Tibor-Kiss Zsolt:Programozási ismeretek, Műszaki Könyvkiadó, 2011.

7

[2] Davis, Harold : Visual Basic .NET pentru Windows, Corint, 2004.

Objektum orientált programozás - Pál László

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

8

Előadások, labor feladatok, egyéb dokumentációk megtalálhatók az alábbi linken:

www.emte.siculorum.ro/~pallaszlo

Objektum orientált programozás - Pál László

Vizsgakövetelmények

1. Felmérési mód: kollokviuma) Zárthelyi vizsga I.: 35% (8. hét)

b) Zárthelyi vizsga II.: 35% (14. hét)

9

b) Zárthelyi vizsga II.: 35% (14. hét)

c) Elméleti teszt: 20% ( 14. hét)

d) Előadás jelenlét: 10%

Objektum orientált programozás - Pál László

1. ELŐADÁS

10

Visual Basic bevezetőVisual Basic .NET nyelvi elemek

Objektum orientált programozás - Pál László

Visual Basic bevezető� 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:

11

� 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

Objektum orientált programozás - Pál László

Visual Basic kronológia� Főbb állomások:

� 1991 – 1.0 verzió

� 1992 – 2.0 verzió, windows-os, formok

� 1993 – 3.0 verzió, adatbázis alapú alkalmazások

� 1995 – 4.0 verzió, 16 bites és 32 bites programok

12

� 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)

Objektum orientált programozás - Pál László

Programozási nyelvek rangsora

Forrás:http://www.tiobe.com

13

Objektum orientált programozás - Pál László

Microsoft Visual Studio� 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

14

� Visual Basic

� C++

� C# (C-Sharp)

� J# (J-Sharp)

� ASP

� Kronológia:� VS 97, VS 98, VS .NET 2002, V, VS .NET 2013

� A Professional, Enterprise változatok mellett elérhető az ingyenes Express változat is

Objektum orientált programozás - Pál László

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

15

� Valamennyi nyelv (Visual Basic .NET, Visual C++ .NET, Visual C# .NET, and Visual J# .NET) ugyanazt a fejlesztő környezetet használja

Objektum orientált programozás - Pál László

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

16

� 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.

Objektum orientált programozás - Pál László

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)

17

� 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.

Objektum orientált programozás - Pál László

A .NET keretrendszer (framework)� A .NET vázlatos felépítése:

18

Objektum orientált programozás - Pál László

A .NET keretrendszer (framework)� A .NET vázlatos felépítése:

19

Objektum orientált programozás - Pál László

Névterek a .NET - ben� 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

20

� 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)

Objektum orientált programozás - Pál László

Névterek a .NET - ben� Ú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

21

� System.Collections

� System.Collections.Generic

� System.Data

� System.Diagnostic

� System.Drawing

� System.Windows.Forms

Objektum orientált programozás - Pál László

Visual Basic .NET� 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:

22

� 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

Objektum orientált programozás - Pál László

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

23

� 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

Objektum orientált programozás - Pál László

Visual Basic 2012 Express IDE

24

Objektum orientált programozás - Pál László

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

25

� 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

Objektum orientált programozás - Pál László

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

Objektum orientált programozás - Pál László

Visual Basic programok szerkezete� Konzol alkalmazások létrehozása

� FILE -> New Project -> Console Application

27

� Konzol alkalmazások futtatása� Zöld nyíl:

� Vagy F5

Objektum orientált programozás - Pál László

Visual Basic programok szerkezete� Példa konzol alkalmazás futtatására

28

Objektum orientált programozás - Pál László

Visual Basic programok szerkezete� Windows alkalmazások szerkezete

� Egy vagy több ablak (form) osztálydefinícióját tartalmazzák

29

� Üres űrlapnak megfelelő osztálydefiníció

Objektum orientált programozás - Pál László

Visual Basic programok szerkezete� Windows alkalmazások létrehozása

� FILE -> New Project -> Windows Forms Application

30

� Windows alkalmazások futtatása� Zöld nyíl:

� Vagy F5

Objektum orientált programozás - Pál László

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

Objektum orientált programozás - Pál László

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

megoldás és a projektek jellemzőit

Objektum orientált programozás - Pál László

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

33

� Az alkalmazás forráskódja a .vb valamint a .Designer.vbfá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

Objektum orientált programozás - Pál László

Visual Basic projektek kezelése� A projekt fájljai

34

Megoldás 4 projekttel Az F1 projekt szerkezete

Objektum orientált programozás - Pál László

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

Objektum orientált programozás - Pál László

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

36

Megoldás-tallózó

Objektum orientált programozás - Pál László

Megoldások alkalmazása� 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

37

� 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ó

Objektum orientált programozás - Pál László

Felhasznált szakirodalom1. Juhász Tibor – Kiss Zsolt, Programozási ismeretek,

Műszaki Könyvkiadó, 2012

2. http://msdn.microsoft.com/en-us/library/vstudio/dd831853.aspx

3. http://www.tutorialspoint.com/vb.net/

38