Programkészítési elvek

Slides:



Advertisements
Hasonló előadás
T ESZTELÉS. C ÉLJA Minél több hibát találjunk meg! Ahhoz, hogy az összes hibát fölfedezzük, kézenfekvőnek tűnik a programot az összes lehetséges bemenő.
Advertisements

Programozási feladatok
Összefoglalás Hardver,szoftver,perifériák Memóriák fajtái
Algoritmusok.
Adatelemzés számítógéppel
Algoritmusleíró eszközök
Microsoft Access Felhasználói felület.
Hatékonyságvizsgálat, dokumentálás
Az integrált áramkörök (IC-k) tervezése
Programozási alapismeretek 9. előadás
Felhasználó barátság eszközei
Budapesti Műszaki és Gazdaságtudományi Egyetem Elektronikus Eszközök Tanszéke A programozás alapjai 1. (VIEEA100) 9. előadás.
Programozás alapjai A programozás azt a folyamatot jelenti, melynek során a feladatot a számítógép számára érthető formában írjuk le. C++, Delphi, Java,
Programozási alapismeretek
Szervezeti formák.
Az első program, avagy ismerkedés a nyelvvel
2009. április 3. Ficzkó Ildikó Honlapelemzés április 3. Ficzkó Ildikó
Honlapelemzés. miért?  tanulmányok  tapasztalatszerzés  előkészítő munkálatok: honlaptervezés  fejlődés.
C A C nyelv utasításai. Ismétlés Utasítások csoportosítása.
Szervezet Szervezet: személyek és csoportok valamilyen célra történő egyesítése, ahol mindenkinek meghatározott feladata és felelőssége van, mellyel hozzájárul.
Java programozási nyelv 2. rész – Vezérlő szerkezetek
Algoritmusok Tusnádi István
CISC - RISC processzor jellemzők
Megvalósíthatóság és költségelemzés Készítette: Horváth László Kádár Zsolt.
Komplex rendszertervezési módszerek
A problémamegoldás lépései
ALGORITMUSOK.
Űrlapok és keretek.
Szintaktikai, szemantikai szabályok
3.2. A program készítés folyamata Adatelemzés, adatszerkezetek felépítése Típus, változó, konstans fogalma, szerepe, deklarációja.
Csempe Programozás érettségi mintafeladat
Adatbázis-kezelés Probléma: az excel kezelhetetlen túl sok adat esetén
Algoritmizálás, adatmodellezés tanítása 7. előadás
Podoski Péter és Zabb László. Bevezető Algoritmus-vizualizáció témakörében végeztünk kutatásokat és fejlesztéseket Felmértük a manapság ismert eszközök.
Az algoritmuskészítés alapjai
Copyright, 1999 © Szlávi Péter Szövegfeldolgozás 1.
Algoritmizálás, adatmodellezés tanítása 8. előadás.
rendszer intézményértékelés és projektértékelés Felhasználói segédlet 2005.
Funkciós blokkok A funkciós blokkok áttekintése Az alkalmazás előnyei.
Információs rendszer fejlesztése 4. előadás
Programozás, programtervezés
Algoritmizálás és programozás tanítása Balogh Zoltán PTE-TTK IÁTT Az algoritmuskészítés.
Dokumentum formázása.
Algoritmizálás, adatmodellezés
A web site minősítése Források: Bokor Péter szakdolgozata (2002) és a benne megadott hivatkozások: Dotkom Internet Consulting: Üzleti weboldalak elemzése,
Grafikus programozás Készítette: Csernok László
Adatszerkezetek és algoritmusok 2008/ Algoritmus Az algoritmus szó eredete a középkori arab matematikáig nyúlik vissza, egy a i.sz. IX. században.
Modellek a számítógép megismeréshez Takács Béla
NJSzT Nemes Tihamér Országos Középiskolai Sámítástechnikai Tanulmányi Verseny.
Strukturált programozás.  A strukturált programozás jelenti valamennyi ma használatos programtervezési módszer alapját  Széles körben elfogadott az.
A szoftver mint komplex rendszer A fejlesztési módszertanok általános céljai: Összetett problémák kezelhetővé tétele A fejlesztési és megtérülési jellemzők.
A programozás módszertana. Monolitikus programozás Egyszerű feladatok - egyszerű programok Egy program – egy programozó Nincs belső struktúra, lineáris.
Programozási nyelvek csoportosítása.
Alkalmazott Informatikai Tanszék
Adatstruktúrák Algoritmusok Objektumok
Algoritmusok Tusnádi István
Programozási alapok.
Neumann János Informatikai Kar
Programozási nyelvek típusossága.
Szövegszerkesztési alapfogalmak
Beépített függvények használata programozáskor
Beépített függvények használata programozáskor
Ubuntu – ismerkedés Fájlok és könyvtárak
Az információ.
Számítógépes algoritmusok
Algoritmusok szerkezete
Informatikai gyakorlatok 11. évfolyam
Algoritmus készítés.
Algoritmusok és Adatszerkezetek I.
AVON CAREER SITE FELÉPÍTÉSE
Előadás másolata:

