Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

HF MINTA 2012/2013. ősz. HF Minta  Objektum-orientált program  „Adatvezérelt” alkalmazás írása  Fájl kezelés (olvasás, írás)  Menü készítése  5-6.

Hasonló előadás


Az előadások a következő témára: "HF MINTA 2012/2013. ősz. HF Minta  Objektum-orientált program  „Adatvezérelt” alkalmazás írása  Fájl kezelés (olvasás, írás)  Menü készítése  5-6."— Előadás másolata:

1 HF MINTA 2012/2013. ősz

2 HF Minta  Objektum-orientált program  „Adatvezérelt” alkalmazás írása  Fájl kezelés (olvasás, írás)  Menü készítése  5-6 funkció implementálása  Kb 150 sor kód  Minimális dokumentáció

3 Hallgatói nyilvántartás - Specifikáció  A projekt célja egy hallgatói nyilvántartás készítése. Egy hallgatóról szeretnénk nyilvántartani a nevét, email címét, születési idejét, neptun kódját, kar, szak adatait. A szoftvertől az alábbi funkcionalitást várjuk el:  Hallgatói lista fájlba mentése  Hallgatói lista olvasása fájlból  Új hallgató felvétele  Hallgató keresése neptun kód alapján  Hallgató törlése neptun kód alapján  Hallgatók listázása  Egyszerű menüstruktúra

4 Megoldás menete  Adatstruktúra elkészítése  Funkciók implementálása ( függvények)  Menürendszer készítése  Tesztelés

5 Hallgató osztály  Nev: string  Emailstring  Birthdaystring  Neptunstring  Karstring  Szakstring

6 Hallgató osztály függvényei  Hallgató adatainak beállítása  Hallgató adatainak formázott kiírása  Hallgató adatainak beolvasása fájl 1 sorából  Fájl 1 sorának előálíltása a hallgató adatainak alapján  Neptun kód lekérdezése 

7 def setData(self,name,email,birthday,neptun,kar,szak):  Egyesével állítsuk be a kapott paramétereknek megfelelően az objektum tulajdonságait:

8 printHallgato(self):  Formázva kiírjuk a hallgatót

9 def setDataFromStream(self,stringData):  A fáljban az adatok az alábbi struktúrának megfelelően vannak tárolva (elválasztó karakter a #): Név#email cím#születési idő#neptun#kar#szak Pl: Teszt Elek#teszt@teszt.hu#1982.01.01#ABCDEFGH#Info#Informatikus  A függvény kap egy sort, és ebből beállítja a hallgató egy-egy tulajdonságát

10 def getDataStream(self):  Aktuális hallgató alapján adja vissza az előbb sort elválasztó karakterekkel együtt:

11 def getNeptun(self):  Adott hallgató neptun kódjának lekérdezése

12 Program váza  A fő programunk a hallgatókat a memóriába egy listában tárolja hallgatoList=[]  Ezen kívül a menü kiírását végzi, és a kiválasztott funkciónak megfelelően hívja a megfelelő függvényeket

13 Menürendszer kirajzolása

14 1: Hallgató felvétele  Új hallgató felvétele  Létrehozzuk a hallgatót  Bekérjük az adatokat egyesével  Beállítjuk a létrehozott hallgató tulajdonságait

15 2: Hallgatók listázása  Kapunk egy hallgató listát  Végigmegyünk a lista minden elemén  Minden elemre meghívjuk az elemet kiirató függvényt

16 3: Hallgató keresése neptun kód alapján  A függvény kap egy hallgató listát, és egy neptun kódot  Végigmegyünk a listán és miden neptun kódot összehasonlítunk a paraméterben kapot neptun kóddal  Ha van találat kiírjuk az adott hallgatót, ha nincs kiírjuk, hogy „Nincs ilyen hallgató”

17 4: Hallgató törlése neptun kód alapján  A függvény kap egy hallgató listát, és egy neptun kódot  Végigmegyünk a listán és miden neptun kódot összehasonlítunk a paraméterben kapot neptun kóddal  Amennyiben találtunk megfelelőt, akkor azt kitöröljük a listából

18 5: Hallgatók lista fájlba mentése  A függvény kap egy hallgató listát paraméterként  Megnyitjuk olvasásra a fájlt  Végigmegyünk a hallgató lista minden elemén  Minden elemre beszúrunk egy sort a fájlba.  A sor előállításához használjuk a hallgató getDataStream függvényét  Majd bezárjuk a fájlt

19 6: Hallgatók betöltése fájlból  Létrehozunk egy segéd listát  Megnyitjuk a fájlt olvasásra  Soronként olvassuk a fájlt  Minden sorra létrehozunk egy hallgatót  Meghívjuk a hallgató setDataFromStream függvényét az aktuális sorral  Az így létrehozott hallgatót hozzáadjuk a listánkhoz  A függvény visszatér az adott listával

20 Főprogram

21 Dokumentáció  Adatszerkezet bemutatása  Fájl szerkezetének bemutatása  Függvények bemutatása, melyik mit csinál


Letölteni ppt "HF MINTA 2012/2013. ősz. HF Minta  Objektum-orientált program  „Adatvezérelt” alkalmazás írása  Fájl kezelés (olvasás, írás)  Menü készítése  5-6."

Hasonló előadás


Google Hirdetések