fişa disciplinei
1. Date despre program
1.1 Instituţia de învăţământ superior	Universitatea Babes-Bolyai Cluj-Napoca	
1.2 Facultatea	Facultatea de Matematica si Informatica	
1.3 Departamentul	Departamentul de Informatică	
1.4 Domeniul de studii	Ştiinţa calculatoarelor	
1.5 Ciclul de studii	Licenţă	
1.6 Programul de studiu / Calificarea	Ingineria informaţiilor	

2. Date despre disciplină
2.1 Denumirea disciplinei	Medii de proiectare şi programare	
2.2 Titularul activităţilor de curs	Lect.univ.dr. Vasile Cioban	
2.3 Titularul activităţilor de seminar	Lect.univ.dr. Vasile Cioban	
2.4 Anul de
      studiu	3	2.5 Semestrul	6	2.6. Tipul de
       evaluare	E	2.7 Regimul
      disciplinei	Obligatorie	

3. Timpul total estimat (ore pe semestru al activităţilor didactice)
3.1 Număr de ore pe săptămână	4	Din care: 3.2 curs	2	3.3 seminar/laborator	2	
3.4 Total ore din planul de învăţământ	56	Din care: 3.5 curs	28	3.6 seminar/laborator	28	
Distribuţia fondului de timp:	ore	
Studiul după manual, suport de curs, bibliografie şi notiţe	20	
Documentare suplimentară în bibliotecă, pe platformele electronice de specialitate şi pe teren	14	
Pregătire seminarii/laboratoare, teme, referate, portofolii şi eseuri	30	
Tutoriat	10	
Examinări 	20	
Alte activităţi: ..................		
3.7 Total ore studiu individual	     94	
3.8 Total ore pe semestru	   150	
3.9 Numărul de credite	     6	

4. Precondiţii (acolo unde este cazul)
4.1 de curriculum	•		
4.2 de competenţe	•		

5. Condiţii (acolo unde este cazul)
5.1 De desfăşurare a 
      cursului	•	Proiector 	
5.2	De desfăşurare a 
     seminarului/laboratorului	•	Laborator cu staţii ce au instalat Microsoft.Net 2005/2008/2010	

6. Competenţele specifice acumulate
Competenţe profesionale	•	Cunoşterea platformei .NET
•	Deprinderi specifice de programare în limbajul C#;
•	Insuşirea unor şabloane în ceea ce priveşte structurarea aplicaţiilor client-server şi web;
•	Insuşirea unor cunoştiinte de bază despre integrarea aplicaţiilor prin transmitere de mesaje;
•	Insuşirea unor părţi din bibliotecile .NET şi Java cu ajutorul cărora se pot defini aplicaţii de aceste tipuri.
	
Competenţe transversale	•	Consolidarea deprinderilor de analiza şi proiectare a sistemelor soft prin aplicarea acestor deprinderi asupra tipurilor de aplicaţii client-server şi web
•	Integrarea cunştiinţelor de analiză şi proiectare cu plaforma .Net

7. Obiectivele disciplinei (reieşind din grila competenţelor acumulate)
7.1 Obiectivul general al disciplinei	•	Consolidarea deprinderilor de analiza si proiectare a sistemelor soft prin aplicarea acestor deprinderi asupra tipurilor de aplicatii client-server si web.	
7.2 Obiectivele specifice

	•	Cunoşterea platformei .NET;
•	Deprinderi specifice de programare în limbajul C#;
•	Insuşirea unor şabloane în ceea ce priveşte structurarea aplicaţiilor client-server şi web.

