Aspektus- és objektum-orientált modellek Java-ban
A tantárgy angol neve: Aspect and Object Oriented Models in Java
Adatlap utolsó módosítása: 2007. március 22.
Tantárgy lejárati dátuma: 2009. november 24.
Villamosmérnöki Szak
Műszaki Informatika Szak
Választható tárgy
Név:
Beosztás:
Tanszék, Int.:
dr. Adamis Gusztáv
Adjunktus
TMIT
Paller Gábor, Ph.D.
Kovács Gábor
Vendégelőadó
ügyvivő szakértő
NOKIA Hungary Kft.
Az objektum-orientált tervezés és programozás alapjainak ismerete (Jáva, C++) előnyt jelent.
Kötelező előtanulmány:
VIET1017 Programtervezés II. (villamosmérnöki szak), illetve
BMEVIEE1239, 1240 Programozás alapjai I., II. (műszaki informatika szak)
Ajánlott előtanulmány:
VITT0127 Informatika II. (villamosmérnöki szak), illetve
VIFO2237 Számítógéplabor III. (műszaki informatika szak)
Megismertetni a hallgatókat a Jáva nyelvet használó összetettebb technológiákkal, Jávás alkalmazásmodellekkel és az aspektus-orientált programozással Jáva nyelven.
A Jáva nyelv rövid bemutatása
- Az alaptípusok, operátorok, vezérlési szerkezetek áttekintése.
- Az objektum-orientáltság a Jáva nyelv esetében: osztály, tulajdonságok, módszerek, példány, interfészek, öröklődés, polimorfizmus.
- A Jáva API osztályhierarchiájához kapcsolódó nyelvi elemek: kivételkezelés, szinkronizáció és többszálúság, introspection és reflection.
Jáva alkalmazásmodellek és Jáva alapú technológiák bemutatása és szemléltetése példákon keresztül:
- Jáva alkalmazás.
- Applet, Web-böngésző, mint Jáva futtatókörnyezet + AWT grafikus felület.
- MIDlet, Jáva implementáció a mobiltelefonokban és hasonló szűk erőforrásokkal rendelkező eszközökben, a MIDlet rendelkezésére álló szolgáltatások.
- Xlet, CDC konfiguráció, Personal Basis és Personal Profile.
- Servlet, JSP, webszerver, mint futtatókörnyezet, a szervlet kapcsolata a HTTP protokollal.
- J2EE/EJB, Jáva az alkalmazás szerverekben + kommunikációs technológiák Jávában (web services, RMI, RMI-IIOP).
- OSGi, menedzselhető Jáva platform kis erőforrással rendelkező eszközökre, OSGi keretrendszer és alapvető OSGi szolgáltatások.
- Jáva alapú szövegfeldolgozás, lexikai elemző (JLex), parser (CUP).
Az aspektus-orientált programozási nyelvek elmélete és Jáva megvalósítása:
- Az aspektus-orientált rendszerek által megoldani kívánt problémák, összefésülődés (cross-cutting) és szétszóródás (tangling), ezek bemutatása motivációs példákon keresztül (hibakezelés, naplózás, biztonsági és teljesítménykövetelmények).
- Az aspektus-orientált megoldás: aspektus dekompozíció és összeszövés (weaving).
- Aspektus-orientált megoldás a motivációs példákra, elvárások (concern) egységekbe szervezése, osztályoktól függetlenítése.
- AspectJ példák (a Jáva aspektus-orientált kiterjesztése):
- join points (static, dynamic)
- pointcut
- advice
- aspect
- Az AspectJ-ben írt program működése, statikus és dinamikus pointcut kiértékelés és hatása fordítás és futás közben.
- További Jáva-alapú aspektus-orientált rendszerek (HyperJ, AspectWerkz, JBoss AOP).
(előadás, gyakorlat, laboratórium):
Előadás és laboratórium.
a. A szorgalmi időszakban:
Az aláírás feltétele: vizsgajegy. A vizsgajegy alapja: vizsgaeredmény és laboratóriumi gyakorlatra kapott jegyek átlagának súlyozott összege.
b. A vizsgaidőszakban:
Írásbeli vizsga.
Nincs.
Egy laboratóriumi gyakorlat pótlására lehetőséget biztosítunk.
Előadások után, illetve e-mail-en keresztül folyamatosan, vizsgák előtt igény esetén szervezetten.
Móricz Attila : Java programozási nyelv
Nyékyné Gaizler Judit: Java 2 útikalauz programozóknak 1.3
Horstmann, Cay S.: Core Java
:
Kontakt óra
60
Félévközi készülés órákra
45
Felkészülés zárthelyire
0
Házi feladat elkészítése
Kijelölt írásos tananyag elsajátítása
30
Vizsgafelkészülés
15
Összesen
150
vendégelőadó
Németh Krisztián
doktorandusz