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

Programozási technológia 2. EA+GY. (BSc,08,E) Előadás – B szakirányos szoftvertechnológia előadás szerda – 17.45–19.15, D 0-823 (Kitaibel Pál terem) Giachetta.

Hasonló előadás


Az előadások a következő témára: "Programozási technológia 2. EA+GY. (BSc,08,E) Előadás – B szakirányos szoftvertechnológia előadás szerda – 17.45–19.15, D 0-823 (Kitaibel Pál terem) Giachetta."— Előadás másolata:

1 Programozási technológia 2. EA+GY. (BSc,08,E) Előadás – B szakirányos szoftvertechnológia előadás szerda – 17.45–19.15, D (Kitaibel Pál terem) Giachetta Roberto Gyakorlat szerda – 19.30–20.15, D (Programozási nyelvi labor) Szita Balázs Elérhetőség: honlap: szbragi.web.elte.hu

2 Programozási technológia 2. EA+GY. (BSc,08,E) Követelmények Egy összetettebb szoftverfejlesztési feladat megoldása a félév során 4 mérföldkő, 4 jegy a félév végi jegy ezen négy jegy súlyozatlan átlaga, amennyiben az utolsó jegy nem egyes Java nyelv, IDE-ben Java technológiák használata adatbázis – JDBC grafikus felület (GUI) – Swing CRUD, kódminőség, OOP, rétegezettség tesztelés (unit test) – JUnit dokumentáció tervek, diagramok tesztelés saját gépen is bemutatható

3 Programozási technológia 2. EA+GY. (BSc,08,E) Menetrend konzultációk (igény esetén, nem kötelező) „előadások” (igény esetén, nem kötelező) beadandó bemutatások konzultációs igény, előadásos igény bejelentése, valamint beadandó bemutatásra való jelentkezés ben

4 Programozási technológia 2. EA+GY. (BSc,08,E) Határidők 3. hét, szeptember 23. feladat kiválasztása, pontos szövegének rögzítése 5. hét, október 7. use case model (elemzés)  jegy 7. hét, október 21. UML, adatbázis-terv (tervezés)  jegy 10. hét, november 18. főbb feature-ök bemutatása  jegy 12. hét, december 2. végleges változat bemutatása, tesztelés  jegy

5 Programozási technológia 2. EA+GY. (BSc,08,E) Előadások Kínálat az első 1-2 órára - osztály; getter, setter; public, private; konstruktor - interface, abstract; extends, implements; generalizáció, polimorfizmus - wrapperek, Integer vs int; paraméterátadásbeli vonatkozások - equals; clean code; enumok - UML, class, component, use case, többiek dióhéjban; UML átírása  előadás - Collections - file-kezelés, nio - kivételek - Swing, listenerek egyéb ötlet? !

6 Programozási technológia 2. EA+GY. (BSc,08,E) Előadások Haladóbb témák - DTO, DAO; Adateleresi reteg, fájlra, adatbázisra - JDBC, JPA - Singleton vs static - Patternek - JUnit, TDD - XML parserek - SWT - OSGi, Maven, Ant egyéb ötlet? majd amikor aktuális lesz

7 Programozási technológia 2. EA+GY. (BSc,08,E) Beadandó feladatok 1. Internet-kávézó: Készítsünk programot, amely egy internet-kávézó nyilvántartását tudja kezelni az alábbi funkciókkal: A programban megtekinthetőek a számítógépek adatai (azonosító, hardver leírás, operációs rendszer) Felvehetünk új ügyfeleket, akiknek megadjuk a nevét, személyi igazolvány számát, címét, valamint felhasználónevét és jelszavát. Az adatokat a későbbiekben módosíthatjuk is (kivéve a felhasználónevet). Az ügyfeleket is listázhatjuk a programban (azonosító, cím, személyi igazolvány szám). Az ügyfél kiválasztásával beléptethetjük, valamint kiléptethetjük a kávézóból. Beléptetéskor kiválasztjuk a számítógépet, amelyet az ügyfél elfoglal (természetesen csak szabad gépet lehet megadni). Az időpontok automatikusan rögzítésre kerülnek, és ezek alapján terhelődik az ügyfél számlája, amelyet az ügyfeleknél tekinthetünk meg. Szintén az ügyfél kiválasztásával végezhetünk befizetést. A befizetett összegeket le kell vonnunk a számlából. Az adatbázis az alábbi adatokat tárolja (ezek még nem feltétlenül a fizikai adattáblák): ügyfelek (azonosító, jelszó, cím, személyi igazolvány szám); számítógépek (azonosító, hardver leírás, operációs rendszer); használat (ügyfél azonosító, számítógép azonosító, bejelentkezés időpontja,kijelentkezés időpontja); befizetések (ügyfél azonosító, összeg).

