|
Docente
|
CANTONE GIOVANNI
(programma)
Ingegneria dei requisiti. Introduzione alle discipline fondamentali dell'ingegneria software. Processo di sviluppo SW. Elementi su modello a cascata e su Rational Unified Process (RUP). OO Thinking. Modellazione software. UML-Use case. UML-Activity Diagram. Classi, oggetti, nascondimento dell’informazione. Class Diagram. Ereditarietà. Polimorfismo. Collegamento di metodi in Java (“binding”). Interfacce. Ereditarietà multipla fra interfacce in Java. Associazioni, aggregazioni e composizioni. Differenza con Ereditarietà. Implementazione delle associazioni. Dipendenze e loro tipi. Esercitazione UML e OOP in Java 1. Esercitazione UML e OOP in Java 2. Diagrammi di sequenza. Macchine a stati e rel. diagrammi UML. GoF ed elementi di implementazione in Java. Altri tipi di Pattern. Sottosistemi : Interfacce e Componenti. Eccezioni e loro modello di programmazione in Java. Metaclassi. Riflessività (Reflection) in Java. File Java. Serializzazione/Deserializzazione. Esempi su definizione e impiego File Java. Verifica e Validazione del Software. Testing con JUnit. Introduzione. Java : Linguaggio e Piattaforma. Piattaforme IEE. Programmazione Java di tutto quanto sopra. Programmazione concorrente e applicazioni web. Introduzione. Modelli di concorrenza. Processi pesanti e leggeri. Thread Java. Tipologie di codifica di thread in Java. Concorrenza in ambiente globale. Stati di thread Java. Tipi di monitor. Monitor Java. Lock implicito e uso di Synchronized in Java. Lock e Condition Java. Lock di lettura scrittura. Altri tipici problemi di concorrenza in ambiente globale e loro soluzione in Java. File Java. Impiego di pattern Boundary-Control-Entity, Model-View-Controller, Model-View-Presentation in applicazioni laptop e web. Eventi e loro gestione in Java. Grafica in Java con Swing. Java Bean. HTML e JSP. JSP ed esempi. Annotazioni Java. Elementi sullo sviluppo software in team e relativi strumenti (Git). Progetto del corso: assegnazione, discussione e sviluppo in classe di elementi di: Use case Modeling. Use case Realization. Analisi. Progettazione. Costruzione. Test.
 - Jim Arlow, Ile Neustadt: UML2 e Unified Process, Analisi e progettazione, McGraw-Hill, 2007. - Cay S. Horstmann and Gary Cornell Core Java Volume I--Fundamentals | Core Java, Volume II--Advanced Features, Prentice-Hall, 2012. - Trasparenze delle lezioni distribuite via ispw@lists.uniroma2.it e una piattaforma online (slides from the lessons are sent through such a course list and published through a distance course platform; one or more files are sent per each given lesson).
|