Opzioni di iscrizione

 Il corso di programmazione si propone di illustrare le caratteristiche principali dei linguaggi di programmazione e le loro stritture di implementazione. La strategia adottata nel corso prevede l'utilizzo di tecniche basate sulla semantica operazionale strutturata come meccanismo per descrivere sia i paradigmi di programmazione che le strutture di implementazione. Infine, il corso si propone presentare e discutere le tecniche per la programmazzione a oggetti (programmazione per contratti,programmazzione concorrente) esemplificate e sperimentate utilizzando il linguaggio Java. Il corso si articola attorno a due argomenti principali.

  • Programmazione orientata ad oggetti. Il nucleo del linguaggio Java: classi, oggetti, ereditarieta', astrazioni sui dati (specifica e implementazione, tecniche di verifica induttiva), astrazione mediante gerarchie, polimorfismo a' la Java. Tecniche di programmazione concorrente
  • 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. 
Iscrizione spontanea (Studente)
Iscrizione spontanea (Studente)