You are on page 1of 8

Programozs

Program: A program utastsok sorozata, amely meghatrozott szm lpst kvetve a


feladat vgrehajtst eredmnyezi.
Programozs: A programoz ltal meghatrozott programozsi nyelvre fordtva adott feladat
vgrehajtst.
Objektum: A vals vilgban elfordul dolgokat objektumoknak nevezzk. Egy
objektumnak van tulajdonsga s viselkedsmdja.
Karakterkdols: ASCII- American Standard Code for Information Interchange
Szabvnyos kdrendszerben 256 fle karaktert tartalmaz, 1 bjton troldik
UNICODE- Nemzeti s kezetes karakterek is tartalmazhat 56536 fle lehet,
2 bjton troldik.
Forrskd: A fordt program ltal lefordtand szveg vagy szveges llomny.
Forrsprogram szerkesztse: A forrskd szerkesztse szvegszerkeszt segtsgvel
trtnik, amit Editronak hvunk.
Forrsprogram fordtsa: A forrst talaktjuk a gp szmra rthet llomnny (trgykd,
gpi kd). Java esetn elszr bjt kdd alaktjuk t.
Program futtatsa: Adott szmtgpen a bjtkd, vagy a trgykd vgrehajtsa. Bjtkd
esetn mg egy tfordts, illetve rtelmezs szksges.
Program: A szmtgp szmra rthet utastsok sorozata, amely az adatokon vgzett
szmtsokkal s mozgatsokkal feladatokat hajt vgre.
A programkszts clja nem csupn a felhasznl informlsa, hanem a mindennapi
feladatok, munka segtse s knnyebb ttele. Az adott felhasznl nem rti kzvetlenl a
szmtgp jelzseit s a szmtgp pedig nem tudja alkalmazni a felhasznl kzlst, csak
ha t van alaktva szmra rthet utastsokk. Az ember s a szmtgp kztti hidat a
programoz teremti meg. Az ember igyekszik a vilg dolgait objektumok segtsgvel
modellezni. Objektumokat a szksges programba bepteni. Amikor a programoz
programot kszt objektumorientlt programozs esetn lehetsg van arra, hogy a mr
ltrehozott objektumokat msik programba is beptse.
Gpi kd: A gp szmra rthet utastsok sorozatbl ll. A gpi kd futtathat program.
Ms nven natv kd, vagy trgykd. Egy gp kd utasts az utasts kdjval kezddik,
majd az utasts paramterei (operandusai) kvetkeznek. Az utasts mrete, hogy hny
bjtbl ll attl fgg, hogy milyen processzorra rvnyes az utasts. Az utasts
meghatrozza azt is, hogy mennyi paramter kvetkezhet utna. Van olyan utasts, amelynek
nincs paramtere pl. HLT a program azonnali lelltst rendeli el. A paramter lehet egy
konkrt rtk vagy memria cm, ahol az rtk megtallhat, illetve megmutatja a kvetkez
rtk vagy utasts cmt. A gpi kd utastsok az emberek szmra nem rthet.

Alacsony szint programozsi nyelv pl.: Assamby tvol ll az emberi beszdtl s


gondolkodstl. Ezek inkbb a szmtgphez kzelll programnyelvek.
Alacsony szint nyelvek
Elnyei:
- Jval kisebb mretek a magas szint nyelvektl.
- Az utastsokat gyorsabban vgzi el a szmtgp.
- Lteznek olyan hardverhez ktd feladatok, amelyeket csak alacsony szint
kddal tudnak megvalstani.
Htrnyok:
- A programoznak sokkal tbb munkba kerl a nyelv hasznlatval programot
rni.
- Nehezen rthet s mdosthat.
- Gpenknt kln kell megrni.
Magas szint nyelvek:
Kzelebb llnak az emberi gondolkodshoz. A magas szint nyelven rt forrskdbl
rnzsre sok dolgot ki tudunk derteni. Az egyszerbben rt kd nem futtathat kzvetlenl a
szmtgp ltal, azt elszr t kell fordtani gpi kdra. Ezt a feladatot fordt programcompiler vgzi el.
A legismertebb magas szint nyelvek:
Java, C, C++, C#, Pascal, Basic, Eiffel, Cobol, Fortran, Prolog, Clipper
Vannak olyan fordt programok magas szint nyelveknl, amelyek a forrskdot nem
fordtjk t futtathat natv kdd vagy gpi kdd, hanem elszr bjtkdd alaktjk t. A
bjtkdot egy msik fordt program fogja futtats eltt tfordtani gpi kdra. A bjtkd teht
a magas szint nyelv s a gpi kd kztti kzbens kd. A bjtkd gpfggetlen kd. A mr
majdnem futtathat fjlkd hordozhat. gy knnyszerrel tvihet msik szmtgpre s
msik platformra.
A bjtkd elnyei:

Hordozhat, gpfggetlen, elvileg elvihet brmely ms platformra