8. Conţinuturi
8.1 Curs	Metode de predare	Observaţii	
1. Elemente de baza .NET si C#  (1 curs Săpt.1)
- platforma .NET: prezentare comparativă cu platforma Java;
- limbajul C#: prezentare comparativă cu limbajul Java;	Expunerea, exemplificarea, studiul de caz.		
2. Biblioteca de clase .NET  (1 curs, Săpt.2)
- colectii,  intrari-iesiri;
- delegari, evenimente;
- interfeţe grafice utilizator;	Expunerea, exemplificarea, studiul de caz.		
3. Reflectie (1 curs, Sapt.3)
- reflectie în Java şi .NET;
- încărcare dinamică a claselor Java; 
- legarea întârziată a tipurilor .NET şi încărcare dinamică a executabilelor
- aplicaţii ale reflecţiei: persistenţa, fabrica abstractă de obiecte, dependenţa de interfeţe şi posibilitatea înlocuirii dinamice a implementarilor	Expunerea, exemplificarea, studiul de caz.		
4. Aplicatii client-server bazate pe comunicare TCP
    (1 curs, Săpt.4)
- comunicarea  între aplicaţii folosind TCP;
- modelarea aplicatiilor client-server ce folosesc comunicare TCP
- crearea şi lansarea firelor de execuţie în Java şi .NET
- aplicaţii client Java şi C# 
- aplicatii server Java şi C#
	Expunerea, exemplificarea, studiul de caz.		
5. Aplicatii client-server bazate pe apelul metodelor la 
     distanţă  (1 curs, Săpt.5)
- model general: interfaţa la distanţă, registru (de servicii), canal de comunicare, obiect la distanţă, obiect înlocuitor
- apelul metodelor la distanţă pe platforma Java - pachetul java.rmi
- obiecte aflate la distanţă pe platforma .NET - System.Runtime.Remoting	Expunerea, exemplificarea, studiul de caz.		
6. Componente de acces la baze de date (1 curs 
    Săpt.6)
- tabele .NET pentru memorarea datelor - System.Data;
- mulţimi rezultat Java;
- conexiuni la baze de date şi implementări ale acestora;	Expunerea, exemplificarea, studiul de caz.		
7. Servicii şi surse de date tabelare (1 curs Săpt.7)
- surse de date cu organizare tabelară;
- relaţia între surse tabelare şi servicii;
- obiecte de transfer a datelor între aplicaţii	Expunerea, exemplificarea, studiul de caz.		
8. Modele obiectuale si baze de date relationale (1 curs Săpt.8)
- corespondenţa între diagrame de clase şi tabele relaţionale;
- independenţa între model şi baze de date prin obiecte de corespondenţă (mappers);
- tranzacţii şi încărcare întârziată;	Expunerea, exemplificarea, studiul de caz.		
9.  Servere de aplicaţii (1 curs Săpt.9)
- sisteme pe mai multe nivele: aplicatie client - aplicaţie server - server baza de date ;
- structura interna a serverelor de aplicaţii;
- accesul concurent al aplicaţiilor client şi consistenţa datelor;	Expunerea, exemplificarea, studiul de caz.		
10. Prelucrarea documente XML (1 curs Săpt.10)
- limbajul XML şi documente XML
- tipul documentelor XML
- model obiectual pentru documente (DOM)	Expunerea, exemplificarea, studiul de caz.		
11. Aplicaţii ale documentelor XML (1 curs Săpt.11)
- parcurgerea secventiala a documentelor XML (SAX) - javax.xml si System.Xml
- implementari ale modelului DOM - javax.xml si System.Xml
- mesaje XML transmise intre aplicatii
- apelul metodelor la distanţă între aplicaţii situate pe platforme diferite	Expunerea, exemplificarea, studiul de caz.		
12. Aplicaţii WEB (1 curs Săpt.12)
- sisteme pe mai multe nivele: navigator - server web - server aplicaţie - server baza de date
- structura unui server web
- sabloane pentru aplicaţii Web	Expunerea, exemplificarea, studiul de caz.		
13. Aplicaţii WEB (continuare, 1 curs Săpt.13)
- sisteme pe mai multe nivele: navigator - server web - server aplicaţie - server baza de date
- structura unui server web
- sabloane pentru aplicaţii Web	Expunerea, exemplificarea, studiul de caz.		
14. Sinteza proiectării şi programării sub .NET
 (1 curs Săpt.14)
	Expunerea, exemplificarea, 
