Dipartimento di InformaticaUniversità degli Studi di Milano

Computing systems 22006/07

MSc in Applied Mathematics · MSc in Mathematics · University of Milan · Lectures are in Italian · 4 credits · 24 hours

Archived edition: this page is kept for reference, and some materials or links may no longer be available.

This course explains advanced techniques for object oriented programming and software design.

News

  1. Computing systems 2 project

    The project textis available.

  2. Beginning of the Computing systems 2 classes

    Classes will start on tuesday 27/ in the LID laboratory.

Course schedule

Lectures will take place at the Mathematics department, according to the following schedule:

Day Hour Place
Tuesday 13:30 - 16:30 LID
Thursday 13:30 - 15:30 aula 9

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 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.

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 27/02/2007 Introduction to the lab
L01 01/03/2007 Creational patterns
l01 06/03/2007 Creational patterns
L02 08/03/2007 Input/output and structural patterns
l02 13/03/2007 Input/output and structural patterns
L03 15/03/2007 Collections and behavioural patterns
l03 20/03/2007 Collections and behavioural patterns
L04 22/03/2007 Reflection and proxy objects
l04 27/03/2007 Reflection and proxy objects
L05 29/03/2007 Composite, interpreter and visitor
l05 03/04/2007 Composite, interpreter and visitor
L06 12/04/2007 Concurrent programming
l06 17/04/2007 Concurrent programming
L07 19/04/2007 Graphical interfaces
l07 24/04/2007 Graphical interfaces
L08 03/05/2007 Model-View-Controller
l08 08/05/2007 Model-View-Controller
L09 10/05/2007 Object serialization
l09 15/05/2007 Object serialization
L10 17/05/2007 Generics
l10 22/05/2007 Generics
L11 24/05/2007 Network programming
l11 29/05/2007 Network programming
L12 31/05/2007 Network programming and Web page analysis
l12 05/06/2007 Network programming and Web page analysis

Exam modalities

The exam consists in the implementation of an individual project, to be presented by appointment.