![Page 1: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/1.jpg)
Java - I. / 1
Angster Erzsébet: OO tervezés és programozás,
Java I. kötet alapján
Készítette: Andor Gergely és Angster Erzsébet
Ellenőrizte: Dr. Szelezsán János
Jóváhagyta: Lengyel Zsuzsánna
![Page 2: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/2.jpg)
Java - I. / 2
I. Bevezetés a programozásba
II. Objektumorientált paradigma
III. Java környezet
IV. Java programozási alapok
V. Osztályok használata, készítése
VI. Konténerek
![Page 3: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/3.jpg)
Java - I. / 3
1. A számítógép és a szoftver
2. Adat, algoritmus
3. A szoftver fejlesztése
![Page 4: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/4.jpg)
Java - I. / 4
1. A számítógép és a szoftver1. Objektum, adat, program
2. Programozási nyelv
3. A program szerkesztése, fordítása, futtatása
4. A szoftverek osztályozása
5. Szoftverkrízis
6. A szoftver minőségének jellemzői7. Moduláris programozás8. Módszertanok
![Page 5: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/5.jpg)
Java - I. / 15
Programozás Java környezetben
Forrásprogram (forráskód) megírása
Forráskód lefordítása bájtkódra (javac.exe)
JVM (Java Virtual Machine, java.exe)
• Modulok összeszerkesztése (linker)
• Bájtkód értelmezése, fordítása, futtatása
lépésenként (interpreter)
![Page 6: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/6.jpg)
Java - I. / 16
Értelmező (Interpreter)Egy program, mely a forrásprogramot vagy a bájtkódot utasításonként értelmezi, fordítja le, és hajtja végre.
Fordító (Compiler)Egy program, mely a teljes forrásprogramot gépi kódra, illetve közbenső bájtkódra alakítja.
BájtkódA magas szintű forráskód és a gépi kód közötti gépfüggetlen közbenső kód.
![Page 7: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/7.jpg)
Java - I. / 17
javac.exe
Fordítóprogram
Java program fordítása
App.java : 7 : Class int not found
Fordítási hibák
… int a = 7 ;
a = a * 5 ;…
Forráskód (App.java)
00971CDF
0000F3F1Bájtkód (App.class)
vagy
![Page 8: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/8.jpg)
Java - I. / 18
… … ...
Memóriaa
00971CDF
0000F3F1
Bájtkód (App.class)
Bájtkód futtatása interpreterrel
7 00971CDF35 0000F3F1
![Page 9: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/9.jpg)
Java - I. / 36
3. A szoftver fejlesztése1. A szoftverfejlesztés alkotómunka
2. Az Egységesített Eljárás
3. Követelményfeltárás
4. Analízis
5. Tervezés
6. Implementálás (kódolás)
7. Tesztelés
8. Dokumentálás
![Page 10: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/10.jpg)
Java - I. / 37
A szoftver fejlesztése
Egységesített Eljárás (Unified Process):
Módszertan a fejlesztés módjára vonatkozóan
UML (Unified Modeling Language, Egységesített
Modellező Nyelv): Grafikus jelölésrendszer a
szoftver különböző nézeteinek modellezésére
Java: Magas szintű programnyelv programjaink
implementálásához
![Page 11: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/11.jpg)
Java - I. / 38
Egységesített Eljárás
Fogalmak
• felhasználó, megrendelő, szoftverfejlesztő• aktor: aki vagy ami a rendszert használja• használati eset: a használatnak egy értelmes,
kerek egysége
OMT + Booch + OOSE módszerek egységesítése
Főbb jellemzői
• Használatieset-vezérelt• Architektúra központú• Iteratív és inkrementális (növekvő)
![Page 12: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/12.jpg)
Java - I. / 39
A szoftver élete
Minden fejlesztési ciklus végén a szoftverfejlesztő átad a megrendelőnek egy szoftver verziót
Fejlesztési ciklus Fejlesztési ciklus …
Idő
A kész verzió átadása A kész verzió átadása
A szoftver élete fejlesztési ciklusokból áll
![Page 13: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/13.jpg)
Java - I. / 40
Fejlesztési ciklus
ite r.
# 1
ite r.
# 2
ite r.
# n
ite r.
# n + 1
ite r.
# n + 2
ite r.
# m
ite r.
# m + 1
Követelményfeltárás
Főbb munkafolyamatok
Analízis
Tervezés
Implementáció
Teszt
MunkafázisokFelmérés Kidolgozás Konstrukció Átadás
Előkészítő
Iterációk
Egy iteráció a kidolgozás fázisban
![Page 14: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/14.jpg)
Java - I. / 41
Munkafázisok
Kidolgozás (Elaboration)
• rendszer architektúrájának kialakítása Konstrukció (Construction)
• főleg tervezés és kódolás• eredménye: a rendszer béta verziója
Felmérés (Inception)
• feladat elképzelése, feltérképezése
Átadás (Transition)
• a felhasználó kipróbálja a rendszert, jelzi a feljesztőnek a hibákat és a további igényeket
![Page 15: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/15.jpg)
Java - I. / 42
Főbb munkafolyamatok
Analízis
• megoldhatóság, erőforrásigény feltérképezése• a feladat elemzése, pontosítása• irányvonalak, nagyvonalú tervek megadása• megoldási eszközök, módszerek kiválasztása• dokumentációja: szakterületi objektummodell és
a használati esetek
Követelményfeltárás
• követelmények összegyűjtése• dokumentációja: követelményspecifikáció
(feladatspecifikáció)
![Page 16: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/16.jpg)
Java - I. / 43
Főbb munkafolyamatok (folyt.)
Implementálás
• kódolás a programterv alapján• dokumentációja: forráskód
Tervezés
• a feladat lényegi megoldása• dokumentációja: programterv
Tesztelés
• a program működésének ellenőrzése tudatosan összeállított tesztadatokkal
• dokumentációja: kész program és a tesztadatok
![Page 17: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/17.jpg)
Java - I. / 44
Tesztelés
Hibafajták
• szintaktikai (formai) hiba: forráskódrészlet, melyet a fordító nem tud értelmezni
• szemantikai (logikai, tartalmi) hiba: a program nem logikusan vagy nem a leírás szerint működik
Tesztelési módszerek
• éles tesztelés (futtatás)• szárazteszt (fejben futtatás)
![Page 18: Angster Erzsébet: OO tervezés és programozás, Java I. kötet alapján](https://reader030.vdocuments.site/reader030/viewer/2022033018/56814f87550346895dbd40ec/html5/thumbnails/18.jpg)
Java - I. / 45
Dokumentálás
Felhasználói dokumentáció
• felhasználóknak szól
• útmutató a szoftver használatához
Fejlesztői dokumentáció
• fejlesztőknek szól
• a fejlesztés szakaszainak eredményeit
tartalmazza