8 Programozási technológia 2. EA+GY. (BSc,08,E) Beadandó feladatok 2. Könyvtár nyilvántartás: Készítsünk programot, amellyel egy könyvtár nyilvántartását valósíthatjuk meg az alábbi funkciókkal: A programban megtekinthetőek a tagok adatai (név, cím, könyvtárjegy szám), valamint a könyvek adatai (szerző, cím, ISBN szám, kiadás éve, összes példányszám, szabad példányszám). Lehetőségünk van új tag felvitelére a név és cím megadásával. A könyvtárjegy száma automatikusan generálódik. A tag módosítható, illetve törölhető is, amennyiben nincs kint lévő kölcsönzése (a könyvtárjegy száma nem módosítható). Tag, illetve könyv kijelölésével vihetünk fel új kölcsönzést. Csak akkor lehet kölcsönözni, ha még van szabad példány, és egy tag egyszerre csak négy könyvet kölcsönözhet. A kölcsönzés dátumát automatikusan rögzítjük. A kikölcsönzött könyveket lehessen visszahozni. A visszahozatal dátumát automatikusan rögzítjük. Az adatbázis az alábbi adatokat tárolja (ezek még nem feltétlenül a fizikai adattáblák): tagok (név, cím, könyvtárjegy szám) könyvek (szerző, cím, ISBN szám, kiadás éve, példányszám) kölcsönzések (tag, könyv, kölcsönzés dátuma, visszahozás dátuma)

9 Programozási technológia 2. EA+GY. (BSc,08,E) Beadandó feladatok 3. Áruház: Készítsünk programot, amely egy számítástechnikai termékekkel foglalkozó cég árukészletét és rendeléseit kezeli. A programot használhatják az alkalmazottak és a vevők is, de az egyszerűség kedvéért elegendő egy közös felhasználói felületet készíteni. A program jelenítse meg kategóriánként a termékeket (gyártó, típus, leírás, ár, raktárkészlet, aktív-e), valamint legyen lehetőség az aktív termékek raktárkészletének növelésére. Legyen lehetőség új termék felvitelére az előbb leírt tulajdonságok mindegyikének megadásával, ám a raktárkészlet kezdetben mindig 0 legyen. Amennyiben egy termék hosszabb távon nem hozzáférhető, lehessen inaktívvá tenni. Később természetesen lehessen újra aktívvá tenni is. A program jelenítse meg a még nem teljesített rendeléseket (dátum, név, cím, telefonszám, cím, összérték), és mindegyiknél jelezze, hogy a rendelés teljesíthető-e - azaz rendelkezésre áll-e a termékeknél a kellő raktárkészlet, figyelembe véve a megrendelt darabszámokat és az aktivitásokat is. A teljesíthető megrendeléseket lehessen teljesíteni azok kiválasztásával. Teljesítéskor a program kérjen megerősítést, majd automatikusan módosítsa a raktárkészletet is. A teljesített megrendelések többé ne legyenek láthatóak. Legyen lehetőség új megrendelés leadására a név, a cím, a telefonszám és az cím megadásával, valamint a megrendelni kívánt termékek felsorolásával. Egy adott termékből egyszerre több darabot is lehessen rendelni. Csak az aktív termékek közül lehessen válogatni. Az adatbázis az alábbi adatokat tárolja (ezek még nem feltétlenül a fizikai adattáblák): Kategóriák: név; Termékek: gyártó, típus, leírás, kategória, ár, raktárkészlet, aktív-e; Rendelések: név, cím, telefonszám, cím, termékek listája, teljesített-e.

10 Programozási technológia 2. EA+GY. (BSc,08,E) Beadandó feladatok 4. Multiplex mozi: Készítsünk programot, amely egy multiplex mozi jegyeladásait tudja kezelni az alábbi funkciókkal: A programban megtekinthetőek a filmek adatai (cím, származás, szinkronizált-e, rendező, szinopszis, hossz). Lehet egy adott filmet, illetve termet kiválasztva új előadást hirdetni adott időpontra,valamint előadást lehet törölni, amennyiben senki sem foglalt rá helyet. A programnak figyelnie kell, hogy két előadás ne ütközzön az adott teremben (a film hossza után kell fél óra takarítási időt számolni). A program listázza az előadásokat időpont szerint. Minden előadásnál legyen látható, mennyi szabad hely van még rá. A meghirdetett előadásokra lehet helyet foglalni. A helyfoglalás adott székre (sor és oszlop megadásával) történik figyelembe véve, hogy az a szék még nincs lefoglalva. A lefoglalt helyek ezek után bármikor kiadhatóak. Kiadott jegyet már nem lehet újra kiadni, de egy foglalást vissza lehet vonni. Az adatbázis az alábbi adatokat tárolja (ezek még nem feltétlenül a fizikai adattáblák): filmek (cím, származás, szinkronizált-e, rendező, szinopszis, hossz); termek (név, sorok és oszlopok száma); előadások (film, kezdő időpont, terem); helyek (előadás, terem, sor, oszlop, státusz ).

