OOP és UML Áttekintés Tóth Zsolt Miskolci Egyetem
2013
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
1 / 32
Tartalom jegyzék 1
OOP Osztály ˝ Öröklodés Interfész, Absztrakt Osztály Kivétel kezelés
2
UML Osztálydiagram
3
Verziókövetés SVN SVN Szerverek SVN Kliensek
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
2 / 32
Osztály
Valóság egy szelete Logikai egység Tulajdonságok Viselkedés 1. ábra
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
3 / 32
Osztály Viselkedés Metódusok Nyilvánossági szintek
Tulajdonságok Példány szintu˝ adattagok private Egyszeru˝ típusok
Metódusnév túlterhelés Konstruktor Paraméter módosítók I
Osztály típusok
I
Tulajdonság (Property)
I I
ref out params
Default érték → opcionális paraméter
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
4 / 32
Nyilvánossági Szintek
public (+) bármely csomagban lévo˝ bármely osztályból elérheto˝ protected internal védett belso˝ protected (#) védett ˝ a szerelvénybol ˝ internal csak ebbol ˝ az osztályból private (-) csak ebbol static Osztály szintu˝ adattag
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
5 / 32
Delegátumok
delegate Függvény pointer Függvényt definiál Függvény, mint típus Lehet paraméter Több implementáció
Tóth Zsolt (Miskolci Egyetem)
Callback mechanizmus Függvény függvényt kap paraméterül Használja a függvényt Eseménykezelés alapja
OOP és UML Áttekintés
2013
6 / 32
Események
Grafikus felület
event
File kezelés
Delegátum típusú ˝ Típusának megfelelo˝ kezelok Feliratkozás += Leiratkozás -=
Tóth Zsolt (Miskolci Egyetem)
Párhuzamos feladatok Alacsony szintu˝ fejlesztés ˝ nem ismert Elore implementáció
OOP és UML Áttekintés
2013
7 / 32
Tartalom jegyzék 1
OOP Osztály ˝ Öröklodés Interfész, Absztrakt Osztály Kivétel kezelés
2
UML Osztálydiagram
3
Verziókövetés SVN SVN Szerverek SVN Kliensek
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
8 / 32
˝ Öröklodés
Osztályhierarchia
protected
Általánosítás
sealed osztály
Specializáció
sealed metódus
Statikus típus
base(...)
Dinamikus típus
is, as
Auto :
virtual, override
Jarmu
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
9 / 32
Tartalom jegyzék 1
OOP Osztály ˝ Öröklodés Interfész, Absztrakt Osztály Kivétel kezelés
2
UML Osztálydiagram
3
Verziókövetés SVN SVN Szerverek SVN Kliensek
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
10 / 32
Interfész
Publikus metódusok összessége Metódus deklarációk
˝ Többszörös öröklodés
Nem tartalmaz implementációt
Egy osztály – több interface
Kötelezo˝ implementálni
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
11 / 32
Absztrakt Osztály
Osztály Tartalmazhat implementációt Egy vagy több absztrakt metódus Részben vagy egészben implementálni kell 2. ábra
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
12 / 32
Példa
3. ábra
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
13 / 32
Tartalom jegyzék 1
OOP Osztály ˝ Öröklodés Interfész, Absztrakt Osztály Kivétel kezelés
2
UML Osztálydiagram
3
Verziókövetés SVN SVN Szerverek SVN Kliensek
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
14 / 32
Kivétel
4. ábra
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
15 / 32
Kivétel
Hibák Események I I I I
Exception osztály try
Megtelt a lemez Hibás elérési út Jogosultságok ...
catch finally throw
Hibakezelést
Elso˝ illeszkedo˝ blokk
Felhasználói és rendszer kivételek
Tóth Zsolt (Miskolci Egyetem)
Egymásba ágyazhatóság
OOP és UML Áttekintés
2013
16 / 32
Tartalom jegyzék 1
OOP Osztály ˝ Öröklodés Interfész, Absztrakt Osztály Kivétel kezelés
2
UML Osztálydiagram
3
Verziókövetés SVN SVN Szerverek SVN Kliensek
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
17 / 32
Osztály
1
Osztálynév, sztereotípia
2
Adattagok láthatóság név : típus
3
Metódusok láthatóság név([paraméterek]) : visszatérési típus 5. ábra
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
18 / 32
˝ Öröklodés
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
19 / 32
Interface
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
20 / 32
Tartalmazás
Aggregáció
Kompozíció
Üres gyémánt
Teli gyémánt
Tartalmazó oldalon
Tartalmazó oldalon
Zenész és hangszerei
Ház és falak
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
21 / 32
Tartalom jegyzék 1
OOP Osztály ˝ Öröklodés Interfész, Absztrakt Osztály Kivétel kezelés
2
UML Osztálydiagram
3
Verziókövetés SVN SVN Szerverek SVN Kliensek
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
22 / 32
SVN
Felváltja a CVS–t
Szerverek
Aktuális verzió
I
Történetiség követése
I
Kliens – Szerver Repository I I I
Kliensek I I
Trunk Branches Tags
Tóth Zsolt (Miskolci Egyetem)
VisualSVN svnserve
I I
OOP és UML Áttekintés
svn TortoiseSVN Visual Studio Subsclipse
2013
23 / 32
Repository
Ajánlott Projektstruktúra trunk a projekt fo˝ szála
Projektek Egy szerver – több repository Egy repository – több projekt
branches a projekt mellékszálai, oldalirányok
Jogosultságok
tags A projekt mérföldkövei, kiadott ˝ verziói, idoben nem változnak
Felhasználó csoportok
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
24 / 32
˝ muveletek Legfobb ˝
commit
checkout Repository lekérdezése adott ˝ URL–rol
Módosítások mentése a szerverre
Létrejön a munkapéldány a kliensen
Üzenet írása FONTOS
update Munkapéldány frissítése a ˝ szerverrol Munkapéldány felülírásra kerül
Tóth Zsolt (Miskolci Egyetem)
add Új állomány hozzáadás a repository–hoz Csak a hozzáadott állományok kerülnek bele a repository–ba.
OOP és UML Áttekintés
2013
25 / 32
Tartalom jegyzék 1
OOP Osztály ˝ Öröklodés Interfész, Absztrakt Osztály Kivétel kezelés
2
UML Osztálydiagram
3
Verziókövetés SVN SVN Szerverek SVN Kliensek
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
26 / 32
svnserve
Linux svnserve.conf Szerver beállítások
Egyszeru˝ szerver Alap funkciók Segédprogramok I I
passwd Felhasználó nevek és jelszavak
svnadmin svn
authz Jogosultság kezelés
svnadnim create <path>
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
27 / 32
VisualSVN
Ingyenes SVN Server Windows Számos kiegészíto˝ funkció Saját GUI HTTPS Windows Authentikáció
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
28 / 32
Tanszéki SVN Szerver
https://193.6.5.42/svn/CSharp LDAP autentikáció szükséges
Órákra, témakörökre bontva
Csak olvasási jog
C# projekt
Több példa projekt
Importálható VS–be
Gyakorlati feladatok
Elkészült gyakorlati feladatok
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
29 / 32
Tartalom jegyzék 1
OOP Osztály ˝ Öröklodés Interfész, Absztrakt Osztály Kivétel kezelés
2
UML Osztálydiagram
3
Verziókövetés SVN SVN Szerverek SVN Kliensek
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
30 / 32
TortoiseSVN
Windows Kliens Ingyenes ˝ Intézobe épül be Egyszeruen ˝ használható
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
31 / 32
Visual Studio (Ankh SVN)
Visual Studio plugin Ingyenes Külön be kell állítani Tools -> Source Control Számos beépülo˝ szolgáltatás Ropository Explorer
Tóth Zsolt (Miskolci Egyetem)
OOP és UML Áttekintés
2013
32 / 32