Info Esame [Pecchia]

Rebdiluca

Membro TOP
Utente Premium
19 Settembre 2015
54
43
18
- Esame: Programmazione 2, Antonio Pecchia

- Tempo impiegato per la preparazione: Non ho seguito il corso, ma avendo un po' di ricordi da Sistemi Operativi ho impiegato circa 15-16 giorni tra scritto e orale.

- Traccia e/o domande ricevute all'esame: Ho partecipato all'appello del 10-07-2018 e la traccia scritta riguardava JMS (dominio point-to-point) e Java RMI. In pratica c'erano due Sensori che scrivevano su una coda i valori di temperatura (generati casualmente); un Collector implementava una receive asincrona e a ogni messaggio ricevuto creava un thread che contattava un LogService attraverso invocazione remota. Il LogService stampava a video e su file non più di 3 richieste concorrenti. Quelle che non riuscivano ad ottenere subito un permesso sul semaforo terminavano con esito false.
All'orale ho ricevuto le seguenti domande (che servono come spunto di discussione, più che altro):
1. Stati dei thread;
2. Pattern AbstractFactory (scopo e class diagram);
3. Funzionamento del lato server in Java RMI.

- Libri e appunti utilizzati: slide del corso, materiale fornito dal prof, tracce svolte scaricate dal forum.

- Eventuali difficoltà riscontrate e/o osservazioni personali: Non ho mai visto un prof più preciso di Pecchia. Mi sono chiesto più volte durante la giornata se fosse un robot o cose del genere. Questo però significa anche che l'esame può durare un tempo indefinito. Ad esempio, ho iniziato la prova scritta alle 9, è stata corretta alle 14.30 e ho fatto l'orale alle 16. Nonostante questo, un altro gruppo di ragazzi ha fatto l'orale il giorno dopo.
Per quanto riguarda la parte scritta, non ci sono particolari difficoltà, basta capire le varie tipologie di traccia che possono uscire, che sono sostanzialmente quelle presenti nel suo materiale didattico, ovvero:
1. Proxy-Skeleton;
2. Java RMI;
3. JMS (dominio point-to-point o pub-sub);
4. Proxy-Skeleton + Java RMI;
5. Java RMI + JMS.
Il tempo a disposizione per lo scritto è di due ore, ma risulta un tempo più che sufficiente se ci si esercita su tutte le tipologie, alla fine sono sempre le stesse operazioni da fare. La correzione avviene alla fine: il prof chiama uno alla volta i ragazzi in laboratorio e discutono il compito e ne testano il funzionamento. Il voto massimo dello scritto è 28.

Per quanto riguarda l'orale, il prof fa tre domande, ma in generale chiede di tutto, anche in modo dettagliato: a partire da esempi sul polimorfismo in Java ai parametri passati nella creazione di una Session. Le domande sono così distribuite: una sulla prima parte del corso, cioè relativa alla programmazione Java e la programmazione concorrente; una sulla seconda parte, quindi design pattern e pattern architetturali (un class diagram lo chiede quasi quasi sempre, spesso AbstractFactory e Decorator per i loro collegamenti rispettivamente con JMS e I/O in Java); un'altra sull'ultima parte del corso, quella riguardante i Middleware. A proposito di questa, spesso chiede Java RMI e MOM, ma anche RPC per il funzionamento del port mapper (richiestissimo). A ogni domanda il prof fa +1 o -1 a seconda che la risposta lo soddisfi oppure no. Per questo consiglio di non trascurarlo.

Il prof è una persona molto tranquilla, non si arrabbia ma ci resta male quando qualcuno non sa rispondere all'orale. Consigliatissimo come esame a scelta.
Nota
: che io sappia, CORBA non è mai stato chiesto.
 

Seguici su Facebook