A bjtkdot sokkal knnyebb natv kdd alaktani. Teht a gp specifikus fordt,
illetve futtat rendszer sokkal egyszerbb program lehet
A Java fordt is bjtkdot llt el. A Java fordt szabvnyos, ugyan abbl a
forrsprogrambl, ugyan azt a bjtkdot lltja el. Ezt a bjtkdot az adott
szmtgp a JVM Java Virtual Machina futtatja, gy hogy a kdot utastsonknt
rtelmezi s hajtja vgre.

Gpi kd-natv kd- trgy kd:


A szmtgp szmra rthet utastsok sorozatbl ll. A gpi kd program csak az adott
clgpen futtathat.
Programozsi nyelv:
A szmtgpes programok lersra hasznlt jellsrendszer. A jellsrendszer szablyait
betartva a programoz szveges llomnyt hoz ltre. Ezt az llomnyt adott programozsi
nyelv fordtprogramjval fordtja t a gp szmra rthet, vgrehajtat llomnny.

Alacsony szint nyelv: Olyan programozsi nyelv, amelyben az adatstruktrk s vezrlsek


visszatkrzik a szmtgp architektrjt.
Magas szint nyelv: Olyan programozsi nyelv, amelyben a vezrlsek s adatstruktrk
inkbb a programozhoz igazodnak, mint a szmtgp hardverei ltal nyjtott
lehetsgekhez.
Assembly: Olyan alacsony szint programozsi nyelv, amely a programoz kdols sorn a
gpi utastsokat mnemonikokkal* ltja el. *(kdolvass rtelmezs segt megjegyzsek,
amelyet a szmtgpnek nem kell vgrehajtani)
Program szerkeszt program: Az op. rendszerbl indthat programok nagy rsze
egymstl klnll modulokbl pl fel. A program futtatsa kzben ezeket a modulokat
ssze kell kapcsolni. Az sszekapcsolst s szerkesztst vgzi el a programszerkeszt
program, ms nven linker. Java esetn az sszeszerkesztsre vr ll programrszek a flig
lefordtott bjtkdokbl ll. Ezek kiterjesztse ltalban class. Ezeket sszeszerkeszts eltt
mg le kell fordtani. Mindezekrt a JVM java virtulis gp a felels.
Szoftver minsgnek jellemzi:
1. Helyessg: A szoftver helyes, ha a specifikcija helyes.
2. Hibatrs: A szoftver norml hasznlat mellett lell, illetve sszeomlik. pl. nem
kezelt utasts esetn, vagy kevs memria esetn.
3. Karbantarthatsg: A szoftver mkdse sorn fellp problmk kezelsnek,
javtsnak lehetsge. A szoftver mdostsnak lehetsge. pl. j modulra van
szksg j utastsok felvtele. pl SAP frisstsek, Integrlt vllalat irnytsi rendszer.
4. jrafelhasznlhatsg: A szoftver vagy annak rsze felhasznlhat legyen egy
hasonl jabb szoftvernl.
5. Kompatibilits: A szoftver egytt tudjon mkdni ms hasonl szoftverrel, tovbb
az alap szoftver ltal ltrehozott llomny hasznlhat legyen ms hasonl szoftverrel
is.
6.

Felhasznl bartsg: A szoftver megjelense j benyomst keltsen, a kezelse


knny legyen, a kvnt funkci praktikusan elrhetk legyenek.

7. Hordozhatsg: A szoftver tvihet legyen ms hardverre, platformra.


8. Hatkonysg: A szoftver a legteljesebb mrtkben hasznlja ki a rendelkezsre ll
erforrsokat mindemellett a futsi ideje a legrvidebb legyen.
9. Ellenrizhetsg: Ha a tesztelsi adatok s eljrsok knnyen elrhetk,
sszellthatk.

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.

Algoritmus fogalma: Az algoritmus adatokat mozgat, manipull lpsek sorozata, amely


