| Politecnico di Torino | |||||||||||||||||
| Anno Accademico 2015/16 | |||||||||||||||||
| 02JEYLM, 02JEYLJ, 02JEYOA Object oriented programming |
|||||||||||||||||
|
Corso di Laurea in Ingegneria Informatica (Computer Engineering) - Torino Corso di Laurea in Ingegneria Delle Telecomunicazioni (Telecommunications Engineering) - Torino Corso di Laurea in Ingegneria Informatica - Torino |
|||||||||||||||||
|
|||||||||||||||||
|
|||||||||||||||||
|
Presentazione
This is a mandatory course for the degrees Information Technology Engineering and Communication. Its goal is to complete the preparation of students about programming, by teaching the object-oriented paradigm, and a programming language supporting it.
|
|
Risultati di apprendimento attesi
Knowledge acquired: the object oriented programming paradigm in terms of classes, objects, attributes, behaviors, message exchange, inheritance, polymorphism, exception handling; the support to these concepts provided by a programming language (Java).
Skills acquired: ability to understand a programming problem of small/medium size (10- 20 classes), analyze it, solve it with: (1) the definition (or the selection from a library) of classes and related functions and attributes, (2) the detailed design of algorithms in each function of each class, (3) the implementation and testing of classes and functions in Java, (4) the ability to use Java and its development and execution environments. |
|
Prerequisiti / Conoscenze pregresse
Analysis of simple problems and definition of the algorithms for their solution.
Basic programming constructs (types, variables and constants, decisions, loops, procedures and parameter passing) Fundamental algorithms (sorting, searching) and data structures (arrays, linked list, tree, graph) |
|
Programma
Introduction (0.5 CFU)
- Object-oriented programming - Java as a programming language: source code and bytecode. - Compiler, virtual machine, development environments. OOP basics (2.5 CFU) - Classes, attributes and methods - Overloading - Objects, constructors and parameters - Package - Scope Inheritance (1 CFU) - Inheritance, polymorphism and dynamic binding - Abstract classes, interfaces System library (2 CFU) - Collections framework - Exceptions - IO classes - Graphics, Swing. |
|
Organizzazione dell'insegnamento
This course will include computer lab sessions that include both specific exercises to further explore theoretical parts and the development of software projects.
|
|
Testi richiesti o raccomandati: letture, dispense, altro materiale didattico
James Gosling, Ken Arnold and David Holmes, The Java Programming Language, 4th Edition, Pearson
- Bruce Eckel, Thinking in Java, 3rd edition, Prentice Hall - Materials provided by the teacher |
|
Criteri, regole e procedure per l'esame
The exam assignment consists in the development of a Java program, in the lab by means of a development environment. The grade is assigned according to the quality of the software measured in terms of functional correctness, design decisions, and programming style.
The exam will last approximatively 2 hours |
| Orario delle lezioni |
| Statistiche superamento esami |
|
|