Programkészítési elvek

Programkészítési elvek A bonyolult programok könnyebb megoldhatósága érdekében dolgozták ki ezeket Stratégiai elv Taktikai elvek Technológiai elvek Technikai elvek

Stratégiai elv „Oszd meg és uralkodj” elv alapján a program részekre osztása részek egymástól független megoldása Részfeladatokra bontás jelentése: Pontosan kijelölni: milyen adatokat kezel az adott részfeladat milyen adatokat állít elő miként kell ezeket az adatokat egymáshoz rendelni

Stratégiai elv Lépésenkénti finomítás először átfogó feladatmegoldás néhány részfeladatra bontás részletekkel nem törődve az egyes részfeladatokat is további részekre osztjuk amíg el nem érjük azt az utasítás szintet, amit a gép el tud végezni piramis elv

Stratégiai elv Két azonos szinten megadott részfeladat esetén ügyelni kell a sorrendre Finomítás = az adott lépésben létrejött, egymástól függetlenül kezelhető tevékenységek még elemibbekre bontása A részekre bontás módszerét moduláris programozásnak is nevezik

Stratégiai elv Top-down módszer (felülről lefelé): problémaanalizáláson, részekre osztáson alapul (dekomponálás) Bottom-up módszer (alulról felfelé): szintetizáláson alapul, nagy gyakorlatot igényel alulról, az elemi lépésektől indulva jutunk a kitűzött feladat megoldásáig A két módszert általában ötvözik pl.: a top-down tervezés közben felhasználunk már előre elkészített modulokat

Taktikai elvek Párhuzamos finomítás elve egy adott szint minden részfeladatát finomítjuk (nem haladunk előre egy könnyűnek tűnő ágon) Döntések elhalasztásának elve célszerű a gép illetve a programozási nyelv konkrét sajátosságait kihasználó döntéseket minél későbbre halasztani „Vissza az ősökhöz” elv ha zsákutcába kerülünk, vissza kell lépni az előző szintre (ős), és újragondolni a felosztást

Taktikai elvek Adatok elszigetelésének elve az egyes programegységekben alkalmazott adatokat el kell szigetelni más programegységektől egy programegység csak kész, már feldolgozott adatokat adhat át egy másiknak adatok csoportosítása a programegységben betöltött szerepük szerint: közös (globális), ezen belül bemeneti (input) és kimeneti (output), illetve csak a programegységhez tartozó (lokális)

Taktikai elvek Párhuzamos ágak függetlenségének elve egy szinten lévő eljárások egymást nem hívhatják, egymás változóit sem használhatják Szintenkénti teljes kifejtés elve a szint leírásának tartalmaznia kell az alatta lévő szint eljárásainak specifikációját

Taktikai elvek Döntések kimondásának elve ha döntést hoztunk, azt rögzítsük (dokumentáció), ne programozzunk hallgatólagos döntések alapján A nyílt rendszerű felépítés elve ne csak egy feladatra, hanem a feladatot tartalmazó problémakörre készítsünk megoldást feladatáltalánosítás elvének is nevezik

Technológiai elvek Az algoritmus írására, ennek szabályaira vonatkoznak átvezetés a technikai (kóddal kapcsolatos) elvekhez Kevés, de egyértelmű szabály a fő programeszközök (vezérlési szerkezetek) jól elkülöníthetőek legyenek Világos tagolás csak a szervesen összetartozó utasítások kerüljenek egy sorba

Technológiai elvek „Beszédes leírás” (indentálás) az algoritmus szintekre tagolása tükröződjön a leírás formájában áttekinthetőség növelése Összetett struktúrák zárójelezése egyértelműen jelöljük az elejét és a végét (pl.: ciklusnál, elágazásnál) „Beszédes” azonosítók olyan konstans/változó/típus/eljárás/függvény nevek adása, melyek utalnak a funkcióikra nem feltétlenül előnyös a hosszú név

Technikai elvek A programkód minőségét biztosítják nemcsak helyes (logikailag), hanem jó is legyen a program (használható) Barátságosság, udvariasság mindenről tájékoztat, nem hagyja a felhasználót bizonytalanságban (elején tájékoztató a működésről) a futás közben megjelenő kérdések BÁRKI számára érthetőek a válaszok a lehető legegyszerűbben megadhatóak

