Politecnico di Torino
Politecnico di Torino
Politecnico di Torino
Academic Year 2016/17
Object-oriented programming
1st degree and Bachelor-level of the Bologna process in Computer Engineering - Torino
1st degree and Bachelor-level of the Bologna process in Mathematics For Engineering - Torino
1st degree and Bachelor-level of the Bologna process in Cinema And Media Engineering - Torino
Teacher Status SSD Les Ex Lab Tut Years teaching
Rivoira Silvano ORARIO RICEVIMENTO     51 20 9 0 12
Torchiano Marco ORARIO RICEVIMENTO AC ING-INF/05 51 20 9 0 7
SSD CFU Activities Area context
ING-INF/05 8 F - Altre attivitΰ (art. 10) Abilitΰ informatiche e telematiche
04JEY; 02JEY; 05CBI
Subject fundamentals
This course presents the object-oriented paradigm for software development on the basis of the java programming language.
Expected learning outcomes
Students will learn the fundamental notions of object-oriented programming (classes, objects, attributes, methods, inheritance, and interfaces) and the main features of the java language.
The skills to be acquired include the mastery of java, the ability to analyze software requirements so as to produce a suitable object-oriented design, and the ability to implement and test java classes with the eclipse development environment.
Prerequisites / Assumed knowledge
The knowledge of basic programming constructs (types and data structures, control statements, functions and function calls) and of sorting and searching algorithms is a prerequisite.
Basic features (1 credit)
• Object-oriented programming, java, eclipse
• Classes, attributes, methods and constructors, objects
• Packages and visibility rules
• Strings, wrapper classes
• Arrays

Inheritance and interfaces (2 credits)
• Inheritance
• Abstract classes, interfaces
• Functional interfaces, lambda expressions
• Exceptions
• Generic types

Structures (3 credits)
• Collections: sets, lists, maps
• Streams
• Files
• Dates
• Threads
• Graphical interfaces, Swing, JavaFX

Software Engineering principles (2 credits)
• Software life cycle
• Requirements analysis
• Software design
• Configuration management
• Testing with JUnit
Delivery modes
In addition to the lectures, students will also be involved in laboratory exercises in which they will implement some simple case studies by writing java programs with the eclipse environment.
Texts, readings, handouts and other learning resources
A recommended reading is: K. Arnold, J. Gosling, D. Holmes, Il linguaggio Java – Manuale ufficiale. Pearson, 2006.
In addition, lecture slides are available through the portal.
Assessment and grading criteria
The exam consists in writing a java program on the basis of the requirements provided. The grade depends on the number of requirements implemented, on design choices and coding style.

Programma definitivo per l'A.A.2016/17

© Politecnico di Torino
Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY
WCAG 2.0 (Level AA)