Advanced programming methods |
ter |
|||||
Teaching Staff in Charge |
Lect. LAZAR Ioan, ilazar@cs.ubbcluj.ro Lect. NICULESCU Virginia, Ph.D., vniculescu@cs.ubbcluj.ro Lect. DARVAY Zsolt, Ph.D., darvay@cs.ubbcluj.ro |
Aims |
Acquisition of the methods of data abstractisation and object oriented programming. |
Content |
1. Java Language
Fundamentals of the Java programming language Class libraries: Java classes, interfaces and packages Design by contract and exceptions handling 2. Object Oriented Analysis and Design Unified Modelling Language (UML) Use cases Static models Dynamic models Object Oriented Development Processes Linear and iterative processes Development planning based on use cases Two tier applications General Responsibility Assignement Software Patterns (GRASP) Expert and creator design patterns Low coupling and high cohesion Controller 3. Designing a Framework for Applications with Graphical User Interfaces Windows and graphical components Containers and elements: window, menu, label, text box, and button Composite design pattern Drawing: adaptor and decorater patterns Abstract commands Callback and command patterns Menus implementations Event Handling Observer pattern Decouplig the sender and the receiver of an event Model-View-Controller pattern Java Foundation Classes (JFC/Swing) Windows and menus Graphical components: labels, text boxes, and buttons Lists 4. Business Logic Layer Class Libraries for Data Structures Abstract factory, template method, and iterator design patterns java.util package Input/output class libraries java.io package Serializable objects Building a persistent frameworks Brokers for persistent objects Virtual proxy pattern Complex object instantiation Decoupling presentation and logic layers Model-View-Controller pattern |
References |
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/ |
Assessment |
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 |