Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Porkoláb Zoltán, Kozsik Tamás, Zsók Viktória,

Hasonló előadás


Az előadások a következő témára: "Porkoláb Zoltán, Kozsik Tamás, Zsók Viktória,"— Előadás másolata:

1 Új szoftverparadigmák nyelvi támogatása: a jelen oktatása – a holnap technológiája
Porkoláb Zoltán, Kozsik Tamás, Zsók Viktória, Eötvös Loránd Tudományegyetem, Informatikai Kar Programozási Nyelvek és Fordítóprogramok Tanszék

2 A paradigma Az absztrakció fogalma A paradigma + általános
- specifikus A paradigma útmutató az absztrakciók létrehozására szabályok és konvenciók halmaza eszközöket biztosít a fejlesztés támogatására evolúció Informatika a felsőoktatásban 2005

3 Strukturált programozás
Szekvenciából, elágazásból és ciklusból felépülő (goto mentes) eljárások Eljárások paraméterátadással és globális változókkal kommunikáltak Adekvát algoritmusok meghatározása Magasszintű függvénykönyvtárak Gyengének bizonyultak az adatstruktúrák kompozíciójában Informatika a felsőoktatásban 2005

4 Az objektumelvű paradigma
Adekvát adatstruktúrák és a rajtuk végzett műveletek, Enkapszuláció Osztályok: az azonos adatstruktúrával és műveletekkel rendelkező objektumok programnyelvi leírása Öröklődés, osztályok hierarchiája Informatika a felsőoktatásban 2005

5 Az objektumelvű paradigma
Generalizáció, specializáció Erősen típusos programozási nyelvek támogatják Dinamikus kötés - futási idejű polimorfizmus Elterjedt az iparban és oktatásban C++, Java Az első oktatott nyelv – procedurális vs. objektumelvű Informatika a felsőoktatásban 2005

6 Objektumelvű paradigma - kritika
Pozitív és negatív változások Dinamikus kötés és a fordítási idejű típusellenőrzés egyidejű megvalósítása kovariáns visszatérő érték, kontravariáns paraméter A kifejezés-probléma Hatékonysági problémák Informatika a felsőoktatásban 2005

7 Új paradigmák Aspektusorientált programozás Generikus programozás
Magasabbrendű funkcionális programozás Az új paradigmák beépítik a korábbi paradigmák tapasztalatait Multiparadigma elvű rendszerek Informatika a felsőoktatásban 2005

8 Aspektus-orientált programozás
Motiváció: Rossz modularitás OOP-ban Szétszórt kódrészletek Kód utólagos módosítása Aspektusok – csatolási pontok - szövőgép Példa: AspectJ + Java Informatika a felsőoktatásban 2005

9 Generatív programozás
Adatszerkezetek – általános algoritmusok Fordítási idejű típusellenőrzés Parametrikus polimorfizmus Algoritmusok - osztályok - funktorok Példa: C++ Standard Template Library Informatika a felsőoktatásban 2005

10 Funkcionális programozás
Függvények kiértékelése, magasabbrendű függvények Kompozicionalitás elve, kiértékelési stratégiák Lambda kalkulus, gráfátíró rendszerek Magasabb rendű típusok, típusosztályok, egzisztenciálisan kvantált típusok, unique típusok, monádok Informatika a felsőoktatásban 2005

11 OO-AOP együttélés Alapstruktúra – OOP
Csökkenti a kódismétlést az osztályokban Javítja a modularitást Segíti a pozitív és negatív változások követését + after/before – around Informatika a felsőoktatásban 2005

12 OO-GP együttélés Absztrakt adatszerkezetek – osztályok Funktor-ok
Algoritmusok ábrázolása osztályként Mixin-ek: Az öröklési hierarchia megfordítása Csökkenti az osztályok számát és interfészét Segíti a negatív változások követését Informatika a felsőoktatásban 2005

13 OO-FP együttélés Absztrakt adatszerkezetek – osztályok Enkapszuláció
Altípusosság: Nominális Strukturális Informatika a felsőoktatásban 2005

14 GP-FP együttélés Standard Template Library Template metaprogramozás
Funkcionális programozás Template metaprogramozás Funkcionális programok Generikus adatszerkezetek és függvények Parametrikus polimorfizmus Informatika a felsőoktatásban 2005

15 Összefoglalás Paradigmák evolúciója Akadémiai kutatások
Ipari követelmények „gyakorlatias” versus „akadémikus” tárgyak Új paradigmák megértésére, befogadása Felkészítés a jelen és a jövő technológiáira Informatika a felsőoktatásban 2005

16 Hivatkozások James O. Coplien: Multiparadigm Design for C++, Addison-Wesley, 1998 David Musser, Atul Saini: STL Tutorial and Reference Guide, Addison-Wesley, 1996 Bjarne Stroustrup: The C++ Language, Addison-Wesley, 2000 Czarnetzki, Eisenecker: Generative Programming, Addison-Wesley, 2000 Informatika a felsőoktatásban 2005


Letölteni ppt "Porkoláb Zoltán, Kozsik Tamás, Zsók Viktória,"

Hasonló előadás


Google Hirdetések