====== Programmazione (Modulo di Teoria) ====== ---- ===== News ===== * **Pubblicati risultati prova scritta del 16/03/2017** * Pubblicati risultati prova scritta del 28/02/2017 * Prossima (e ultima) lezione di Programmazione Teoria (Tiezzi): Mercoledì 15 Febbraio, 14:00-16:00, LA1. * La traccia del progetto è stata pubblicata nella sezione "Laboratorio di programmazione". Eventuali dubbi sulla traccia possono essere discussi con il Prof. Culmone durante le lezioni di laboratorio. * 21 Dicembre 2016: al posto della lezione di Programmazione Teoria si svolgerà la lezione di Programmazione Laboratorio (Prof. Culmone) * 12 Dicembre 2016: Lezioni di teoria e laboratorio posticipate. Prossima lezione di teoria: 13 Dicembre (al posto della lezione di laboratorio) * 30 Novembre 2016: Ripresa lezioni * 19 Ottobre 2016: Lezione posticipata * 06 Ottobre 2016: Lezione posticipata * 04 Ottobre 2016: Prima lezione * 03 Ottobre 2016: Non c'è lezione (Giornata di Ambientamento ) ---- ===== Informazioni Generali ===== **Docente**: * [[http://docenti.unicam.it/pdett.aspx?ids=N&tv=d&UteId=990&ru=PA|Francesco Tiezzi]] **Orario delle Lezioni**: * Lunedì 11 - 13 (LA1) * Lunedì 14 - 16 (LA1) - Laboratorio * Martedì 14 - 16 (LA1) - Laboratorio * Mercoledì 14 - 16 (LA1) **Ricevimento studenti**: * su appuntamento (via email) ---- ===== Obiettivi del Corso ===== D1 - CONOSCENZA E CAPACITÀ DI COMPRENSIONE\\ Al termine di questa attività formativa, lo studente dovrà dimostrare di essere in grado di: - Conoscere i concetti base della programmazione procedurale. - Conoscere i concetti base della programmazione orientata agli oggetti, con particolare riguardo al linguaggio Java. - Conoscere le principali funzionalità dell'ambiente di sviluppo Eclipse. D2 - CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE\\ Al termine di questa attività formativa, lo studente dovrà dimostrare di essere in grado di: - Programmare secondo il paradigma di programmazione procedurale. - Programmare secondo il paradigma di programmazione ad orientata agli oggetto, tramite il linguaggio Java. D3 - AUTONOMIA DI GIUDIZIO\\ Risultati attesi:\\ Al termine di questa attività formativa, lo studente dovrà dimostrare di essere in grado di: - Identificare il modello a oggetti che descrive meglio un semplice problema. D4 - ABILITÀ COMUNICATIVE\\ Risultati attesi:\\ Al termine di questa attività formativa, lo studente dovrà dimostrare di essere in grado di: - Documentare il codice in forma chiara e comprensibile usando lo standard del linguaggio usato. D5 - CAPACITÀ DI APPRENDIMENTO\\ Risultati attesi:\\ Al termine di questa attività formativa, lo studente dovrà dimostrare di essere in grado di: - Comprendere e imparare ad usare autonomamente sintassi e semantica di altri linguaggi di programmazione, imperativi o ad oggetti, nonché librerie aggiuntive e tecnologie analoghe. ---- ===== Contenuti del Corso ===== * Algoritmi, programmi e linguaggi di programmazione. * Compilatori, interpreti e approccio Java. * Tipi di dato primitivi in Java. * Costrutti base di programmazione procedurale. * Iterazione e ricorsione. * Programmazione ad oggetti in Java. * Ambiente di sviluppo Eclipse. ---- ===== Progetto ===== * La traccia del progetto è disponibile [[didattica:triennale:programmazione:ay_1617:lab|qui]]. * Eventuali dubbi sulla traccia possono essere discussi con il Prof. Culmone durante le lezioni di laboratorio. * Il progetto dovrà essere realizzato in gruppi di massimo 3 persone. La valutazione del progetto avverrà però singolarmente. ---- ===== Materiale ===== **Slide del Corso** * {{ :didattica:triennale:programmazione:ay_1617:intro.pdf |Informazioni generali}} * {{ :didattica:triennale:programmazione:ay_1617:capitolo01.pdf |Calcolatori e programmi}} * {{ :didattica:triennale:programmazione:ay_1617:capitolo02.pdf |Tipi di dato primitivi}} * {{ :didattica:triennale:programmazione:ay_1617:capitolo03.pdf |Selezione e ripetizione}} * {{ :didattica:triennale:programmazione:ay_1617:metodi_e_ricorsione.pdf | Metodi e ricorsione}} * {{ :didattica:triennale:programmazione:ay_1617:programmazione_ad_oggetti.pdf |Programmazione ad oggetti}} * Costrutti avanzati da studiare su [[https://docs.oracle.com/javase/tutorial/index.html|Java Tutorial di Oracle]] o altra fonte e manuale: Interfacce; Ereditarietà multipla; Classi astratte; Accenni a classi annidate; annotazioni e generics. **Lezioni registrate** * [[https://cmr-em.webex.com/cmr-em-it/ldr.php?RCID=17ebfb69fe958c6c296d8fad17521fd7|Lezione del 30 Novembre 2016]] * [[https://cmr-em.webex.com/cmr-em-it/ldr.php?RCID=ce40dd8b3013dd967c1f40c7f8f84db7|Lezione del 5 Dicembre 2016]] * [[https://drive.google.com/open?id=0B2v4obBsNmUON0FiTmZ2SnFtdWs|Lezione del 19 Dicembre 2016]] (password: hDkQpE33) * [[https://drive.google.com/open?id=0B2v4obBsNmUOOHRLb1gwc3UyM1k|Lezione del 9 Gennaio 2017]] (password: 3PpVHfUW) * [[https://drive.google.com/open?id=0B2v4obBsNmUOT1FKcnBTWjd4U00|Lezione del 11 Gennaio 2017]] (password: gHNuZwJ8) * [[https://drive.google.com/open?id=0B2v4obBsNmUOVlFiYXZGQXdZeGs|Lezione del 6 Febbraio 2017]] (password: Am6pQvBp) * [[https://drive.google.com/open?id=0B2v4obBsNmUOU0lORC1zUl9ZMTQLezione del 15 Febbraio 2017]] **Testi di Riferimento** * Pierluigi Crescenzi. Gocce di Java. Un'introduzione alla programmazione procedurale ed orientata agli oggetti (2a edizione, nuova edizione 2014). FrancoAngeli. **Strumenti** * [[https://github.com/LorenzoBettini/javamm | Java--]] * [[http://www.vogella.com/tutorials/Eclipse/article.html | Eclipse Tutorial]] ---- ===== Esami ===== **Fac-simile prova scritta** * {{ :didattica:triennale:programmazione:ay_1617:fac-simile.pdf |Fac-simile}} **Date Esami A.A. 2016/2017** * Appello I: 28/02/2017 ore 10:00 - Polo Lodovici - Aula AA1 ({{ :didattica:triennale:programmazione:ay_1617:2017.02.28_risultati_.pdf |Risultati}}) * Appello II: 16/03/2017 ore 10:00 - Polo Lodovici - Aula AA1 ({{ :didattica:triennale:programmazione:ay_1617:2017.03.16_risultati_.pdf |Risultati}}) * Appello III: 12/06/2017 ore 10:00 - Polo Lodovici - Aula AA1 ({{ :didattica:triennale:programmazione:ay_1617:2017.06.12_risultati.pdf |Risultati}}) * Appello IV: 30/06/2017 ore 10:00 - Polo Lodovici - Aula AB3 ({{ :didattica:triennale:programmazione:ay_1617:2017.06.30_risultati.pdf |Risultati}}) * Appello V: 17/07/2017 ore 10:00 - Polo Lodovici - Aula AB3 ({{ :didattica:triennale:programmazione:ay_1617:2017.07.17_risultati.pdf |Risultati}}) * Appello VI: 11/09/2017 ore 10:00 - Polo Lodovici - Aula AB3 ({{ :didattica:triennale:programmazione:ay_1617:2017.09.11_risultati.pdf |Risultati}}) * Appello VII: 25/09/2017 ore 10:00 - Polo Lodovici - Aula AB3 {{ :didattica:triennale:programmazione:ay_1617:2017.09.24_risultati.pdf |Risultati}}) * Appello VIII: 23/10/2017 ore 10:00 - Polo Lodovici **Regole di esame**:\\ Il raggiungimento dei risultati di apprendimento è verificato attraverso due prove: * **Prova scritta** (questionario a risposta multipla). Durante il corso vengono assegnati diversi esercizi di laboratorio; in caso di esito positivo, sostituiscono la prova scritta nella data di appello. * **Progetto software** assegnato dai docenti con **discussione orale**. La prova orale può essere sostenuta se è stata superata la prova scritta. Il voto finale è la media dei voti delle prove scritta e orale. ** Risultati Esame ** * N/A