Professional Documents
Culture Documents
Modulris programozs: Egy adott program gyakran olyan bonyolult lehet, hogy azt az
ember nem tudja teljesen tltni, annak mkdse nagyon sok sszetevtl fgghet. A
modulris programozs esetn a ltrehozand programot jl elklnthet klnbz
funkcij programrszekre osztjuk fel, gy a teljes program talakthat s az egyes rszek
ltrehozsa mr egyszerbb vlik, azok mkdse pedig knnyebben megrthet. Az
absztrakci sorn a programbl kiemeljk a program szempontjbl fontos rszeket. A
dekompozci segtsgvel tudjuk a programrszeket modulokra bontani.
Modulris programozs irnyelvei:
1. Oszd meg s uralkodj elve: A programot modulokra osztjuk fel. Az egyes
modulok egyms feladataihoz nem frhetnek hozz. Egy modulba csak olyan
elemeket helyeznk, amelyek mkdse szorosan sszefgg. Ha minden modul
kln-kln tkletesen mkdik, akkor sszekapcsolhatjuk azokat, gy jl
tlthat rendszert kapunk.
2. Modulok kztti kapcsolat elve: Laza kls kts minl kevesebb legyen a
modulok kztti sszekttets. Ers bels kts a modulban csak olyan dolgok
tallhatk, amelyek szoros kapcsolatban vannak egymssal, gy megknnytjk az
esetleges hibakeresst.
3. Adatok-informci elrejtsnek elve: A megfelel programrszek csak sajt
adataikhoz frhessenek hozz. A programrszek csak akkor hasznljanak kzs
adatokat, ha az felttlenl szksges.
4. Dntsek elhalasztsnak elve: Csak akkor hozzunk meg egy dntst, ha az
elengedhetetlenl szksges. Azokat a dntseket, amelyek meghozatalhoz nincs
elg informcink, el kell halasztani. Klnben elfordulhat, hogy ksbb a
dntst meg kell vltoztatni.
5. Dntsek kimondsnak elve: A feladat vgrehajtsa kzben ne hallgassunk el
egyetlen dntst sem. Ha mr meghoztunk egy dntst, azt ki kell mondani s le
kell dokumentlni, klnben elfordulhat, hogy megfeledkeznk rla s ksbb
ellentmondsos dntst hozunk.
Modulokra bontsnl kt f mdszert alkalmazunk:
1. Fellrl lefel: A tervezs sorn a feladatokat fellrl lefel haladva finomtjuk,
majd a vgn oldjuk meg a feladatokat.
2. Lentrl felfel: A mr elkszlt modulokbl ptkeznk. Erre csak akkor kerlhet
sor, ha az alsbb szinteken lv modulokkal mr elkszltnk. Ezt a mdszert
alkalmazhatjuk akkor is, ha rendelkeznk modul gyjtemnnyel.
A programtervezs kezdeti lpsekor a fellrl lefel mdszert alkalmazunk. A tervezs sorn
gyakran hasznlnak CASE eszkzket. Computer Aided Software Engeneening
Szmtgppel Segtett Programtervezs CASE.
Jackson fle programtervezsi mdszer: Olyan mdszer, ahol a bemen is kimen adatok
s adatszerkezetek sszefslst alkalmazzk. Majd ebbl lltjk ssze az adatszerkezeteket.
Gyakran hasznlt objektum orientlt programtervezsi mdszer az UML - Umfied Modellig
Language Egysgestett Modellez Nyelv.
Case eszkz: Computer Aided Systems Engineering - Szmtgppel segtett
programtervezs.
Szoftverfejlesztsi mdszertan: UP Unified Process.
Lptet (szmll) nvekmnyes ciklus: A lptet ciklus azt jelenti, hogy a ciklusmag
minden egyes vgrehajtsakor egy gynevezett ciklusvltoz automatikusan lp egyet a
szmll rtke n vagy cskken eggyel. A ciklusvltozt, annak kezdeti rtkt, valamint a
ciklusba val belps felttelt s lptetsi utasts a ciklus fejrszben adjuk meg. A
ciklusmag hasznlhatja a ciklusvltozt. A lptet ciklust a tevkenysg diagramon eltesztel
ciklussal tudjuk megvalstani.
Pszeudokd: Lnyege, hogy a programrszeket az emberi gondolkodsi mdhoz igaztva
mondatszer elemekrl ptjk fel. Itt be kell tartanunk szablyokat a vezrl elemek lersa
kzben. Az adatok deklarsa a pszeudokd rsze. Az adatok bekrsre s megjelentsre: in,
out kifejezst hasznljuk. Pl: in: vltoz1, vltoz2. out: kifejezs1, kifejezs2.
do csinld
if ha
else egybknt
for ra, re
end vge
while amg
Szekvencia megvalstsa: Egy ms utn vgrehajtand mveletek: Tevkenysg1,
Tevkenysg2. Hrom szm bekrse: In: Szm1, In: Szm2, In: Szm3.
Szelekci:
- Egyg szelekci: if felttel
tevkenysg
end if
Ha a felttel teljesl, a tevkenysg vgrehajtsra kerl. Ha a felttel nem teljesl a
programrsz befejezdik. Pl:
if eletkor <20
out: fiatal
end if
- Tbbg szelekci: if felttel
tevkenysg
else if felttel
tevkenysg2
else if felttel
tevkenysg3
else
tevkenysgN
end if
letkor: number
in: letkor
if: letkor <14
out: gyerek
else if letkor<18
out: kiskor
else if letkor>18
out: felntt
end if
Ciklusok:
Ell tesztel ciklus: while [felttel]
tevkenysg
end while
Pl: szam: number
szam=1
while szam*szam<100
out=szam*szam
szam=szam+1
end while
Lptet ciklus:
for
ciklusvltoz: kezdo;
ciklusvltoz <=vg;
ciklusvltoz = ciklusvltoz + lpskz
end for
pl: i number
for i=200; i<=280; i=i+1;
out = i
end for
Rutin: Kln nvvel elltott sszetett tevkenysg. Meghvhat a nevre utal hvssal vagy
hivatkozssal. A rutinoknak van paramtere. A paramter a rutin vgrehajtsa sorn
felhasznlhat. A rutinnak van visszatrsi rtke is. Ez a hvs helyn hasznlhat fel. A
visszatrsi rtk nlkli rutint fggvnynek nevezzk.