Inizio della pagina -
Logo DISCO
|
Visita la Versione ad elevata leggibilità
|
Vai al Contenuto della pagina
|
Vai alla Fine dei contenuti
|
Vai al Menu Principale
|
Vai alla Barra di navigazione (sei in)
|
Vai al Menu di navigazione (albero)
|
Vai alla Lista dei comandi
|
Vai alla Lista degli approfondimenti
|
Vai al Menu inferiore
|
Logo Ateneo
   
Didattica
Programmazione

Docente: F. Arcelli, F. Cardone, D. Micucci, M. Pezzè, L. Pomello, F. Tisato

Crediti: 16 CFU

Descrizione e Programma del Corso

Il corso si articola nei seguenti moduli:

  • Progettazione: 5 CFU F. Arcelli, M. Pezzè
  • Programmazione 1: 6 CFU F. Cardone, L. Pomello
  • Programmazione 2: 5 CFU D. Micucci, F. Tisato

Conoscenze: concetti base di programmazione. Elementi di programmazione ad oggetti, elementi del linguaggio Java. + Parte di Progettazione

Abilità: Alla fine del corso lo studente dovrà padroneggiare i principali meccanismi di astrazione utili nella specifica dei requisiti e nel progetto di applicazioni software in piccolo ed essere capace di progettare e sviluppare semplici programmi in Java.

Programma

  • per Progettazione
  1. Scomposizione e astrazione
  2. Analisi dei requisiti
  3. Specifica dei Requisiti
  4. Progetto di sistemi software
  5. Dal progetto all'implementazione
  6. Astrazione procedurale
  7. Astrazione sui dati
  8. Astrazione sul controllo
  • per Programmazione 1
  1. Struttura logica di un elaboratore e codifica dell'informazione. Gerarchia dei linguaggi di programmazione, compilatori e interpreti. La Java Virtual Machine. Algoritmi e programmi, il paradigma ad oggetti
  2. Tipi di dati primitivi. Variabili, dichiarazioni e assegnamenti. Espressioni e valutazione. Type checking. Stringhe
  3. Ingresso/uscita
  4. Strutture di controllo selettive e iterative. Esempi elementari di algoritmi
  5. Array di tipi primitivi
  6. Metodi, definizione ed invocazione. Record di attivazione. Precondizioni e postcondizioni
  • per Programmazione 2
  1. Programmazione ad oggetti vs programmazione tradizionale
  2. Definizione di classe e di oggetto
  3. Associazioni fra classi
  4. Creazione di semplici strutture dati (liste e/o alberi)
  5. Information hiding e incapsulamento
  6. Metodi con tipi di dati complessi: definizione e invocazione. Modificatore di visibilità sui metodi
  7. Costruttori
  8. Overloading di metodi e di costruttori
  9. Metodi di classe. Attributi di classe.
  10. Array di reference
  11. Lo sviluppo di semplici progetti

Testi consigliati:

  • Barbara Liskov, Program Development in Java, Addison Wesley 2002
  • Walter Savitch, Java: An Introduction to Computer Science & Programming, Prentice Hall, 1998
  • Robert Sedgewick, Algoritmi in Java (Terza Edizione), Addison-Wesley

Modalità di esame: L'esame si articola in prove scritte teorico-pratiche.

Sito web del corso:

http://www.sal.disco.unimib.it/programmazione/

http://www.lta.disco.unimib.it/

Approfondimenti

Google Translate
Translate to English Translate to French Translate to German Translate to Spanish Translate to Chinese Translate to Portuguese Translate to Arabic
Translate to Albanian Translate to Bulgarian Translate to Croatian Translate to Czech Translate to Danish Translate to Dutch Translate to Finnish Translate to Greek Translate to Hindi
Translate to Hungarian Translate to Irish Translate to Japanese Translate to Korean Translate to Norwegian Translate to Polish Translate to Romanian Translate to Russian Translate to Serbian
Translate to Slovenian Translate to Swedish Translate to Thai Translate to Turkish

(C) Copyright 2016 - Dipartimento Informatica Sistemistica e Comunicazione - Viale Sarca, 336
20126 Milano - Edificio U14
redazioneweb@disco.unimib.it - ultimo aggiornamento di questa pagina 25/03/2011