- *
POO - Programmazione Orientata agli Oggetti
Nozioni di base: moduli interagenti, messaggi e metodi, responsabilita', classi e istanze, gerarchie di classi e ereditarieta', overloading e overriding, eccezioni.
- *
PSA - Problem Solving e Algoritmi
Progettazione orientata agli oggetti: identificazione delle componenti e definizione delle responsabilita'; definizione del comportamento e delle interazioni fra moduli; specifica dell'interfaccia; concetto di stato.
- *
POO - Programmazione Orientata agli Oggetti
Benefici della programmazione orientata agli oggetti: incapsulamento delle informazioni, maggiore affidabilita' e potenzialita' di riutilizzo del codice, condivisione di codice, polimorfismo, rapidita' di prototipazione.
- *
POO - Programmazione Orientata agli Oggetti
Ereditarieta': sottoclassi, tipi e compatibilita' per sostituzione. Specializzazione e altre forme di ereditarieta'. Selezione dinamica dei metodi. Confronto fra ereditarieta' e aggregazione. Classi nidificate. Polimorfismo e variabili polimorfe.
- *
PSA - Problem Solving e Algoritmi
Design patterns: composite, decorator, factory method, flyweight, observer, prototype, proxy, strategy.
- *
PSA - Problem Solving e Algoritmi
Paradigma model-vew-controller e applicazioni al disaccoppiamento dell'interfaccia grafica dalla logica algoritmica.