Programozási technológia 1.
|
|
- Ágnes Tamás
- 8 évvel ezelőtt
- Látták:
Átírás
1 ngleton Sin ELTE-IK + st: boo ol Programozási technológia gyakorlat: Programozási paradigmák, az objektumorientált tált programozás Giachetta Roberto groberto@inf.elte.hu p p
2 Programozási paradigmák A szoftverfejlesztés során a legfőbb cél, hogy a kész programrendszer megfeleljen a funkcionális és minőségi követelményeknek Emellett, a fejlesztők számára fontos, hogy a kész szoftver fejlesztése a lehető legoptimálisabb legyen a szoftverfejlesztési modell meghatározza a fejlesztés módját és menetét azt nem, hogy milyen legyen a fejlesztés stílusa, milyen absztrakciós szinten történjen a megvalósítás, hiszen ezek a tényezők nem határozzák meg a szoftvert önmagát, csak a fejlesztés folyamatát A szoftverek tervezésének és programozásának módszerét nevezzük programozási paradigmának 2
3 Programozási paradigmák A paradigma meghatározza a programozás stílusát és az absztrakciós szintet Vannak általános célú, és szűk körben alkalmazott paradigmák, minden adott feladatra megtalálható a legjobban alkalmazható paradigma, vagy paradigmák Általában az elemzési szakasz végén célszerű meghatározni az alkalmazni kívánt paradigmákat (egy projekten belül akár programegységenként alkalmazhatunk más paradigmát) a paradigma meghatározza az alkalmazható programozási nyelvek körét is, és fordítva egyes programozási nyelvek több paradigmát is támogatnak, így a programozási nyelv szempontjából is meghatározhatjuk 3
4 Elsődleges programozási paradigmák deklaratív (leíró) imperatív + st: boo ol funkcionális procedurális relációs (logikai) folyam alapú strukturált korlátozott objektumorientált 4
5 Elsődleges programozási paradigmák Deklaratív: a program a tartalmát, megjelenését írja le, nem pedig a funkció módját általában nem alkalmas teljes értékű programok írására, mert nem Turing teljes (azaz nem képes minden feladatot elvégezni) megszokott alkalmazási területe konfigurációs fájlok, interfész felületek programozására, ezért rendszerint kiegészítésként szolgál más paradigma használata mellett deklaratív nyelvek: XSLT (XML), HTML, XAML, SQL egyes funkcionális nyelvek is támogatják deklaratív részek írását (pl. LISP, Erlang, Prolog), illetve imperatív nyelvekben is előfordulhatnak deklaratív részek (pl. LINQ) 5
6 Elsődleges programozási paradigmák Funkcionális: a programfutás matematikai függvények kiértékelésének sorozata, alapja a lambda-kalkulus nincsenek benne állapotok és változó adatok, gyakori a rekurzió, könnyű a párhuzamosítás korábban csak kutatásokban alkalmazták, mostanság megjelenik a piaci szoftverekben is a nagyobb absztrakciós szint miatt magasabb az erőforrásigény, de rövidebb a programkód funkcionális nyelvek: LISP, Erlang, Clean, Haskell, R, Mathematica egyes imperatív nyelvekben lehet szimulálni függvénymutatók és lambda-függvények segítségével 6
7 Elsődleges programozási paradigmák Relációs, logikai: a program logikai kiértékelések sorozata, általában implikációkon keresztül a programozó feladat, hogy a program igaz legyen, és megfelelően hatékony logikai nyelvek: Prolog, Oz, Castor for C++ Korlátozott: nem a megoldás módját, hanem a megoldandó dó probléma tulajdonságait írja le, a változók kapcsolatát korlátozásokon keresztül adja meg korlátozott nyelvek: B-Prolog, CHIP, Claire imperatív nyelvek külön programkönyvtárakkal kk támogatják: Choco (Java), Disolver (C++) 7
8 Elsődleges programozási paradigmák Folyam alapú: a program fekete doboz jellegű alkalmazások hálózata, amelyek üzenetküldéssel kommunikálnak egymással az egyes folyamatok párhuzamosan, aszinkron módon futnak, és információs csomagokat fogadnak, illetve küldenek nyelvek: Linda, FBP Imperatív: a program utasítások sorozata, amelyek állapotváltozásokat okoznak, így a program az állapotok mentén írható le a feladat megvalósításának lépéseit írja le, azaz milyen akciók sorozatát kell végrehajtani, ezért általában kizárja a programkódban való ugrások (GOTO) lehetőségeit 8
9 Elsődleges programozási paradigmák Procedurális: az imperatív elv továbbfejlesztése, az utasítások eljárásokba vannak csoportosítva (a program modularizálva van), és ezen eljárások összessége oldja meg a feladatot a procedurális megközelítés előnyei: kód újrahasznosítás programkód könnyű nyomon követése, gyors áttekinthetősége a programszerkezet struktúrájának tetszőleges kialakítása procedurális nyelvek: Fortran, C, Ada, BASIC, Pascal, PHP, Python, ECMAScript 9
10 Elsődleges programozási paradigmák Strukturált: a procedurális programozás egy változata a programok olyan részegységekre tagolódik, egy belépési ponttal, és egy kilépési ponttal tervezésnél felülről lefelé megközelítés, azaz a fő problémát bontjuk részekre, és azokat további részekre, satöbbi a programban használt adatstruktúrák a programegységeknek megfelelően strukturálódnak Objektum-orientált: a programegységet egymással kommunikáló objektumok összessége adja, amelyek valamilyen relációban állnak egymással 10
11 Programozási paradigmák Vannak úgynevezett másodlagos programozási paradigmák, amelyek a programozást stílusát nagyban befolyásolják, pl.: eseményvezérelt: a programfutás mentetét az interfészeken keresztül érkező események vezérlik folyamat alapú: a programban egymással párhuzamosan futó folyamatok kommunikálnak iteratív: a feladatot iteratívan oldja meg, rekurzív hívás nélkül rekurzív: a feladatot rekurzív hívások sorozatával oldja meg sablon programozás: az adatszerkezetek sablonokon keresztül állnak össze meta programozás: a folyamatot a program metainformációs (programmanipulációs) szinten vezérli 11
12 Objektumorientáció Az objektumorientált programozásban a feladatot nem felülről lefelé, hanem alulról felfelé oldjuk meg, azaz azonosítjuk azon alkotóelemeket, amelyek a végrehajtásban részt vesznek, és ezek kapcsolatának, kommunikációjának módját tárjuk fel az alkotóelemek külön önálló egységeket alkotnak, amelyek adott feladatok elvégzésére alkalmasak, és belső változókkal és műveletekkel rendelkeznek, amelyekkel különböző állapotokat vehetnek fel a kommunikáció üzenetküldéseken keresztül valósul meg általában nagyobb feladatok megoldására alkalmazható, amelyek procedurális módon túl komplikáltnak bizonyulnak 12
13 Objektumorientáció A való világ modellezéséből indul ki Először a 60-as években tűnt fel a Simula programozási nyelvben az objektumorientált támogatás, majd a 80-as években megjelent az első teljesen objektumorientált nyelv, a SmallTalk Manapság a legnépszerűbb programozási paradigma, a programozási nyelvek jelentős része támogatja Objektumorientált tált támogatással rendelkező ő nyelvek: C++, Object-C, Ada, Object Pascal (Delphi), Common LISP, F#, Visual Basic, PHP, ECMAScript, Python, Perl, D, Visual Prolog, Objektumorientált nyelvek: Smalltalk, lk JAVA, C#, Eiffel, Ruby, 13
14 Objektumorientáció alkotóelemei Osztály (Class): az alkotóelemek absztrakt jellemzőit, karakterisztikáját, azaz típusát adja meg (tekinthető egy tervrajznak is, amely alapján a példányokat le lehet gyártani) megadja, milyen részekből, és értékekből állhat egy alkotóelem, és milyen tevékenységre képes (milyen műveleteket tud futtatni) tekinthető változók (konstansok) és eljárások (függvények) gyűjteményének az osztály változóit attribútumoknak, az eljárásokat pedig metódusoknak nevezzük az osztály biztosítja a program modularitását 14
15 Objektumorientáció alkotóelemei az osztálynak kell biztosítania egy külső felületet (export interface), amely a külvilág (a többi objektum) számára látható, és amelyen keresztül a kommunikáció lezajlik, az osztály többi részét el kell rejteni a külvilágtól pl. kutya, villamos, autó Objektum (Object): az osztály egy példánya, amely konkrét értékekkel bír, és meghatározza az egyedet ténylegesen ilyen jönnek létre és működnek a program futása során, és mindegyikük önálló állapotokkal rendelkezik egy objektumokhoz tetszőleges számú további objektum is kapcsolódhat pl. Lassie, 2025-ös Combino, AII-911-es rendszámú autó 15
16 Objektumorientáció alkotóelemei Öröklődés: az osztályoknál megszabhatunk általánosabb, illetve speciálisabb osztályokat, ahol a speciálisabbak rendelkeznek minden tulajdonsággal, amivel az általánosabb változat pl.: általános élőlény gerinces kutya skót juhász speciális lélegzik van gerincoszlopa ugat 16 hosszú szőrű
17 nternalitera ator Objektumorientáció alkotóelemei ezt a folyamatot, amikor a speciálisabb átveszi az általános jellemzőit és működését, öröklődésnek nevezzük az öröklődés két irányát specializációnak, illetve általánosításnak nevezzük, az általánosabb objektumot ősnek, a speciálisabbat leszármazottnak nevezzük (ha csak egy szint a különbség, akkor szülőnek, illetve Ingyereknek) ) általában egy szülőnek több gyereke is van, ám csak egyes esetekben e engedélyezett, e hogy egy gyereknek e e több szülője is legyen (ezt többszörös öröklődésnek nevezzük) többszörös öröklődés során a gyerek megkaphatja minden szülője minden tulajdonságát, illetve szabályozhatjuk, hogy melyik őstől melyeket kapja 17
18 Objektumorientáció alkotóelemei Absztrakció: az objektumok tetszőleges reprezentálása lehetővé teszi, hogy az adott problémát több szinten kezeljük, azaz az összes lehetséges tulajdonságának egy tetszőleges halmazát válasszuk ki, és azokat használjuk az ábrázolásban a reprezentációs szint megválasztása jelenti az absztrakció szintet a számunkra lényeges tulajdonságokat megtartjuk, a lényegteleneket elhagyjuk pl.: az autót ábrázolhatjuk rendszámmal, sebességgel és tömeggel, vagy ábrázolhatjuk, mint motor és karosszéria összessége, vagy akár minden egyes alkatrészét külön- külön vehetünk 18
19 Objektumorientáció alkotóelemei Polimorfizmus: ha egy objektum olyan osztálynak példánya, amelynek több őse is van, akkor az az objektum tekinthető bármely ősének példányaként is ezáltal lehetővé válik, hogy egy objektumnak több osztálya is legyen, és aktuálisan azt az osztályt használjuk, amely az aktuális környezetbe beleillik pl.: ha egy raktérben vegyesen akarunk autókat és motorokat elhelyezni, akkor azt mondjuk, hogy egységesek személygépjárműveket helyezünk el (amelynek mindkettő speciális esete) pl.: ha egy koordináta rendszerben köröket és négyzeteket is akarunk rajzolni, akkor egységesen geometriai alakzatokat rajzolunk 19
ELTE IK, Programtervező BSC Szoftvertechnológia 1. gyakorlat: Programozási paradigmák
ELTE IK, Programtervező BSC 1. gyakorlat: 2010.09.16. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Feladata Egy szoftvernek, mint terméknek gyártási technológiára van szüksége,
Bevezetés a Programozásba II 1. előadás. Szoftverfejlesztés, programozási paradigmák
Pázmány Péter Katolikus Egyetem Információs Technológiai és Bionikai Kar Bevezetés a Programozásba II 1. előadás, programozási paradigmák 2014.02.10. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
Adatbázis rendszerek. dr. Siki Zoltán
Adatbázis rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati személyzeti
Adatbázis-kezelő rendszerek. dr. Siki Zoltán
Adatbázis-kezelő rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati
Objektumelvű alkalmazások fejlesztése 6. gyakorlat. Öröklődés, polimorfizmus. Öröklődés Kódismétlődés objektum-orientált szerkezetben
Eötvös Loránd Tudományegyetem Informatikai Kar Objektumelvű alkalmazások fejlesztése 6. gyakorlat, polimorfizmus 2011.10.27. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Kódismétlődés
Bevezetés a Programozásba II 5. előadás. Objektumorientált programozás és tervezés
Pázmány Péter Katolikus Egyetem Információs Technológiai és Bionikai Kar Bevezetés a Programozásba II 5. előadás Objektumorientált programozás és tervezés 2014.03.10. Giachetta Roberto groberto@inf.elte.hu
Objektum orientált programozás Bevezetés
Objektum orientált programozás Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 03. 04. OOPALAP / 1 A program készítés Absztrakciós folyamat, amelyben a valós világban
Programozás módszertan p.1/46
Programozás módszertan Öröklődés Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA ÉS ÁLTALÁNOS TECHNIKA TANSZÉK MAGYAR TUDOMÁNYOS AKADÉMIA SZÁMÍTÁSTECHNIKAI ÉS
Absztrakció. Objektum orientált programozás Bevezetés. Általános Informatikai Tanszék Utolsó módosítás:
Objektum orientált programozás Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 03. 04. OOPALAP / 1 A program készítés Absztrakciós folyamat, amelyben a valós világban
Bánsághi Anna anna.bansaghi@mamikon.net. 2014 Bánsághi Anna 1 of 31
IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 9. ELŐADÁS - OOP TERVEZÉS 2014 Bánsághi Anna 1 of 31 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív paradigma
Objektumorientált paradigma és a programfejlesztés
Objektumorientált paradigma és a programfejlesztés Vámossy Zoltán vamossy.zoltan@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Ficsor Lajos (Miskolci Egyetem) prezentációja alapján Objektumorientált
Objektumorientált paradigma és programfejlesztés Bevezető
Objektumorientált paradigma és programfejlesztés Bevezető Vámossy Zoltán vamossy.zoltan@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Ficsor Lajos (Miskolci Egyetem) prezentációja alapján
OOP. Alapelvek Elek Tibor
OOP Alapelvek Elek Tibor OOP szemlélet Az OOP szemlélete szerint: a valóságot objektumok halmazaként tekintjük. Ezen objektumok egymással kapcsolatban vannak és együttműködnek. Program készítés: Absztrakciós
Már megismert fogalmak áttekintése
Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése Eseménykezelési módszerek 2 Már megismert fogalmak
Adatstruktúrák, algoritmusok, objektumok
Adatstruktúrák, algoritmusok, objektumok 1. Számítási modellek és programozási paradigmák 1 Modellezési alapelvek A modellezés célja A modellezés célja a világ minél teljesebb körő megértése Elemek, folyamatok,
Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu
Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:
Programozás s 2. Alapok
Programozás s 2 Objektum Orientált Programozás Alapok utolsó változtatás s 2008.04.12. Alapok A programokat valamilyen "programozási nyelv"-en en írjuk A programozási nyelv formális (szintaktikai) és s
Funkcionális és logikai programozás. { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem }
Funkcionális és logikai programozás { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem } http://www.ms.sapientia.ro/~mgyongyi ` 1 Jelenlét: Követelmények, osztályozás Az első 4 előadáson
Adatstruktúrák Algoritmusok Objektumok
Adatstruktúrák Algoritmusok Objektumok A számítógépes problémamegoldás modellezésének módszerei. Programozási elvek és módszerek: imperatív, strukturált, moduláris, objektumorientált programozás. Programozási
Nyékyné Gaizler Judit 2.1. A jelkészlet ffl 29 Az ASCII kód ffl 31 Az EBCDIC kód ffl 31 Az ISO 8859 család ffl 32 A Unicode szabvány ffl 32
Bevezetés ffl 2 1. Programozási nyelvek tervezése ffl 7 Fodor Szabina 1.1. Történeti áttekintés ffl 7 Akorainyelvek ffl 8 A szoftverfejlesztés kialakulása ffl 9 1.2. A programozási nyelvek szerepe ffl
Interfészek. PPT 2007/2008 tavasz.
Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése 2 Már megismert fogalmak áttekintése Objektumorientált
A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai
A programozás alapjai 1 1. előadás Híradástechnikai Tanszék Amiről szólesz: A tárgy címe: A programozás alapjai A számítógép részegységei, alacsony- és magasszintű programnyelvek, az imperatív programozási
Java programozási nyelv 5. rész Osztályok III.
Java programozási nyelv 5. rész Osztályok III. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék
Programozás alapjai (ANSI C)
Programozás alapjai (ANSI C) 1. Előadás vázlat A számítógép és programozása Dr. Baksáné dr. Varga Erika adjunktus Miskolci Egyetem, Informatikai Intézet Általános Informatikai Intézeti Tanszék www.iit.uni-miskolc.hu
GENERIKUS PROGRAMOZÁS Osztálysablonok, Általános felépítésű függvények, Függvénynevek túlterhelése és. Függvénysablonok
GENERIKUS PROGRAMOZÁS Osztálysablonok, Általános felépítésű függvények, Függvénynevek túlterhelése és Függvénysablonok Gyakorlatorientált szoftverfejlesztés C++ nyelven Visual Studio Community fejlesztőkörnyezetben
ME 306-2 Szoftverfejlesztés
Programozási nyelvek kialakulása, fejlődése. Eljárás és objektumorientált nyelvek jellemzői, alapfogalmai. Grafikus fejlesztői környezetek kialakulása, eseményorientált programozás. 1. Programozási nyelvek
Programozási nyelvek a közoktatásban alapfogalmak I. előadás
Programozási nyelvek a közoktatásban alapfogalmak I. előadás Szempontok Programozási nyelvek osztályozása Felhasználói kör (amatőr, professzionális) Emberközelség (gépi nyelvektől a természetes nyelvekig)
Adatstruktúrák, algoritmusok, objektumok
Adatstruktúrák, algoritmusok, objektumok 3. Az objektumorientált paradigma alapelemei Objektum Osztály Példányosítás A konstruktor és a destruktor Osztályok közötti kapcsolatok Miklós Árpád, BMF NIK, 2006
Programozás III. - NGB_IN001_3
Programozás III. - az objektumorientált programozásba Varjasi Norbert Széchenyi István Egyetem Informatika Tanszék Programozás III. - 1. el adás institution-log Tartalom 1 El adások és gyakorlatok Zárthelyi
S0-02 Típusmodellek (Programozás elmélet)
S0-02 Típusmodellek (Programozás elmélet) Tartalom 1. Absztrakt adattípus 2. Adattípus specifikációja 3. Adattípus osztály 4. Paraméterátadás 5. Reprezentációs függvény 6. Öröklődés és polimorfizmus 7.
Programozási nyelvek 6. előadás
Programozási nyelvek 6. előadás Szempontok Programozási nyelvek osztályozása Felhasználói kör (amatőr, professzionális) Emberközelség (gépi nyelvektől a természetes nyelvekig) Számítási modell (hogyan
Történeti áttekintés
Történeti áttekintés Előzmények A számítástechnika kezdetén elterjedt (egyeduralkodó) volt a mérnökpult használata, a gép és az ember kommunikációja bináris nyelven zajlott. A gépi kódú programozás nem
Programozástanítási célok teljesítése a Logóval és a Scratch-csel
Programozástanítási célok teljesítése a Logóval és a Scratch-csel Bernát Péter Készült az "Országos koordinációval a pedagógusképzés megújításáért című TÁMOP- 1. Problémamegoldás 1/a. Problémamegoldás
SZOFTVERFEJLESZTÉSI TECHNOLÓGIÁK
SZOFTVERFEJLESZTÉSI TECHNOLÓGIÁK Programnyelv fa: A nyilak irányába hatnak egymásra a nyelvek. Az ALGOL 60 előtt is voltak nyelvek (pl.: Fortran). Az aláhúzottak objektumorientált nyelvek (későbbiekben
Bánsághi Anna 2014 Bánsághi Anna 1 of 33
IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 7. ELŐADÁS - ABSZTRAKT ADATTÍPUS 2014 Bánsághi Anna 1 of 33 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív
és az instanceof operátor
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
Objektum orientált alapelvek
Krizsán Zoltán 1 [2012. február 12.] Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Programozási nyelvek A programozási eszközök absztrakciós
Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
Programozás. Objektum Orientált Programozás (OOP) Alapfogalmak. Fodor Attila
Programozás Objektum Orientált Programozás (OOP) Alapfogalmak Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. február 18.
Bevezetés. Dr. Iványi Péter
Bevezetés Dr. Iványi Péter Programozási készség Számos munka igényel valamilyen szintű programozási készséget Grafikus a képfeldolgozót, Zenész a szintetizátort, Programozó a számítógépet programozza.
Models are not right or wrong; they are more or less useful.
Eötvös Loránd Tudományegyetem Informatikai Kar Szoftvertechnológia 8. előadás Models are not right or wrong; they are more or less useful. (Martin Fowler) Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
Bevezetés a Programozásba II 8. előadás. Polimorfizmus Giachetta Roberto
Pázmány Péter Katolikus Egyetem Információs Technológiai és Bionikai Kar Bevezetés a Programozásba II 8. előadás 2014.03.31. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Öröklődés
Szoftvertechnológia 8. előadás. Szoftverrendszerek tervezése. Giachetta Roberto. Eötvös Loránd Tudományegyetem Informatikai Kar
Eötvös Loránd Tudományegyetem Informatikai Kar Szoftvertechnológia 8. előadás Szoftverrendszerek tervezése Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Models are not right
Webes alkalmazások fejlesztése
Webes alkalmazások fejlesztése 3. gyakorlat Authentikáció, adatok feltöltése Szabó Tamás (sztrabi@inf.elte.hu) - sztrabi.web.elte.hu Authentikáció Manapság már elvárás, hogy a felhasználó regisztrálni
Programozási alapismeretek 4.
Programozási alapismeretek 4. Obejktum-Orientált Programozás Kis Balázs Bevezetés I. Az OO programozási szemlélet, egy merőben más szemlélet, az összes előző szemlélettel (strukturális, moduláris, stb.)
Objektumelvű programozás
Objektum, osztály Objektumelvű programozás Az elemzés együttműködő objektumok rendszereként fogalmazza meg a feladatot. Objektum-központú elemzés A tervezés a feladat tárgyköreit egy-egy objektum felelősségévé
Számítógép architektúra
Budapesti Műszaki Főiskola Regionális Oktatási és Innovációs Központ Székesfehérvár Számítógép architektúra Dr. Seebauer Márta főiskolai tanár seebauer.marta@roik.bmf.hu Irodalmi források Cserny L.: Számítógépek
OOP #1 (Bevezetés) v1.0 2003.03.07. 18:39:00. Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj.
OOP #1 (Bevezetés) v1.0 2003.03.07. 18:39:00 Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. e-mail: aroan@ektf.hu web: http://aries.ektf.hu/~aroan OOP OOP_01-1 - E jegyzet másolata
NC program ellenorzo szimulátor fejlesztése objektumorientált módszerrel
Megjelent: Magyar Tudomány Napja, Doktoranduszok Fóruma, Miskolc, 1997. nov. 6, pp. 11-15 NC program ellenorzo szimulátor fejlesztése objektumorientált módszerrel Hornyák Olivér I. éves doktorjelölt Miskolci
III. Alapfogalmak és tervezési módszertan SystemC-ben
III. Alapfogalmak és tervezési módszertan SystemC-ben A SystemC egy lehetséges válasz és egyben egyfajta tökéletesített, tovább fejlesztett tervezési módszertan az elektronikai tervezés területén felmerülő
Osztálytervezés és implementációs ajánlások
Osztálytervezés és implementációs ajánlások Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 04. 24. Osztálytervezés és implementációs kérdések OTERV / 1 Osztály tervezés Egy nyelv
Osztálytervezés és implementációs ajánlások
Osztálytervezés és implementációs ajánlások Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 04. 24. Osztálytervezés és implementációs kérdések OTERV / 1 Osztály tervezés Egy nyelv
Magas szintű adatmodellek Egyed/kapcsolat modell I.
Magas szintű adatmodellek Egyed/kapcsolat modell I. Ullman-Widom: Adatbázisrendszerek. Alapvetés. 4.fejezet Magas szintű adatmodellek (4.1-4.3.fej.) (köv.héten folyt.köv. 4.4-4.6.fej.) Az adatbázis modellezés
C++ programozási nyelv
C++ programozási nyelv Gyakorlat - 8. hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. november A C++ programozási nyelv Soós Sándor 1/12 Tartalomjegyzék Miért
Java programozási nyelv 9. rész Kivételkezelés
Java programozási nyelv 9. rész Kivételkezelés Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/24 Tartalomjegyzék
A TANTÁRGY ADATLAPJA
A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika Kar 1.3 Intézet Magyar Matematika és Informatika Intézet 1.4
Bevezetés az informatikába
Bevezetés az informatikába 8. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.
Objektum orientáltság alapjai A Java nyelv Fordítás - futtatás
Objektum orientáltság alapjai A Java nyelv Fordítás - futtatás Objektum orientáltság alapjai Objektum: A való világ egy elemének ábrázolása, amely minden esetben rendelkezik: Állapottal,Viselkedéssel,Identitással
Alkalmazott Modul III 6. előadás. Objektumorientált programozás: öröklődés és polimorfizmus
Eötvös Loránd Tudományegyetem Természettudományi Kar Alkalmazott Modul III 6. előadás Objektumorientált programozás: öröklődés és polimorfizmus 2011.10.24. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
Gépészeti rendszertechnika (NGB_KV002_1)
Gépészeti rendszertechnika (NGB_KV002_1) 2. Óra Kőrös Péter Közúti és Vasúti Járművek Tanszék Tanszéki mérnök (IS201 vagy a tanszéken) E-mail: korosp@ga.sze.hu Web: http://www.sze.hu/~korosp http://www.sze.hu/~korosp/gepeszeti_rendszertechnika/
VII. Keretalapú ismeretábrázolás
Collins és Quillian kísérlete VII. Keretalapú ismeretábrázolás Tud-e a kanári énekelni? 1.3 mp Képes-e a kanári? 1.4 mp Van-e a kanárinak bőre? 1.5 mp A kanári egy kanári? 1.0 mp A kanári egy madár? 1.2
FUNKCIONÁLIS PROGRAMOZÁS
FUNKCIONÁLIS PROGRAMOZÁS A funkcionális programozás néhány jellemzője Funkcionális programozás 1-2 Funkcionális, más néven applikatív programozás Funkcionális = függvényalapú, függvényközpontú Applikatív
Szoftver-technológia II. Modulok és OOP. Irodalom
Modulok és OOP Irodalom Steven R. Schach: Object Oriented & Classical Software Engineering, McGRAW-HILL, 6th edition, 2005, chapter 7. 2 Modulok és objektumok Modulok Lexikálisan folytonos utasítás sorozatok,
Programozási technológia
Programozási technológia UML emlékeztető, Öröklődés Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. UML Osztályok jelölése A diagramokban az osztály jelölésénél a nevét, az attribútumok nevét és a műveletek
Programozás. Bevezetés. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék
Programozás Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. február 11. Tantárgy célja, szükséges ismeretek Tantárgy célja,
A szemantikus elemzés helye. A szemantikus elemzés feladatai. A szemantikus elemzés feladatai. Deklarációk és láthatósági szabályok
A szemantikus elemzés helye Forrásprogram Forrás-kezelő (source handler) Lexikális elemző (scanner) A szemantikus elemzés feladatai Fordítóprogramok előadás (A, C, T szakirány) Szintaktikus elemző (parser)
Mindenki abból a három tantárgyból tesz szigorlatot, amelyet hallgatott.
Szigorlati témakörök az Informatika (szigorlat) (BMEVIAU0181) c. tantárgyat felváltó Informatika (BMEGERIEEIS) tantárgyból az okleveles energetikai mérnökképzés (2N-0E) hallgatói számára 1. tantárgy: Programozás
Bevezetés a Python programozási nyelvbe
Bevezetés a Python programozási nyelvbe 7. Gyakorlat osztályok, objektumok (utolsó módosítás 2018. aug. 28.) Szathmáry László Debreceni Egyetem Informatikai Kar 2018-2019, 1. félév OO programozás Pythonban
4. Programozási nyelvek osztályozása. Amatőr és professzionális
4. Programozási nyelvek osztályozása. Amatőr és professzionális programozási nyelvek. Számítási modellek (Neumann-elvű, automataelvű, funkcionális, logikai). Programozási nyelvekkel kapcsolatos fogalmak
Egy Erlang refaktor lépés: Függvényparaméterek összevonása tuple-ba
Egy Erlang refaktor lépés: Függvényparaméterek összevonása tuple-ba Témavezető: Horváth Zoltán és Simon Thompson OTDK 2007, Miskolc Egy Erlang refaktor lépés: Függvényparaméterek összevonása tuple-ba OTDK
Szoftverarchitektúrák 3. előadás (második fele) Fornai Viktor
Szoftverarchitektúrák 3. előadás (második fele) Fornai Viktor A szotverarchitektúra fogalma A szoftverarchitektúra nagyon fiatal diszciplína. A fogalma még nem teljesen kiforrott. Néhány definíció: A szoftverarchitektúra
Oktatási segédlet 2014
Oktatási segédlet 2014 A kutatás a TÁMOP 4.2.4.A/2-11-1-2012- 0001 azonosító számú Nemzeti Kiválóság Program Hazai hallgatói, illetve kutatói személyi támogatást biztosító rendszer kidolgozása és működtetése
ERLANG PROGRAMOK TRANSZFORMÁCI CIÓJA ERLANG
KLIENS-SZERVER SZERVER ALAPÚ ERLANG PROGRAMOK TRANSZFORMÁCI CIÓJA ERLANG OTP SÉMÁRAS Király Roland kiralyroland@inf.elte.hu Támogatók: - GVOP-3.2.2 3.2.2-2004-07-0005/3.00005/3.0 ELTE IKKK - Ericsson Hungary
Programozás elmélete
Programozás elmélete Programozás és program Programozás: folyamat, melynek során a feladat megoldását a számítógép számára érthető formában írjuk le. Program: a programozás eredménye, futtatható változatban
Programozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 9. előadás Interface - típust vezet be, de osztálypéldány nem készíthető belőle (statikus típust ad) - több osztály is
A szerzõrõl... xi Bevezetés... xiii
TARTALOMJEGYZÉK A szerzõrõl...................................................... xi Bevezetés...................................................... xiii I. rész A Visual Basic 2005 környezet 1. óra Irány
S01-7 Komponens alapú szoftverfejlesztés 1
S01-7 Komponens alapú szoftverfejlesztés 1 1. A szoftverfejlesztési modell fogalma. 2. A komponens és komponens modell fogalma. 3. UML kompozíciós diagram fogalma. 4. A szoftverarchitektúrák fogalma, összetevői.
Programozás II. 2. gyakorlat Áttérés C-ről C++-ra
Programozás II. 2. gyakorlat Áttérés C-ről C++-ra Tartalom Új kommentelési lehetőség Változók deklarációjának helye Alapértelmezett függvényparaméterek Névterek I/O műveletek egyszerűsödése Logikai adattípus,
Kedvenc Ingyenes editorok avagy milyen a programozó jobbkeze? PSPAD editor DEVPHP IDE
Kedvenc Ingyenes editorok avagy milyen a programozó jobbkeze? Az Interneten nagyon sok fizetős szoftver gyakorlatilag sz sem ér, ezért mindenkinek azt javaslom mielőtt még gyors költekezésbe kezdene nézzen
Szoftvertechnológia 8. előadás. Szoftverrendszerek tervezése. 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.
Eötvös Loránd Tudományegyetem Informatikai Kar Szoftvertechnológia 8. előadás Szoftverrendszerek tervezése 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Models are not
Programozás. C++ osztályok. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.
Programozás C++ osztályok Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. április 8. Csak bázisosztályként használt/értelmezhető
Inczédy György Középiskola, Szakiskola és Kollégium Nyíregyháza, Árok u. 53. TANMENET. Informatika szakmacsoport
TANMENET Informatika szakmacsoport Programozási gyakorlatok III. tantárgy 12. évfolyam A osztály 2013/2014 tanév Heti óraszám: Éves óraszám: 3 óra 96 óra Készítette: Szikszai Gusztáv tanár Ellenőrizte:.
Informatikai alkalmazások - levelező
Informatikai alkalmazások - levelező Karakterkódolás Karakterek mint bájtok ASCII (American Standard Code for Information Interchange) karakterkódolás 1 karakter 1 byte (256 féle kód) kódtáblában rögzítve
Java programozási nyelv
Java programozási nyelv 2. rész Vezérlő szerkezetek Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/23 Tartalomjegyzék
Bevezetés a programozásba II. 8. Előadás: Osztályok, objektumok, osztályszintű metódusok
Bevezetés a programozásba II 8. Előadás: Osztályok, objektumok, osztályszintű metódusok vektor.h #ifndef VEKTOR_H #define VEKTOR_H class Vektor { int meret, *mut; public: Vektor(int meret); int szamlal(int
Programfejlesztési Modellek
Programfejlesztési Modellek Programfejlesztési fázisok: Követelmények leírása (megvalósíthatósági tanulmány, funkcionális specifikáció) Specifikáció elkészítése Tervezés (vázlatos és finom) Implementáció
Adatstruktúrák, algoritmusok, objektumok
Adatstruktúrák, algoritmusok, objektumok 2. Az objektumorientált programozási paradigma 1 A szoftverkrízis Kihívások a szoftverfejlesztés módszereivel szemben 1. A szoftveres megoldások szerepe folyamatosan
Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra
Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama 10. évfolyam: 105 óra 11. évfolyam: 140 óra 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra 36 óra OOP 14 óra Programozási
Miről lesz ma szó? A PROGAMOZÁS ALAPJAI 1. Bemutatkozás. Bemutatkozás. Bemutatkozás. Bemutatkozás. 1. előadás. A tárgy címe: A programozás alapjai 1
Miről lesz ma szó? A PROGAMOZÁS ALAPJAI 1 Ajánlott irodalom A programozás fogalma Vitéz András egyetemi adjunktus BME Híradástechnikai Tanszék vitez@hit.bme.hu 2012. február 7. A tárgy címe: A tárgy adminisztratív
Interfészek. Programozás II. előadás. Szénási Sándor.
Interfészek előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Polimorfizmus áttekintése Interfészek Interfészek alkalmazása
Programozási nyelvek Java
statikus programszerkezet Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 2. előadás csomag könyvtárak könyvtárak forrásfájlok bájtkódok (.java) (.class) primitív osztály
Objektum orientált software fejlesztés (Bevezetés)
Objektum orientált software fejlesztés (Bevezetés) Lajos Miskolci Egyetem Általános Informatikai Tanszék Út az objektum orientált szemléletig 1. Klasszikus módszerek: program = adatszerkezetek + algoritmusok
Logikai programozás ADMINISZTRATÍV KÉRDÉSEK KÖVETELMÉNYRENDSZER FŐBB PONTOK NÉHÁNY BIZTATÓ SZÓ
Logikai programozás ADMINISZTRATÍV KÉRDÉSEK Bármilyen kérdéssel (akár tananyag, akár nem), örömmel, bánattal: achs.agnes@gmail.com (Ha két napon belül nem válaszolok, akkor kérek egy figyelmeztető levelet.
Szoftver-technológia I.
Szoftver technológia I. Oktatók Sziray József B602 Heckenast Tamás B603 2 Tananyag Elektronikus segédletek www.sze.hu/~sziray/ www.sze.hu/~heckenas/okt/ (www.sze.hu/~orbang/) Nyomtatott könyv Ian Sommerville:
Programozási Paradigmák
Programozási Paradigmák Programozási paradigmák, Számítási modellek előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Programozási
Az adatbázisrendszerek világa
Az adatbázisrendszerek világa Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 1.1. Az adatbázisrendszerek fejlődése 1.2. Az adatbázis-kezelő rendszerek áttekintése
Programozási technológia
Programozási technológia Generikus osztályok Gyűjtemények Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Generikus osztályok Javaban az UML paraméteres osztályainak a generikus (sablon) osztályok felelnek
Abstract osztályok és interface-ek. 7-dik gyakorlat
Abstract osztályok és interface-ek 7-dik gyakorlat Abstract metódusok és osztályok Az OO fejlesztés során olyan osztályokat is kialakíthatunk, melyeket csak továbbfejlesztésre, származtatásra lehet használni,
Komponens alapú fejlesztés
Komponens alapú fejlesztés Szoftver újrafelhasználás Szoftver fejlesztésekor korábbi fejlesztésekkor létrehozott kód felhasználása architektúra felhasználása tudás felhasználása Nem azonos a portolással