Categorie
Winzipedia Uso dell'wiki |
DomandePrimoCompitinoInformatica3.DomandePrimoCompitino VersioniNascondi le modifiche minori - Mostra le modifiche Cancellate le linee 80-86:
http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30153#30153 Esercizio di riscrittura programma C-Cyclone: http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30193#30193 [/Vinz] Modificate le linee 83-93: da:
http://www.beandrea.com/vinz.com/info3/info3. Errata corrige: http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30107#30107 (alcuni pezzi mancano... lack of time :D) Esempio di codice generico in Java (classi e metodi) http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30154#30154 Esempio di codice generico con vincoli sui sottotipi in Java http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30160#30160 [/Andrea] a:
http://www.beandrea.com/vinz.com/info3/info3.pdf Modificata la linea 31: da:
!! a:
!! le collezioni fino a Java 1.4 non erano type-safe? Come si ovviato? Modificata la linea 43: da:
a:
!! Differenza tra single-dispatch e multiple-dispatch Modificate le linee 46-47: da:
x->foo(y); a:
x - > foo(y); Modificata la linea 57: da:
Approfondimento sui pattern segnalato da Andrea a:
Approfondimento sui pattern segnalato da Andrea: Modificate le linee 13-100: da:
a:
!! Definire l'incapsulamento !! Spiegare il binding dinamico !! Spiegare la differenza fra overloading, overriding Entrambi sono meccanismi di polimorfismo, ovvero di associazione di comportamenti differenti allo stesso nome di metodo; la scelta del corretto comportamento avviene attraverso regole automatiche. !! Pattern Singleton: cosa serve e come funziona? !! Pattern Visitor: cosa serve e come funziona? Il pattern Visitor serve in tutti quei contesti in cui si deve esplorare una collezione di oggetti eterogenei (comprese sottocollezioni). Visto che gli oggetti presentano interfaccie diverse, serve un meccanismo che permetta di interagire con essi in modo semplice e unificato. Per fare questo, si istruisce un visitatore a farsi accettare dagli elementi e a visitarli (implementando l'interfaccia visitator), e si istruiscono gli elementi ad accettare le visite (implementando l'interfaccia visitable). Durante la visita vengono eseguite le operazioni sugli oggetti della collezione visitati. 9) Differenza tra single-dispatch e multiple-dispatch Entrambe sono due tecniche per la scelta della segnatura da eseguire a run-time; si consideri quindi una chiamata generica: x->foo(y); Con un riferimento x chiamo il metodo foo passando y come argomento. In casi di single-dispatch, durante l'esecuzione viene scelto quale metodo eseguire basandosi unicamente sul tipo di x. Nel caso di multiple-dispatch, il metodo da eseguire viene scelto anche vagliando i tipi dei parametri. !! Definizione di tail-recursion Una funzione f fa una chiamata "tail" a g, se restituisce il valore della funzione g. Questo permette di ottimizzare evitando di far crescere lo stack, in quanto nel momento della chiamata a g, il blocco di f viene tolto dalla pila. [Vinz] Approfondimento sui pattern segnalato da Andrea nel topic pubblico: http://www.cim.polito.it/people/guidi/DesignPatternsJava.htm Compitini degli anni passati, grazie a Giorgio. http://www.vincenzomanzoni.com/downloads/Info3/Compitini_Info3.zip Riassunto del capitolo sullo scope, grazie a Estefan http://www.vincenzomanzoni.com/downloads/Info3/Scope.pdf Dispensa sui Generics in Java 5, grazie a abaddon http://www.elet.polimi.it/upload/ghezzi/_PRIVATE/Generics_Paper.pdf Riassunto della prima parte del programma di Info 3, grazie a Giorgio http://www.vincenzomanzoni.com/downloads/Info3/Riassunti_Giorgio_I_parte.zip Riassunto sui tipi e la programmazione generica, grazie a Estefan http://www.vincenzomanzoni.com/downloads/Info3/type.pdf Riassunto su Cyclone, grazie a Estefan http://www.vincenzomanzoni.com/downloads/Info3/Cyclone.pdf Riassunto sui Design Pattern, grazie a Estefan http://www.vincenzomanzoni.com/downloads/Info3/dpattern.pdf Soluzione di un esercizio di type checking in Java: http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30153#30153 Esercizio di riscrittura programma C-Cyclone: http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30193#30193 [/Vinz] [Andrea] Riassunto "approssimativo" della prima parte di Andrea http://www.beandrea.com/vinz.com/info3/info3.pdf Errata corrige: http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30107#30107 (alcuni pezzi mancano... lack of time :D) Esempio di codice generico in Java (classi e metodi) http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30154#30154 Esempio di codice generico con vincoli sui sottotipi in Java http://www.vincenzomanzoni.com/phpBB2/viewtopic.php?p=30160#30160 [/Andrea] Modificata la linea 13: da:
Da completare con le risposte di Tommy a:
%p bgcolor=#ffeeee%Da completare con le risposte di Tommy 06/05/2006 ore 17:00 CEST
di - /* Da completare */
Aggiunte le linee 12-13:
Da completare con le risposte di Tommy 06/05/2006 ore 15:35 CEST
di - /* Creazione della pagina e primo contributo*/
Aggiunte le linee 1-11:
Di seguito, alcune domande di teoria relative alla prima parte del programma di Informatica 3 dell'anno accademico 2005/06. !! Elencare i passi della progettazione object oriented e spiegare somigliane e differenze con l'approccio top-down I passi della progettazione Object Oriented (OO) sono quattro: # indentificare gli oggetti astraendoli; # identificare il comportamento dei singoli oggetti; # identificare le relazioni che ci sono tra oggetto e oggetto; # implementare gli oggetti. Con l'approccio top-down ha in comune il fatto che un compito viene portato a termine completando una serie di sotto compiti piccoli, ma oltre alle procedure vengono raffinati e modellati anche i dati, le operazioni del sistema e gli oggetti, dato che raggruppano dati e funzioni, rendono il raffinamento naturale ed efficace. |