Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Licență

FISA DISCIPLINEI

Codul
Denumirea disciplinei
MID0012 Programare distribuită - platforme Java
Specializarea
Semestrul
Ore: C+S+L
Categoria
Statutul
Informatică - linia de studiu română
5
2+0+2
specialitate
optionala
Matematică informatică - linia de studiu română
5
2+0+2
specialitate
optionala
Ingineria informatiei - in limba romana
5
2+0+2
optionala
Titularii de disciplina
Prof. Dr. BOIAN Florian Mircea,  florincs.ubbcluj.ro
Lect. Dr. OLAH-GAL Robert,  robert.olah-galcs.ubbcluj.ro
Obiective
Insuşirea de către studenţi a tehnologiilor fundamentale de implementare a a aplicaţiilor distribuite. Instrumentele prezentate în acest scop sunt, în totalitate, oferite de limbajul Java şi tehnologiile oferite de pachetele din distribuţiile j2sdk1.6.0 şi j2sdkee1.5. Sunt prezentate tehnologiile de prim nivel. Ele sunt utilizate în mod direct la elaborarea de aplicaţii distribuite de dimensiuni mici sau medii. De asemenea, ele sunt utilizate automat de către tehnologiile middleware high level.
Continutul
Sapt. 1
1 Compendiu Java
• Principalele caracteristici
• Primele exemple
• Prezentare Java prin comparatii cu C si C++
• Tratarea exceptiilor
• Interfete Java
• Alte exemple de programe simple

Sapt. 2 - 3
2 Intrari / iesiri (locale); pachetul java.io, JDBC:ODBC, Mailer
• Acces prin stream si acces random
• Gestiunea structurii de fisiere: clasa File
• Citiri si scrieri
• Exemple de programe care executa operatii I/O
• Acces prin puntea JDBC:ODBC la diverse baze de date
• Expedierea de posta electronica; clasa Mailer

Sapt. 4
3 Utilitare specifice. Metode de transmitere a parametrilor initiali ai programelor
• Crearea aplicatiilor complexe; utilitarul ant
• Urmele executiei; utilitarul log4j
• Hardcodings vs. Configurare; transmiterea de proprietati
• Utilitarele NetBeans, Eclipse, IntelIJIDEA

Sapt. 5
4 Threaduri Java
• Procese externe lansate din Java
• Thread-uri Java
• Exemple de utilizare a threadurilor Java

Sapt. 6 - 7
5 Comunicatii Java folosind socket
• Prezentarea generala a pachetului java.net
• Gestiunea adreselor Internet: InetAddress
• Transmitera si receptionarea prin UDP
• Comunicare prin TCP
• Exemple de comunicatii TCP
• Accesul la resurse Internet prin URL
• CGI si comunicatii prin URLConnection

Sapt. 8 - 10
6 Tehnologia Java servlet
• Conceptul de servlet
• Containere de servlet
• Compilarea unui servlet
• Primele exemple de servleturi
• Servlet vis-a-vis cu CGI
• Facilitati specifice servlet
• Cateva exemple mai complexe

Sapt. 11 - 13
7 Java Server Pages (JSP)
• Introducere
• Text static HTML si comentarii
• Tagurile JSP
• Utilizarea beanurilor in pagini JSP

Sapt. 14
8 RMI: Apelul la distanta al obiectelor Java
• Scenariul dezvoltarii unei aplicatii RMI
• Un exemplu de utilizare RMI
Bibliografie
1. 1 ATHANASIU I., Limbajul Java, Editura Computer Libris Agora, Cluj, 1998
2. BOIAN F.M.. BOIAN R.F., Tehnologii fundamentale Java pentru aplicaţii 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
Evaluare
Examen practic la finele semestrului. Nota este obţinută ca medie între:
- nota la lucrarea scrisă 30%;
- nota pe activitatea de laborator: calitatea programelor, documentaţii etc. 60%;
- teste scurte, bonus soluţii deosebite etc. 10%.


Cerintele cursului sunt postate la:
http://www.cs.ubbcluj.ro/~florin/PDPJ
Legaturi: Syllabus-urile tuturor disciplinelor
Versiunea in limba engleza a acestei discipline
Versiunea in format rtf a acestei discipline