Computing systems 22008/09
This course explains advanced techniques for object oriented programming and software design.
News
-
Computing systems 2 project
The project textis available. Students should send via e-mail their source code and take an appointment.
-
Festivity of June 2nd
The class of June 2nd of Computing systems 2 will be held on June 3rd at 14:30 in the LID laboratory.
Course schedule
Lectures will take place at the Mathematics department, according to the following schedule:
| Day | Hour | Place |
|---|---|---|
| Tuesday | 14:30 - 16:30 | LID |
| Thursday | 14:30 - 17:00 | aula 5 |
Any change to the schedule will be announced in class and published in paragraph News of this page.
Office hours
By appointment, room 5015 of the Computer Science Department.
It is possible contact the teacher by e-mail, taking care to read in advance the guide prepared by Prof. Sebastiano Vigna and clearly specifying in the message the course name and the academic year. In particular, students are encouraged to always use their academic address (i.e. based on the domain studenti.unimi.it) signing with name and student ID number and recalling that the response time may vary depending on the teacher commitments.
Course material
The part on design patterns is based on the book: Partha Kuchana, Software Architecture Design Patterns in Java, Auerbach Publications (ISBN: 0849321425).
The part on unit tests is based on the tutorial on Java.net.
The part on the Java Collections Framework is based on the tutorial from Sun.
The part on introspection is based on the tutorial from Sun.
The part on concurrent programming is based on the tutorial from Sun.
The part on SWT is based on the tutorials about basic widgets and layout managers from the University of Manitoba.
The part on MVC is based on the initial part of Building Graphical User Interfaces with the MVC Pattern, although the code shown in class implements the same examples using different techniques and exploiting the SWT library. The used widgets are explained in the tutorial about advanced widgets from the University of Manitoba.
The part on serialization is based on the tutorial from Sun.
The part of generics is based on the basic and advanced tutorials from Sun.
The part on networks programming is based on the first three sections of the tutorial from Sun.
The part on HTML document analysis is based on the tutorial from Sun.
The part on regular expression is based on the tutorial from Sun.
Syllabus
The course explains the topics listed in the lecture calendar, covering the textbook contents in chapters 2, 10-20, 22-26, 29-36, as well as in the tutorials listed in section Course material.
Lectures calendar
| Lecture | Date | Topic | Material |
|---|---|---|---|
| l00 | Introduction to the lab | ||
| L01 | 05/03/2009 | Creational patterns | |
| l01 | 10/03/2009 | Creational patterns | |
| L02 | 12/03/2009 | Input/output and structural patterns | |
| l02 | 17/03/2009 | Input/output and structural patterns | |
| L03 | 19/03/2009 | Collections and behavioural patterns | |
| l03 | 24/03/2009 | Collections and behavioural patterns | |
| L04 | 26/03/2009 | Reflection and proxy objects | |
| l04 | 31/03/2009 | Reflection and proxy objects | |
| L05 | 02/04/2009 | Composite, interpreter and visitor | |
| l05 | 07/04/2009 | Composite, interpreter and visitor | |
| L06 | 16/04/2009 | Concurrent programming | |
| l06 | 21/04/2009 | Concurrent programming | |
| L07 | 23/04/2009 | Graphical interfaces | |
| l07 | 28/04/2009 | Graphical interfaces | |
| L08 | 30/04/2009 | Model-View-Controller | |
| l08 | 05/05/2009 | Model-View-Controller | |
| L09 | 07/05/2009 | Object serialization | |
| l09 | 12/05/2009 | Object serialization | |
| L10 | 14/05/2009 | Generics | |
| l10 | 19/05/2009 | Generics | |
| L11 | 21/05/2009 | Network programming | |
| l11 | 26/05/2009 | Network programming | |
| L12 | 28/05/2009 | Network programming and Web page analysis | |
| l12 | 03/06/2009 | Network programming and Web page analysis |