sintetizarea		
Bibliografie
1. Eckel, B., Thinking in C#, MindView Inc, 2004.
2. Larman, C.: Applying UML and Design Patterns: An Introduction to OO Analysis and Design and Unified Process, Berlin, Prentice Hall, 2002.
3. Fowler, M., Patterns of Enterprise Application Architecture, Addison-Wesley, 2002.
4. Hohpe, G., Woolf, B., Enterprise integration patterns, Addison-Wesley, 2003.
5. ***, Microsoft Developer Network, Microsoft Inc., http://msdn.microsoft.com/
6. ***, The Java Tutorial, SUN Microsystems, Inc, 2004. http://java.sun.com/docs/books/tutorial/index.html
7. Eckel, B., Thinking in Java, 4th edition, Prentice Hall, 2006.
8. Sassu L. Visual C#, curs în format electronic.
9. Cioban Vasile, notiţe de curs în format electronic (www.cs.ubbcluj.ro/~vcioban).
	
8.2 Laborator	Metode de predare	Observaţii	
1. Elemente de baza .NET si C# (1 lab, Săpt.1)	Dialogul, dezbaterea, studiul de caz, exemplificarea. 		
2. Biblioteca de clase .NET  (1 lab, Săpt.2  – tema 1)
	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
3. Reflectie (1 lab, Săpt.3  –  tema 2)
  - notare Tema 1	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
4. Aplicatii client-server bazate pe comunicare TCP  (1 lab, Săpt.4)
	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
5. Aplicaţii client-server bazate pe apelul metodelor la distanţă  (1 lab, Săpt.5 – Tema3)
  - notare Tema 2	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
6. Componente de acces la baze de date (1 lab,
     Săpt.6 – Tema 4, proiect de dificultate medie)
	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
7. Servicii şi surse de date tabelare (1 lab Săpt.7)
 
 - notare Tema 3	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
8. Modele obiectuale şi baze de  date relaţionale
    (1 lab. Săpt.8)	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
9. Servere de aplicaţii (1 lab, Săpt.9)
	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
10. Prelucrarea documente XML  (1 lab, Săpt.10)
	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
11. Aplicatii ale documentelor XML (1 lab, Săpt 11)
	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
12. Aplicatii WEB (1 lab, Săpt.12)

	Dialogul, dezbaterea, studiul de caz, exemplificarea.		
13. Proiectul Tema 4 (2 lab, Săpt.13 şi 14)
  - notare proiect 	Sintetizarea,
verificarea		
Bibliografie	
1. Eckel, B., Thinking in C#, MindView Inc, 2004.
2. Sassu L. Visual C#, curs în format electronic.
3. Ben Albahari, Peter Drayton, and Brad Merrill, C# Essential, format electronic
4. Cioban Vasile, exemple de proiecte în format electronic (www.cs.ubbcluj.ro/~vcioban)

9. Coroborarea conţinuturilor disciplinei cu aşteptările reprezentanţilor comunităţii epistemice, asociaţiilor profesionale şi angajatori reprezentativi din domeniul aferent programului
•	Cursul există în toate facultăţile de profil importante din tară şi străinătate;
•	Utilizarea mediilor de proiectare şi programare sunt considerate ca şi cunoştiinţe de bază de toate companiile de software serioase.

10. Evaluare
Tip activitate	10.1 Criterii de evaluare	10.2 metode de evaluare	10.3 Pondere din
         nota finală	
10.4 Curs	- să ştie să aplice conceptele
   cursului	        Examen  practic	          50%	
	- rezolvarea de probleme			
10.5 Seminar/laborator	-să cunoscă mediile 
  prezentate în curs 	         Media temelor	          50%	
	-să  rezolve problemele date 
  ca tema			
10.6 Standard minim de performanţă	
•	 pentru nota finală trebuie, studentul trebuie să ia nota 5 şi la examenul practic şi la fiecare temă de laborator (apoi se face media la laborator)

	

Data completării		Semnătura titularului de curs		Semnătura titularului de seminar
25.09.2012			lect.univ.dr Vasile Cioban		lect.univ.dr Vasile Cioban

Data avizării în departament			               Semnătura directorului de departament	
...........................................						…............................