1BevProg_Java

Download Report

Transcript 1BevProg_Java

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
Java - I. / 1
I.
II.
III.
IV.
V.
VI.
Bevezetés a programozásba
Objektumorientált paradigma
Java környezet
Java programozási alapok
Osztályok használata, készítése
Konténerek
Java - I. / 2
1. A számítógép és a szoftver
2. Adat, algoritmus
3. A szoftver fejlesztése
Java - I. / 3
1. A számítógép és a szoftver
1.
2.
3.
4.
5.
6.
7.
8.
Objektum, adat, program
Programozási nyelv
A program szerkesztése, fordítása, futtatása
A szoftverek osztályozása
Szoftverkrízis
A szoftver minőségének jellemzői
Moduláris programozás
Módszertanok
Java - I. / 4
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)
Java - I. / 15
Bájtkód
A magas szintű forráskód és a gépi kód közötti
gépfüggetlen közbenső kód.
Fordító (Compiler)
Egy program, mely a teljes forrásprogramot gépi
kódra, illetve közbenső bájtkódra alakítja.
É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.
Java - I. / 16
Java program fordítása
Forráskód
(App.java)
Fordítóprogram
Fordítási
hibák
…
int a = 7 ;
a=a*5;
javac.exe
App.java : 7 : Class
vagy int not found
…
00971CDF
0000F3F1
Bájtkód (App.class)
Java - I. / 17
Bájtkód futtatása interpreterrel
Bájtkód (App.class)
00971CDF
0000F3F1
Memória
a
…
35
7
…
00971CDF
0000F3F1
...
Java - I. / 18
3. A szoftver fejlesztése
1.
2.
3.
4.
5.
6.
7.
8.
A szoftverfejlesztés alkotómunka
Az Egységesített Eljárás
Követelményfeltárás
Analízis
Tervezés
Implementálás (kódolás)
Tesztelés
Dokumentálás
Java - I. / 36
A szoftver fejlesztése
 UML (Unified Modeling Language, Egységesített
Modellező Nyelv): Grafikus jelölésrendszer a
szoftver különböző nézeteinek modellezésére
 Egységesített Eljárás (Unified Process):
Módszertan a fejlesztés módjára vonatkozóan
 Java: Magas szintű programnyelv programjaink
implementálásához
Java - I. / 37
Egységesített Eljárás
 OMT + Booch + OOSE módszerek egységesítése
 Fogalmak
• felhasználó, megrendelő, szoftverfejlesztő
• aktor: aki vagy ami a rendszert használja
• használati eset: a használatnak egy értelmes,
kerek egysége
 Főbb jellemzői
• Használatieset-vezérelt
• Architektúra központú
• Iteratív és inkrementális (növekvő)
Java - I. / 38
A szoftver élete
 A szoftver élete fejlesztési ciklusokból áll
 Minden fejlesztési ciklus végén a szoftverfejlesztő
átad a megrendelőnek egy szoftver verziót
A kész verzió átadása
Fejlesztési ciklus
A kész verzió átadása
Fejlesztési ciklus
…
Idő
Java - I. / 39
Fejlesztési ciklus
Főbb munkafolyamatok
Munkafázisok
Felmérés Kidolgozás
Konstrukció
Átadás
Követelményfeltárás
Egy iteráció a
kidolgozás fázisban
Analízis
Tervezés
Implementáció
Teszt
Előkészítő
it e r.
#1
it e r.
#2
it e r.
#n
it e r.
#n+1
ite r.
#n +2
it e r.
#m
it e r.
#m +1
Iterációk
Java - I. / 40
Munkafázisok
 Felmérés (Inception)
• feladat elképzelése, feltérképezése
 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
 Átadás (Transition)
• a felhasználó kipróbálja a rendszert, jelzi a
feljesztőnek a hibákat és a további igényeket
Java - I. / 41
Főbb munkafolyamatok
 Követelményfeltárás
• követelmények összegyűjtése
• dokumentációja: követelményspecifikáció
(feladatspecifikáció)
 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
Java - I. / 42
Főbb munkafolyamatok (folyt.)
 Tervezés
• a feladat lényegi megoldása
• dokumentációja: programterv
 Implementálás
• kódolás a programterv alapján
• dokumentációja: forráskód
 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
Java - I. / 43
Tesztelés
 Tesztelési módszerek
• éles tesztelés (futtatás)
• szárazteszt (fejben futtatá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
Java - I. / 44
Dokumentálás
 Fejlesztői dokumentáció
• fejlesztőknek szól
• a fejlesztés szakaszainak eredményeit
tartalmazza
 Felhasználói dokumentáció
• felhasználóknak szól
• útmutató a szoftver használatához
Java - I. / 45