top of page

Linguaggi Di Programmazione Principi E Paradigmi.pdf



  • Il corso di programmazione si propone di illustrare lecaratteristiche principali dei linguaggi di programmazione e le lorostritture di implementazione. La strategia adottata nel corso prevedel'utilizzo di tecniche basate sulla semantica operazionale strutturatacome meccanismo per descrivere sia i paradigmi di programmazione chele strutture di implementazione. Infine, il corso si proponepresentare e discutere le tecniche per la programmazzione a oggetti(programmazione per contratti,programmazzione concorrente)esemplificate e sperimentate utilizzando il linguaggioJava. Il corso si articola attorno a due argomenti principali.Programmazione orientata ad oggetti. Il nucleo del linguaggio Java: classi, oggetti, ereditarieta', astrazioni sui dati (tecniche di progettazione, specifica e implementazione, tecniche di verifica),astrazione mediante gerarchie, polimorfismo a' la Java. Tecniche diprogrammazione concorrente (cenni).

  • Paradigni dei linguaggi di programmazione. Strutture a run time: ambiente, memoria, heap; blocchi, sottoprogrammi, records di attivazione, pila dei records di attivazione; oggetti;interpretazione, compilazione.Progettazione di interpreti in Ocaml.

  • La frequenza non e' obbligatoria ma e' fortemente consigliata. Il corso e' pensato ed organizzato per una frequenza attiva e continua.Materiale DidatticoPer la parte relativa alla tecniche di programmazione orientata agli oggetti iltesto di riferimento e': Object-Oriented: B. Liskov (with J. Guttag), Program Development in Java: Abstraction, +Specification and Object-Oriented design, Addison-Wesley, 2000

Note didattiche per la programmazione in Java: ProgrammingLanguages and Techniques, Zdancewic, Pierce, Weirich (2018) download .




