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 Informatica	
1.4 Domeniul de studii	Informatica	
1.5 Ciclul de studii	Licenta	
1.6 Programul de studiu / Calificarea	Informatica	

2. Date despre disciplină
2.1 Denumirea disciplinei	Fundamentele limbajelor de programare	
2.2 Titularul activităţilor de curs	Lect. Dr. Vancea Alexandru-Ioan	
2.3 Titularul activităţilor de seminar	Lect. Dr. Vancea Alexandru-Ioan	
2.4 Anul de studiu	2	2.5 Semestrul	4	2.6. Tipul de evaluare	C	2.7 Regimul disciplinei	Optional	

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

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	•		
5.2  De desfăşurare a seminarului/laboratorului	•	Laborator cu calculatoare	

6. Competenţele specifice acumulate
Competenţe profesionale	
•	Cunoasterea, intelegerea si folosirea conceptelor de baza ale informaticii	
Competenţe transversale	•	Abilitatea studentului de a aprofunda mult mai repede orice limbaj de programare in fata caruia va fi pus, deoarece acest proces se va face intotdeauna de acum inainte prin prisma conceptelor si mecanismelor general valabile la nivelul proiectarii si implementarii limbajelor de programare, intelese si retinute de-a lungul semestrului;	

7. Obiectivele disciplinei (reieşind din grila competenţelor acumulate)
7.1 Obiectivul general al disciplinei	•	Dobandirea de cunostinte asupra conceptelor generale si fundamentale relative la proiectarea si implementarea limbajelor de programare, in contrast cu invatarea detaliata a unuia sau doua limbaje fara a intelege pe deplin semnificatia conceptelor vehiculate;	
7.2 Obiectivele specifice

	•	Analiza critica a elementelor de limbaj dezvoltate pana in prezent cu accent pe o comparatie a avantajelor si dezavantajelor prezentate de fiecare; Dezvoltarea capabilitatilor decizionale si analitice ale studentilor, trasaturi care ii vor evidentia si defini intr-un mod avansat in raport cu un simplu programator; 
•	Ca obiectiv imediat se asteapta ca studentul sa fie capabil de a aprofunda mult mai repede orice limbaj de programare in fata caruia va fi pus, deoarece acest proces se va face intotdeauna de acum inainte prin prisma conceptelor si mecanismelor general valabile la nivelul proiectarii si implementarii limbajelor de programare, intelese si retinute de-a lungul semestrului;	

8. Conţinuturi
8.1 Curs	Metode de predare	Observaţii	
S1+S2. Evolutia si proiectarea limbajelor de programare. Paradigme de programare.
S3+S4. Traducerea si executia programelor . 
S5+S6. Variabile, expresii, instructiuni. Declaratii. Structuri de control. 
S7+S8  Tipuri de date si structuri de date. Echivalenta si compatibilitate de tip. Probleme de inconsistenta ale utilizarii tipurilor de data. 
S9  Vizibilitate si durata de viata. Determinarea statica si determinarea dinamica a domeniului de vizibilitate. Durata de viata a unei variabile. 
S10. Proceduri. Transmiterea parametrilor. 
S11. Genericitate. Efect secundar. Corutine. 
S12. Implementarea subprogramelor in limbaje fara structura de bloc si respectiv in limbaje cu structura de bloc. 
S13. Facilitati de tratare a exceptiilor in cadrul limbajelor de programare. 
S14. Paradigma programarii vizuale. Studii de caz: Visual Basic, Visual C++, Borland Delphi.	
Expunerea, conversaţia, dezbaterea, problematizarea,
descoperirea		

			

			

			
Bibliografie:

1. FRENTIU, M., PARV, B.: Elaborarea programelor: metode si tehnici moderne, ProMedia, Cluj-Napoca, 1994. 
2. GHEZZI, C., JAZAYERI, M.: Programming Language Concepts, John Wiley, 1972. 
3. HOROWITZ, E.: Fundamentals of Programming Languages, Springer, 1973. 
4. MACLENNAN, B.J.: Principles of Programming Languages: Design, Evaluation and Implementation, Holt, Rinehart and Winston, 1973. 
5. PARV, B., VANCEA, A.: Fundamentele limbajelor de programare, Fascicolele 1-2, Lito Univ. "Babes-Bolyai", 1992. 
6. PRATT, T.W.: Programming Languages: Design and Implementation, Prentice Hall, 1975 
7. SHAMMAS, N.: Object Oriented Programming with Turbo Pascal, Prentice-Hall, 1990 
7. VOSS, G.: Object-Oriented Programming: An Introduction, Osborne McGraw-Hill, 1991. 
9. PARV, B., VANCEA, A.: Fundamentele limbajelor de programare, Ed.Microinformatica, 1996. 
10. * * * - Reteaua Internet.

8.2 Laborator	

Metode de predare	

Observaţii	
Analiza unui limbaj de programare experimental: proiect de semestru pe echipe formate din 3-4 studenti (L1+L2+L3);
Facilitati de compilare separata si programarea multimodul. Elemente de nivel scazut în cadrul limbajelor de programare de nivel înalt (L4+L5);
Domeniu de vizibilitate, durata de viata, alocare (L6+L7); 
Implementarea tipurilor de data (studiu de caz: record cu variante si analiza mecanismului de aliere)  (L8+L9); 
Proceduri si implementarea metodelor de transmitere a parametrilor (L10+L11);
Paradigma programarii vizuale si tratarea exceptiilor (L12); 
Predarea proiectului si a temelor de laborator si evaluarea activitatii de semestru (L13+14);	
Dialogul, dezbaterea, studiul de caz, exemple, demonstratii

Proiecte practice		

Bibliografie:	

1. FRENTIU, M., PARV, B.: Elaborarea programelor: metode si tehnici moderne, ProMedia, Cluj-Napoca, 1994. 
2. GHEZZI, C., JAZAYERI, M.: Programming Language Concepts, John Wiley, 1972. 
3. HOROWITZ, E.: Fundamentals of Programming Languages, Springer, 1973. 
4. MACLENNAN, B.J.: Principles of Programming Languages: Design, Evaluation and Implementation, Holt, Rinehart and Winston, 1973. 
5. PARV, B., VANCEA, A.: Fundamentele limbajelor de programare, Fascicolele 1-2, Lito Univ. "Babes-Bolyai", 1992. 
6. PRATT, T.W.: Programming Languages: Design and Implementation, Prentice Hall, 1975 
7. SHAMMAS, N.: Object Oriented Programming with Turbo Pascal, Prentice-Hall, 1990 
7. VOSS, G.: Object-Oriented Programming: An Introduction, Osborne McGraw-Hill, 1991. 
9. PARV, B., VANCEA, A.: Fundamentele limbajelor de programare, Ed.Microinformatica, 1996. 
10. * * * - Reteaua Internet.	

9. Coroborarea conţinuturilor disciplinei cu aşteptările reprezentanţilor comunităţii epistemice, asociaţiilor profesionale şi angajatori reprezentativi din domeniul aferent programului

•	Acest curs exista in programul de studiu al tuturor universitatilor importante din Romania si strainatate
•	Acest curs asigura cunostintele de baza pe care orice programator trebuie sa la aiba

10. Evaluare
Tip activitate	10.1 Criterii de evaluare	10.2 metode de evaluare	10.3 Pondere din nota finală	
10.4 Curs	- cunoasterea principiilor de baza ale domeniului
	Examen scris	60%	
10.5 Seminar/laborator	- aplicarea acestor concepte in rezolvarea de probleme
	Activitate laborator
	20%	
		Evaluare proiect semestru
	20%	
10.6 Standard minim de performanţă	
•	 Pentru promovare este necesara obtinerea notei minim 5 la examenul scris, proiect semestru si activitate de laborator

Data completării		  Titular de curs		               Titular de seminar
20.06.2012		Lect. Dr. Vancea Alexandru-Ioan		Lect. Dr. Vancea Alexandru-Ioan

Data avizării în departament			                          Director de departament	
...........................................					   …............................	......