Technikai elvek Biztonságosság „bolondbiztos” program: a felhasználói hibalehetőségekre fel kell készíteni a programot emellett a felhasználónak a javításra/helyesbítésre is biztosítani kell a lehetőséget Jól olvasható program a technikai elvek nagy része (tagolás, beszédes azonosítók, összetett utasítások zárójelezése) modulok, azaz kisebb egységek (eljárások, függvények) magyarázatok (kommentek)

Technikai elvek Jól dokumentált program nagy méretű program esetében a jól olvashatóság elve nem megvalósítható maradéktalanul Rögzíteni kell a program fontos vonásait az algoritmus felépítését változókat és szerepüket (értéktartomány, hatáskör) kódolásnál követett szabályok A program használatának mikéntjét is le kell írni Az esetleges, előre látható fejlesztések megemlítése

Esztétikai-ergonómiai elvek Az udvariasság és bolondbiztosság finomítása Használatot befolyásoló tényezők (emberközelség) Megjelenített információk külalakjának (formájának) fontossága eredmények kiíratása tájékoztató szövegek felhasználóval való párbeszéd módja

Esztétikai-ergonómiai elvek Lapkezelési technika a kiírandó szövegek logikai egységekre osztva jól elkülönüljenek egyszerre egy képernyőnyi információ jelenjen meg egy sor ne legyen szélesebb a képernyőnél hosszabb szöveg esetén lapozás biztosítása lehetőség a nyomtatásra (+lapszámozás, fejléc, lábléc) szöveg fontosabb elemeinek kiemelése

Esztétikai-ergonómiai elvek Menütechnika a felhasználóval való párbeszéd biztosítás kényelmes formában a választási lehetőségek hierarchikusan is felépülhetnek (főmenü, almenük) a főmenüben célszerű egy program befejezése (kilépés) pont az almenüben célszerű egy „vissza az előző menühöz” pont

Esztétikai-ergonómiai elvek Ikontechnika kis grafikus ábrák szemléletesebbek lehetnek a szöveges megjelenítésnél a túl sok és/vagy túl kicsi ikon áttekinthetetlenné teheti a programot Értelmezési tartomány kijelzése beolvasáskor jelezzük az értéktartományt és a mértékegységet (rossz adatbevitel megelőzése)

Esztétikai-ergonómiai elvek Fontos adatok kiemelése a könnyebb megértés mellett a program állapotának, meghatározó paramétereinek visszajelzésére is időigényes feladatvégzés során üzenet a felhasználónak, hogy hol tart a program Tördelés a megjelenő szövegben a sorok/szavak tördelése a helyesírási szabályoknak megfelelően gördülékeny fogalmazás, szép elhelyezés

Esztétikai-ergonómiai elvek Következetesség beolvasási és kiírási szokásoknál (azonos válaszadási lehetőségek) azonos jellegű kérdések/eredmények a lapok azonos helyein jelenjenek meg Hibajelzés írjuk ki a hiba okát, adjunk instrukciót a javításra ne legyen se túl rövid, se túl hosszú legyen visszaállítható a hiba előtti képernyő a hibát akkor jelezzük, amikor bekövetkezett ha a kérdés szövegéből egyértelmű a hiba, elég a hangjelzés és a kérdés ismétlése

Esztétikai-ergonómiai elvek Naplózás a fontos események automatikusan íródjanak ki egy fájlba Makrók, funkcióbillentyűk gyors eléréshez bizonyos funkciókhoz rendeljünk billentyűkombinációt Segítség bárhonnan/futás közben bármikor elérhető legyen (pl.: funkcióbillentyűvel)

Esztétikai-ergonómiai elvek Ablaktechnika az ablakok a képernyő elkülönített részein jelenjenek meg ablak = keret + tartalom kiírásakor a képernyőn az alatta lévő részt eltakarja, levételkor újra megjelenik a takart rész használható: segítségszöveg megjelenítésére, hibajelzésre, menük kezelésére, programállapot kijelzésére Vége

Források: Gregorics Tibor, Heizlerné Bakonyi Viktória, Horváth Győző, Menyhárt László, Pap Gábor Sándorné, Papp-Varga Zsuzsanna, Szlávi Péter, Zsakó László: Programozási alapismeretek (progalap.elte.hu/downloads/seged/eTananyag/lecke24_lap1.html#hiv1) Petrik tananyagtár: Programkészítés lépései, programozási elvek (www.petrik.hu/files/Tananyagtar/KRAJNYAK_ATTILA/02_Ism%c3%a9tl%c3%a9s_A lgoritmusok/(A)%20Programk%c3%a9sz%c3%adt%c3%a9s%20l%c3%a9p%c3%a9sei, %20programoz%c3%a1si%20elvek.pdf) Dr. Iszály György Barna: Programozás módszertana (http://zeus.nye.hu/~gyiszaly/targyak/progmod/progmod.pdf)