egy adott feladat megoldst eredmnyezi. Az algoritmus megadhat szban, rsban s
programozsi nyelven. Egy szmtgp ltal rthet algoritmust programnak neveznk.
Algoritmusok vezrlszerkezetei:
1. Szekvencia: Egyms utn vgrehajtand tevkenysgek sorozata.
2. Szelekci: Vlasztsi lehetsg a tevkenysgek kzl.
3. Iterci: Egy vagy tbb tevkenysg felttelhez kttt vgrehajtsa.
4. Felttel nlkli ugrs: A vezrls tadsa a program algoritmus megadott
pontjra.
Vltozk: Egy programban a vltozk olyan memriaterletek, amelyek klnbz rtkeket
vehetnek fel. Egy vltoznak az algoritmus vgrehajtsa sorn vltozhat az rtke.
Tpus: Minden vltoznak van egy pontosan meghatrozhat tpusa. A vltoz csak a
tpusnak megfelel rtket vehet fel. Pl: Egy szveg tpus vltozba csak szveg kerlhet
dtum tpus vltozba dtum rtkek lehetnek.
Alapvet tpusok:
Number: Szm tpus
Boolean: Logikai rtk lehet igaz hamis.
String: Szveg pl: A lny, aki a tzzel jtszik.
Date: Dtum sszetett tpus, hrom szmbl ll (1999.02.02)
A number s boolean tpus adatok primitv adatok.
A string s date tpusok sszetett adatokat tartalmazhatnak.
Az UML s Java szabvny szerint a primitv tpusokat kisbetvel, az sszetett objektum
tpusokat nagybetvel szoks rni.
Kt szveget, kt dtumot s kt szmot ssze lehet hasonltani pl: melyik a nagyobb,
ellenben egy dtum, vls szm mr nem hasonlthat ssze.
rtkads: rtkads utastssal adhatunk rtket. Az rtkads utasts bal oldaln egy
vltoz szerepel, a jobb oldaln pedig egy rtk. A vltoznak az aktulis rtke.
Tevkenysg diagram: (Aktivits diagram). Algoritmus lersra szolgl grafikus
jellsrendszer. A program dinamikus sszettelt jelenthetjk meg. A diagrambl
megllapthat, hogy milyen felttelek teljeslse esetn milyen tevkenysgek hajtdnak
vgre. A program folysnak irnyt nyilakkal jelljk.
A program futsnak lersa mindig egyrtelm legyen, nem lehet olyan diagram, amelybl
nem dnthet el egy elgazs utn merre folytatdik a program.
UML formja egy specilis llapotdiagram, amely nagyon hasonl a tevkenysg diagramhoz.
Tevkenysg diagram alap elemei:
Kezd pont algoritmus bemenete a kezd pont. Itt kezddik az algoritmus vgrehajtsa. A
Jellse: kettspont nyl le.
Vgpontnl az algoritmus befejezdik. Jellse nyl le hegyn pont.
Egy algoritmusnak csak egyetlen kezdpontja lehet, de akr tbb vgpontja is lehet.
Tevkenysg: Az adatokon dolgoz utasts vagy utasts sorozat, amely vges id alatt
lezajlik. A tevkenysg lehet egy sszetett begyazott utasts sorozat jellse ovlis kr
Halladsi irny: Az egyik tevkenysgbl a msikba nyllal jelljk a haladsi irnyt.

A tevkenysg vgrehajtsa befejezdtt, akkor a belle ki indul nyl ltal mutatott


tevkenysg kerl vgre hajtsra.
Felttel: Ha a nyl mellet felttel tallhat abban az esetben a tevkenysg, akkor kerl
vgrehajtsra, ha a felttel igaz
Csompont/elgazsi pont/gyjt pont: Szksg esetn a diagramba csompontokat
tehetnk. Egy elgazsi pontbl a program vgrehajtsa tbb irnyba folytatdhat a gyjt
pontba tbb irnybl rkezhet. Egy csompont lehet elgazsi s gyjt pont is egyben
(jellse rombusz).
Aktivits diagram: Az aktivits diagramon brmely tevkenysg lehet sszetett tevkenysg
is, amely tevkenysg helyettest rszalgoritmussal. Egy felttel rtke lehet true vagy false.
Ezek ltalban rtkek sszehasonltsbl szrmaznak. A felttelek megadsakor ltalban a
java logikai sszehasonlt mveleteit alkalmazzuk. Elfogadhat, jl rthet termszetes
megfogalmazsok is.
sszehasonlt mveletek:
- Egyenl-e: = =
- Nem egyenl-e: ! =
- Nagyobb: >
- Nagyobb egyenl: >=
- Kisebb: <
- Kisebb egyenl: <=
Logikai mveletek:
- s: AND
- Vagy: OR
Szekvencia: Egyms utni tevkenysgek sorozata. Nyilak irnyban hajtdnak vgre.
Szelekci: Program elgazst jelent. A program tevkenysgeinek vgrehajtsa feltteltl
fgg. A tevkenysgbl vagy elgazsi pontbl kifel mutat nyilak jelzik a program
futsnak lehetsges irnyt. Ha az adott felttel igaz, annak irnyban folytatdik a
tevkenysgek vgrehajtsa. Megadhat egybkntg, amely arra szolgl, hogy ha a felttel
nem teljesl, a program futsa ebben az irnyban folytatdik. A felttelek kztt nem lehet
tfeds. A program futsa minden esetben egy gon folytatdhat. Ltezik egy g s tbb g
szelekci.
Iterci: Megadott tevkenysgek ismtelt vgrehajtsa. Az ismtlend tevkenysgeket
ciklusnak nevezzk. Az iterci esetn a vezrls ismtelten visszatr a ciklusmag el. Az
jbli vgrehajts eltt egy elgazs pont tallhat, ami megengedi a ciklus elhagyst.
Amennyiben a vezrls nem tudja elhagyni a ciklust, vgtelen ciklusrl beszlnk. Kt fajta
iterci ltezik:
1. A ciklusmag eltt tesztel (ell tesztel)
2. A ciklusmag utn tesztel (htul tesztel)
A htul tesztel iterci egyszer mindenkppen lefut. Az itercikat a szerint is szoktk
osztlyozni, hogy belpsi vagy kilpsi felttelt adunk-e meg. A felttel megfordthat, ekkor
az igaz s hamis gak felcserldnek.

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.

You might also like