Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Licenţă
Domeniul: Matematică
Programul de studii: Matematică informatică - linia de studiu maghiară
Limba de predare: Maghiară

SYLLABUS

I. Általános adatok
Kód	Tantárgy neve	
MID0012	Osztott rendszerek programozása – Java platformok	

Félév	Órák: C+S+L+P	Kategória	Típus	
5	2+0+1+0	szaktárgy	választható	

II. Foállásban az  Egyetem  oktatói
Név	Tudományos	Oktatói	Tanszék	Tevékenység	
	fokozat	státus		E	Sz	L	
SIMON Karoly	Dr. 	Lect.	Magyar Matematika és Informatika	*			

Társult oktatók
Név	Tudományos	Intézmény	Állás	Tevékenység 	
	fokozat		típusa	E	Sz	L	

III. A tantárgy célkituzései
a Java programozási nyelvvel és standard Java platformmal kapcsolatos ismeretek felfrissítése, bizonyos kapcsolódó fogalmak részletesebb tárgyalása, kiegészíto témakörök bemutatása, az ismeretanyag elmélyítése
osztott vállalati rendszerekkel kapcsolatos bevezeto témakörök, használt technológiák bemutatása
a Java webprogramozási technológiák alapjainak elsajátítása
osztott rendszerek megvalósításának lehetoségei, távoli objektumok elérése, távoli metódushívások, kapcsolódó API-k és standardok megismerésre
néhány hálózati programozással és osztott rendszerekkel kapcsolatos modern keretrendszer bemutatása
mobileszközökön muködo alkalmazások fejlesztésének lehetoségei Java-ban	

IV. A tantárgy tartalma
A Java programozással kapcsolatos ismeretek átismétlése, kiegészítése, elmélyítése
Adatbázisok elérése Java-ban, kapcsolódó API-k és minták (JDBC, Abstract DAO Factory, stb.)
XML állományok feldolgozása Java-ban, osztott rendszerekkel kapcsolatos felhasználási lehetoségek (konfiguráció, building, kommunikáció), kapcsolódó eszközök (pl. Ant), protokollok (pl. SOAP)
Java webprogramozási technológiák alapjai (servlet, JSP)
Osztott rendszerek, távoli metódushívások (CORBA, RMI)
Webszolgáltatások
Hálózati programozással, osztott rendszerekkel kapcsolatos keretrendszerek (pl. Apache Mina, Struts, stb.)
Mobileszközökön muködo alkalmazások fejlesztése (Java ME, Android) 	

V. Könyvészet
1.	ATHANASIU I., Limbajul Java, Editura Computer Libris Agora, Cluj, 1998
2.	BOIAN F.M.. BOIAN R.F., Tehnologii fundamentale Java pentru aplicatii Web, Editura Albastra, Cluj, 2004
3.	BOIAN F.M., FERDEAN C. M., BOIAN R.F. DRAGOS R.C. Programare concurenta pe platforme Unix, Windows, Editura Albastra - grupul Microinformatica, Cluj, 2002
4.	BOIAN F.M., Programare distribuita în Internet; metode si aplicatii, Editura Albastra, Cluj, 1998 
5.	DARWIN I. Java CookBook, O'Reilly, 2001
6.	GEARY D.M. Advanced Java Server Pages, O'Reilly, 2001
7.	HUNTER J. Java Servlet Programming O'Reilly, 1998
8.	KURNIAWAN B. Java for the Web with Servlet, JSP, and EJB: A Developer's Guide to J2EE Solutions. Wrox press, 2003
9.	NEWARD T. Server Based Java Programming, O'Reilly, 2000
10.	*** http://java.sun.com/docs/guide/net/index.html
11.	*** http://java.sun.com/docs/guide/rmi/index.html	