11 Programozási technológia 2. EA+GY. (BSc,08,E) Beadandó feladatok 5. Autószerviz: Készítsünk programot, amellyel egy autószerviz munkalap karbantartását tudjuk elősegíteni az alábbi funkciókkal: A programban megtekinthetőek a munkatársak adatai (név, cím, telefonszám, óradíj). Lehetőségünk van új munkalapot nyitni a mai dátummal (automatikusan beállításra kerül), amelyben megadjuk a vevő adatait, a munkatársat, a munka hosszát, valamint tetszőleges számban rögzíthetünk anyagokat, illetve alkatrészeket. A munkalapot a felvételt követően lehet törölni, illetve bármilyen adatát módosítani (kivéve a dátumát). A munkalapot később lehet véglegesíteni, amennyiben minden adatot rögzítettünk, és nem nulla az időtartam. Ekkor az állapota kifizetett lesz, és már tovább nem módosítható, és nem törölhető. Minden munkalapnál számítsuk ki a teljes árat, amely egyfelől a felhasznált anyagok és alkatrészek árának összege, másfelől a munka időtartamának megfelelő munkadíj. A program listázza a munkalapokat (sorszám, dátum, vevő neve, teljes ár, fizetés állapota). Az adatbázis az alábbi adatokat tárolja (ezek még nem feltétlenül a fizikai adattáblák): munkalapok (vevő neve, címe, autó rendszáma, munkatárs, dátum); munkatársak (név, cím, telefonszám, óradíj); anyagok és alkatrészek (cikkszám, név, egységár); felhasznált anyagok és alkatrészek (munkalap és alkatrész azonosító).

12 Programozási technológia 2. EA+GY. (BSc,08,E) Kvíz - Mi a különbség az extends és az implements kulcsszavak között? Milyen szituációkban használhatjuk őket? - Milyen gondokat okozhatnak a nullreferenciák? Hogy lehet ezt elkerülni? - Mit ír ki az alábbi kódrészlet? void f(int i) { ++i; } void g(Integer i) { ++i; } public static void main(String[] args) { int i = 0; Integer j = 0; Integer k = new Integer(0); Integer l = k; f(i); f(j); f(k); f(l); f(i); f(j); f(k); f(l); System.out.println(i); System.out.println(j); System.out.println(j);System.out.println(l); }

13 Programozási technológia 2. EA+GY. (BSc,08,E) Kvíz - Mit ír ki az alábbi kódrészlet? class A { public A() { System.out.println(f()); } protected int f() { return 0; } class B extends A { private int i = 10; public B() { protected int f() { return i; } public static void main(String[] args) { new B(); }

14 Programozási technológia 2. EA+GY. (BSc,08,E) Kvíz - Mire való a volatile változó? - Milyen helyzetekben lehet használni a final kulcsszót és mit jelent az egyes esetekben? - Mi a különbség a Comparator és a Comparable között? - Mi a különbség az int és az Integer között? - Milyen kapcsoaltban vannak az Object osztály equals és hashcode függvényei? - Mire jó a try with resources konstrukció? - Sorolj fel néhány Java 8-as feature-t - Milyen láthatósági szintek vannak? Hogy jelöljük őket Javában és UML-ben? - Mi az hogy generic? - enum valósíthat-e meg interfészt? - Milyen előnyökkel jár, amennyiben konstanst hasonlítunk össze változóval, ha a konstanson hívjuk meg az equalst és nem fordítva? Mikor tehetjük ezt meg? - Milyen verziókezelő rendszerekről hallottál? Mi az előnyük? - Milyen asszociáció fajták léteznek az UML osztálydiagramban, hogy jelöljük őket, mik köztük a különbségek? - Vízesés vs. V-modell - Mit jelent az agilitás a szoftverfejlesztésben? Mit tudsz a scrumról? - Mikor lesz már vége a sok kérdésnek? :/


Letölteni ppt "Programozási technológia 2. EA+GY. (BSc,08,E) Előadás – B szakirányos szoftvertechnológia előadás szerda – 17.45–19.15, D 0-823 (Kitaibel Pál terem) Giachetta."

Hasonló előadás


Google Hirdetések