Linguaggi Di Programmazione Principi E Paradigmi.pdf



  • In questa pagina troverete il diario delle lezioni e delle esercitazioni. Per ogni argomento svolto potrete trovare una breve descrizione e il materiale didattico relativo. Introduzione al corso. I linguaggi di programmazione: paradigmi e metodologie di programmazione Materiale presentato a lezione: [Lezione 1 -- pdf].

  • La transizione da C a Java: classi e oggetti Materiale presentato a lezione: [Da C a Java -- pdf]. Materiale presentato a lezione: [Il modello a oggetti e Java -- pdf]. Materiale presentato a lezione: [Un modello operazionale di Java -- pdf]. Cosa leggere per studiare e approfondire l'argomento: David Eck Java Notes

  • Cosa leggere per studiare e approfondire l'argomento: Capitolo 19, Capitolo 20, Capitolo 21 delle note didattiche download

  • Tipi statici, tipi dinamici e Dynamic Dispatch in Java Materiale presentato a lezione: [Dynamic Dispatth -- pdf]. Cosa leggere per studiare e approfondire l'argomento: Capitolo25 delle note didattiche download

  • Eccezioni in Java Materiale presentato a lezione: [Java Exception -- pdf]. Cosa leggere per studiare e approfondire l'argomento: Capitolo28 delle note didattiche download Cosa leggere per studiare e approfondire l'argomento: Capitolo 7 David Eck Java Notes Exception

  • Astrazioni Poliforme e tipi generici Materiale presentato a lezione: [Java Generics ] Cosa leggere per studiare e approfondire l'argomento: Articolo orginale di Bracha download Cosa leggere per studiare e approfondire l'argomento:

  • Astrazione procedurale: la specifica Materiale presentato a lezione: [Astrazione procedurale ] Cosa leggere per studiare e approfondire l'argomento: Capitolo5 B. Liskov (with J. Guttag), Program Development in Java: Abstraction, +Specification and Object-Oriented design

  • Astrazione sui dati. I tipi di dato astratti: la specifica Materiale presentato a lezione: [Astrazione dati ] Cosa leggere per studiare e approfondire l'argomento: Capitolo5 B. Liskov (with J. Guttag), Program Development in Java: Abstraction, +Specification and Object-Oriented design

  • Astrazione sui dati. I tipi di dato astratti: l'implementazione el'invariante di rappresentazione Materiale presentato a lezione: [RepInvariant ] Cosa leggere per studiare e approfondire l'argomento: Capitolo5 B. Liskov (with J. Guttag), Program Development in Java: Abstraction, +Specification and Object-Oriented design

  • Esercitazione: specifica e implentazione di astrazioni di dato in Java: Descrizione

  • Esercitazione: specifica di astrazioni:Specifica

  • Esercitazione: specifica di Java API: VectorSpecifica Vector

  • Java Collection Framework (JCF) e Iterazione generalizzata Materiale presentato a lezione:[ JCF ] Cosa leggere per studiare e approfondire l'argomento: Capitolo 6 B. Liskov (with J. Guttag), Program Development in Java: Abstraction, +Specification and Object-Oriented design

  • Cosa leggere per studiare e approfondire l'argomento: Oracle JCF Cosa leggere per studiare e approfondire l'argomento: Capitolo 10 David Eck Java Notes Java Notes

  • Sottotipi, ereditarieta' e il principio di sostituzione Materiale presentato a lezione: [Principio di Sostituzione ] Cosa leggere per studiare e approfondire l'argomento: Capitolo7 B. Liskov (with J. Guttag), Program Development in Java: Abstraction, +Specification and Object-Oriented design Cosa leggere per studiare e approfondire l'argomento: Il principio di sostituzione di B. Liskov: wikipedia

  • Esercitazione: specifica e implentazione di astrazioni di dato in Java: Descrizione

  • Esercitazione: esempio di prova di esame. Testo e soluzione della prova: Testo Gamae (Java File) ArrayGame (Java File) FullGame (JavaFile)

  • Esercitazione: specifica e implentazione di astrazioni di dato in Java: Descrizione

  • La programmazione funzionale in OCAML. Materiale presentato a lezione [OCAML]

  • Cosa leggere per studiare e approfondire l'argomento: Real World Ocaml -- online book

  • Linguaggi di Programmazione: macchine astratte, compilatori e interpreti Materiale presentato a lezione:[ Linguaggi ] Cosa leggere per studiare e approfondire l'argomento: Capitolo 1: M. Gabbrielli and S. Martini, Linguaggi di Programmazione: Principi e Paradigmi, McGraw-Hill

  • Linguaggi di Programmazione. Un interprete in OCAML: esempio completo Materiale presentato a lezione :Dalle regole operazionali alle regole di interpretazione [ Regole ]

  • Materiale presentato a lezione: [ Interprete in OCAML ]

  • Cosa leggere per studiare e approfondire l'argomento: Note didattiche on Programming Language Concepts Note (pdf) didattiche

  • Linguaggi di Programmazione. I dati e la loro implementazionenella macchina astratta della realizzazione del linguaggio. Materiale presentato a lezione: [ I dati e le strutture di implementazione ] Cosa leggere per studiare e approfondire l'argomento: Capitolo 8: M. Gabbrielli and S. Martini, Linguaggi di Programmazione: Principi e Paradigmi, McGraw-Hil

  • Nomi, Binding e la nozione di ambienteMateriale presentato a lezione: [Blocchi e Ambiente ] Cosa leggere per studiare e approfondire l'argomento: Capitolo 4: M. Gabbrielli and S. Martini, Linguaggi di Programmazione: Principi e Paradigmi, McGraw-Hil

  • Regole, Interprete e compilazione per un linguaggio di espressioniMateriale presentato a lezione: [Regole e interprete ] Cosa leggere per studiare e approfondire l'argomento: Note didattiche on Programming Language Concepts Note (pdf) didattiche

  • Funzioni e procedure: record di attivazione. Scoping Statico escoping dinamicoMateriale presentato a lezione: [Record di attivazione] Esercitazione [Simulazione del Run-time] Cosa leggere per studiare e approfondire l'argomento: Capitoli 5 e 7: M. Gabbrielli and S. Martini, Linguaggi di Programmazione: Principi e Paradigmi, McGraw-Hil

  • Esercitazione: realizzazione in OCAML dell'interprete di un nucleodi un liguaggio funzionale.Materiale presentato a lezione: [Mini CAML] Passaggio dei parametri: esempi e eserciziMateriale presentato a lezione: [Pass-Parametri] Cosa leggere per studiare e approfondire l'argomento: Capitoli 7: M. Gabbrielli and S. Martini, Linguaggi di Programmazione: Principi e Paradigmi, McGraw-Hil

  • Esercitazione: specifica e implentazione di un interprete per un linguaggio funzionale: Descrizione

  • I sistemi per il controllo dei tipi nei linguaggi funzionali.Materiale presentato a lezione: [Sistema dei tipi] L'implementazione del typechecker in OCAML [Type Checker (ocaml code)]

  • Esercitazione[testo esercitazione ] Il paradigma a oggetti: tecniche di implementazione e ]lastruttura del run-time.Materiale presentato a lezione: [Classe, oggetti la la JVM ] Cosa leggere per studiare e approfondire l'argomento: Capitolo 10: M. Gabbrielli and S. Martini, Linguaggi di Programmazione: Principi e Paradigmi, McGraw-Hill The Java Virtual Machine Specification: JVMSE11 JVM: una review: JVM Internal

  • Gestione della memoria: tecniche di garbage collection.Materiale presentato a lezione: [Garbage Collection ] Un esempio in Java :Java GC (zip) Cosa leggere per studiare e approfondire l'argomento: Capitolo 5: M. Gabbrielli and S. Martini, Linguaggi di Programmazione: Principi e Paradigmi, McGraw-Hil

Esercitazione riassuntiva testo Progetto Primo progetto Intermedio Testo Second progetto Intermedio Testo Nota: Tutti coloro che non hanno presentato i due progetti intermedi devono realizzare e consegnare un progetto complessivo costituito dai due progetti intermedi includendo obbligatoriamente le parti opzionali. FAQQuesta parte della pagina raccoglie sotto forma di domande alcune risposte a quelle che sembrano essere le domande e i dubbi piu' comuni tra gli studenti di Programmazione II . Durante la prova scritta è consentito l'uso di libri o appunti? 2ff7e9595c


 
 
 

Recent Posts

See All
Itch.io apk baixar

O que é itch.io e por que você deve baixá-lo Se você é fã de jogos indie, provavelmente já ouviu falar , uma plataforma que permite...

 
 
 

Comments


!
Widget Didn’t Load
Check your internet and refresh this page.
If that doesn’t work, contact us.

© 2023 by Burger Corner. Proudly created with Wix.com

bottom of page