Metode evoluate de programare | Advanced programming methods |
trul |
|||||
(Mathematics-Computer Science) |
|||||
(Applied Mathematics) |
|||||
(College of Computer Technology) |
|||||
(Mathematics Economics) |
|||||
(Computer Science) |
Cadre didactice indrumatoare | Teaching Staff in Charge |
Lect. DARVAY Zsolt, darvay@cs.ubbcluj.ro Lect. LAZĂR Ioan, ilazar@cs.ubbcluj.ro |
Obiective | Aims |
Insusirea metodelor de abstractizare a datelor si ale programarii orientate obiect. |
Acquisition of the methods of data abstractisation and object oriented programming. |
1. Limbajul Java
Elemente de baza ale limbajului Java. Prezentare comparativa Java - C++ Construirea unei biblioteci software: clase, interfete si pachete Contracte (specificarea functiilor) si tratarea exceptiilor 2. Analiza si proiectare orientata pe obiecte Elemente de baza ale limbajelor de modelare Limbajul UML Diagrame de clase Diagrame de interactiuni intre obiecte Procese/metode de dezvoltare orientate pe obiecte Procese liniare si iterative Planificarea dezvoltarii bazata pe cazuri de utilizare Arhitectura aplicatiilor pe doua nivele Principii de baza pentru alocarea responsabilitatilor/functiilor Sabloanele expert si creator Cuplare slaba si coeziune inalta Relatia dintre nivelele logic si prezentare al unei aplicatii (sablonul 'controller'/fatada) 3. Proiectarea unui cadru pentru aplicatii cu interfete grafice Realizarea ferestrelor si compunerea componentelor grafice Containere si elemente componente: fereastra, meniu, eticheta, cutie de text si buton Compunerea elementelor unui container (sablonul comunere) Desenarea unei componente (sabloanele adaptare si decorator) Abstractizarea comenzilor Sablonul comanda Sablonul callback Realizarea meniurilor Tratarea evenimentelor Sablonul observator Decuplarea emitatorului unui eveniment de receptorii evenimentului Folosirea bibliotecii JFC/Swing (Java Foundation Classes) Ferestre si meniuri Componente grafice de baza: eticheta, cutie de text, buton Liste 4. Structurarea nivelului logic al aplicatiilor Biblioteci de clase pentru structuri de date Sabloanele fabrica abstracta, 'metoda sablon' si iteratie Pachetul java.util Biblioteci de clase pentru intrari/iesiri Elemente de baza: pachetul java.io Obiecte serializabile Construirea unui cadru pentru obiecte persistente Intermediari (brokers, data access objects) pentru obiectele persistente Sablonul inlocuitor (proxy) Optimizarea procesului de incarcare a obiectelor Importanta decuplarii nivelelor prezentare, logic si date ale unei aplicatii Sablonul model-vedere-control (Model-View-Controller) |
1. B. Eckel, Thinking in Java, 2000, http;//www.mindview.net/
2. B. Eckel, Thinking in Patterns, 2001, http;//www.mindview.net/ 3. E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns - Elements of Reusable Object-Oriented Software, Addison-Wesley, Reading, Massachusets, 1994. 4. C. Larman, Applying UML and Design Patterns: An Introduction to OO Analysis and Design Prentice Hall, 2000 5. M. Priestley, Practical Object Oriented Design, McGraw-Hill, Cambridge, 1996. 6. Online Java Tutorial: http://www.develop.com/ 7. Java tutorial: http://java.sun.com/tutorial/ |
Evaluare | Assessment |
Forma de examinare finala este un examen, ce va avea o parte teoretica si o parte aplicativa.
Nota finala va fi formata din: A. Activitatea de laborator: 4p B. Lucrare scrisa: 3p C. Proba practica: 3p |
The final assessment method is an exam. There will be two parts:
a written part (consisting of a minicase study), and a practical part (consisting in a partial implementation of the minicase model). The final mark (on a ten points scale, one point by default) will be obtained as: A. Lab activity: 4p B. Written exam (on paper): 3p C. Practical exam (at computer): 3p |