TECNICHE DI PROGRAMMAZIONE PER I SISTEMI DISTRIBUITI - canale 1

ING-INF/05 - 9 CFU - 2° semestre

Docente titolare dell'insegnamento

ORAZIO TOMARCHIO


Obiettivi formativi

- Conoscenza modelli architetturali applicazioni distribuite - Conoscenza sistemi ad oggetti distribuiti - Conoscenza delle architetture container-based. - Conoscenza middleware e framework di supporto ad applicazioni di livello enterprise - Conoscenza della piattaforma Java Enterprise Edition

Prerequisiti richiesti



Frequenza lezioni

Obbligatoria



Contenuti del corso

  1. Richiami su programmazione orientata agli oggetti
    • Programmazione orientata agli oggetti. Concetto di classe e oggetto. Ereditarietà, polimorfismo e information-hiding. Classi astratte ed interfacce. Collezioni e Generics. Stream. Gestione delle eccezioni. Ambienti integrati di sviluppo.
  2. Sistemi distribuiti: generalità e caratteristiche di base.
    • Metodologie e modelli architetturali per la progettazione di applicazioni di livello enterprise.
    • Evoluzione di modelli a componenti e loro integrazione con architetture distribuite.
    • Le architetture a livelli: livello di presentazione, di business logic e di integrazione, accesso ai dati.
  3. Sistemi ad oggetti distribuiti: la tecnologia Java RMI.
  4. Application Server e framework di supporto runtime ad applicazioni distribuite di livello enterprise
  5. Il modello a componenti Enterprise Java Beans EJB3.x
    • Context and Dependency Injection
    • Session bean stateless e stateful
    • Servizi di naming e directory (JNDI)
    • Messaging: il modello Java Message Service (JMS) e i Message Driven Bean
    • Persistenza : il modello JPA. Accesso e interazione con dati
    • Il modello di sicurezza in EJB
    • Servizi offerti dal contenitore
  6. Service Oriented Architectures
    • Il modello a “servizi”. Web services.


Testi di riferimento


Altro materiale didattico

Il materiale didattico è messo a disposizione sulla piattaforma di Ateneo Studium.UniCT



Verifica dell'apprendimento


MODALITÀ DI VERIFICA DELL'APPRENDIMENTO

L'esame consiste di

Elaborato pratico e prova orale finale cercheranno di valutare il livello di apprendimento raggiunto sia in termini di metodologie di progettazione architetturale e modelli, sia in termini di operatività implementativa in relazione alle principali tecnologie descritte e utilizzate nel corso.




Apri in formato Pdf English version