Dettagli sull'Insegnamento per l'A.A. 2014/2015
Nome:
Programmazione Ad Oggetti / Object Oriented Programming
Informazioni
Crediti:
: Laurea in Ingegneria dell'Informazione 6 CFU (b)
Erogazione:
Laurea in Ingegneria dell'Informazione 2nd anno curriculum Automatica Compulsory
Lingua:
Italiano
Prerequisiti
Lo studente deve avere nozioni base di linguaggi di programmazione e di architettua degli elaboratori.
Obiettivi
Il corso si propone di fornire i concetti fondamentali e problematiche d'uso dei linguaggi ad oggetti. Di questi verrà svolta una analisi teorica e approfondita l'applicazione pratica nell'ambito dei linguaggi C++ e Java.
Verrà utilizzata il linguaggio UML come notazione per la tecnologia ad oggetti.
Sillabo
- Concetti di base: fondamenti della tecnologia ad oggetti e introduzione alla programmazione in Java e in C++
- Il concetto di Oggetto: l'Incapsulamento, l'Occultamento delle informazioni e dell’implementazione. Attributi e metodi.
- Il concetto di Classe: classi come insiemi di oggetti e come modelli di oggetti
- Caratteristiche degli oggetti: l'Identità degli oggetti, la conservazione dello stato e lo scambio di messaggi.
- Relazioni tra classi: Associazione, relazione d'uso, aggregazione, e composizione.
- Ereditarietà: meccanismo di riuso del codice. Gerarchie di classi.
- Polimorfismo.
- Classi astratte e le Interfacce.
- Ulteriori concetti: Package, gestione dei file e gestione delle eccezioni.
- Programmazione: per ogni concetto introdotto sono presentati esempi di programmazione in Java e in C++
Descrittori di Dublino
Alla fine del corso, lo studente dovrebbe
-
To have solid knowledge of methods and techniques in Object Oriented Programming (OOP).
-
To understand the fundamental OOP concepts of Objects and their usage, Class design, Interfaces,
Relationships between Classes, Inheritance, Polymorphism. To applying acquired knowledge to Java and C++ programming.
-
To provide a description of a problem and to design a first solution by performing an analitical description of relevant entities and relationships in an application domain.
-
To demonstrate skill in OO design to propose and communicate solutions. To show skils in programming also through the use of tools like IDEs.
-
To exploite the acquired knowledge and abilities to solve problems in a larger variety of contexts. To demonstrate capacity for reading and understand other texts on related topics.
Testi di riferimento
- Cay S. Horstmann, Concetti di Informatica e Fondamenti di Java , Apogeo . 2010.
Modalità d'esame
Esme scritto e orale in un'unica prova
Aggiornamenti alla pagina del corso
Le informazioni sulle editioni passate di questo corso sono disponibili per i seguenti anni accademici:
Per leggere le informazioni correnti sul corso, se ancora erogato, consulta il catalogo corsi di ateneo.
Ultimo aggiornamento delle informazioni sul corso: 27 febbraio 2014, 17:50