VI. Az oktatói tevékenység heti tematikája
Java ismétlés és kiegészítések – I. rész
Nyelvi alapok, objektumorientált programozás Java-ban - ismétlés
Kivételkezelés részletesebben – kapcsolódó minták, receptek
Naplózás, naplózási keretrendszerek (Java Logging API, Log4j)
Java ismétlés és kiegészítések – II. rész
Grafikus felhasználói felületek – az AWT és SWING eszköztárak ismétlése
Eseménykezelés általánosabban – példák
Grafika és Appletek – ismétlés
Properties objektumok
Nemzeköziesítés és lokalizáció
A sandbox mechanizmus, biztonsággal kapcsolatos megoldások
Java ismétlés és kiegészítések – III. rész
Végrehajtási szálak: alapfogalmak ismétlése, szinkronizálás, érvénytelenített metódusok helyettesítése
Adatfolyamok: adatfolyamokkal és állománykezeléssel kapcsolatos alapfogalmak ismétlése, a Java szerializálási mechanizmusa, a pipeline mechanizmus
Gyujtemény keretrendszer és generikus típusok – ismétlés
A hálózati programozás alapjai - ismétlés
Adatbázisok elérése 
A JDBC API
Többrétegu szoftverarchitektúrák
A DAO Factory tervezési minta
XML feldolgozás, alkalmazás osztott rendszerek fejlesztésénél
XML érvényességének vizsgálata (DTD, XSD)
XML feldolgozók (DOM, SAX)
XML transzformációk (XSLT)
XML konfigurációs állományok
Apache Ant
SOAP alapok
Java webprogramozási technológiák alapjai – I. rész
Java EE
Java web-alkalmazások
A Java Servlet technológia
Szessziókövetés
Szurok
Java webprogramozási technológiák alapjai – II. rész
Az MVC elv és a webes alkalmazások
A JavaServer Pages technológia
JSP elemkönyvtárak
Távolsági metódushívásokon alapuló kliens-szerver alkalmazások
az általános modell (egy Distributed Object Application általános modellje, távoli interfészek, objektumok, metódusok)
CORBA (Common Object Request Broker Architecture)
általános bevezeto, OMG
CORBA összetevok (a kliens és a szerver oldal)
az IDL (Interface Definition Language), IDL-Java leképezés
CORBA alapú alkalmazások fejlesztése (példa)
RMI (Remote Method Invocation)
a Java RMI API
RMI alapú alkalmazások fejlesztése (a fejlesztés lépései, a szerver és kliens létrehozása)
RMI alapú alkalmazások futtatása
biztonsági mechanizmusok: class loaders, security managers, protection domains, kriptográfiai algoritmusok és a JCE (Java Criptography Extension), digitális aláírások
Webszolgáltatások
Alapfogalmak
SOAP, WSDL
JAX-WS, JAX-RS
Keretrendszerek – I. rész
A java.nio csomag
Az Apache MINA keretrendszer
Keretrendszerek – II. rész
A Struts MVC
A Struts keretrendszer
Mobileszközökön muködo Java alkalmazások készítése – I. rész
A Java ME platform bemutatása
Mobileszközökön muködo Java alkalmazások készítése – II. rész
Az Android rendszer áttekintése
Az Android platform
Android fejlesztések alapjai
Osztott rendszerek, Java platformok és technológiák - összefoglaló

Gyakorlati tevékenységek (a laborórák feladatai):
A Java programozási nyelv alapjainak ismétlésével párhuzamosan bemutatott kiegészíto témakörök elsajátítását segíto feladat
A JDBC API és a DAO Factory minta alkalmazása
XML feldolgozás Java-ban
A Servlet és JSP technológiák alkalmazása
Az RMI API alkalmazása
Java webszolgáltatás
Android alkalmazás

További információk: http://www.cs.ubbcluj.ro/~ksimon	

VII. Alkalmazott didaktikai módszerek

VIII. Értékelés
A végso jegyet az alábbiakban leírtak szerint határozzuk meg: 
A. Labortevékenység: 40% 
B. Írásbeli vizsga: 40%
C. Gyakorlati vizsga: 20%
Az írásbeli és gyakorlati vizsgára a vizsgaidoszakban kerül sor. Az írásbeli vizsga elméleti jellegu, a gyakorlati vizsgán az anyaggal kapcsolatos egyszeru alkalmazást kell implementálni. 
A tantárgy sikeres letételéhez minden részeredmény (A, B és C) esetében átmeno osztályzatot (5) kell elérni.	

IX. Kiegészíto könyvészet

	Dékán,						Tanszékvezeto,

	Dátum,						Eloadás felelose,
	2011. okt. 1.						Lect. Dr.  SIMON Karoly