(→Progetto Web) |
(→Slide dell'insegnamento) |
||
Line 96: | Line 96: | ||
# [[Media:05-LogicParadigmProlog.pdf|Paradigma logico e Prolog / Logic paradigm and Prolog]] | # [[Media:05-LogicParadigmProlog.pdf|Paradigma logico e Prolog / Logic paradigm and Prolog]] | ||
# [[Media:06-JavaScript.pdf|JavaScript]] | # [[Media:06-JavaScript.pdf|JavaScript]] | ||
+ | # [[Media:07-JEE.pdf|JEE]] | ||
<!-- | <!-- | ||
# [[Media:06-ClassiAstratteIntefacceJava.pdf|Classi astratte e interfacce]] | # [[Media:06-ClassiAstratteIntefacceJava.pdf|Classi astratte e interfacce]] |
Revision as of 23:20, 4 December 2016
Questa pagina fornisce il materiale didattico e le informazioni relative all'insegnamento di Paradigmi e Linguaggi di Programmazione (6 CFU) per il Corso di Laurea Magistrale in Informatica a partire dall'AA 2016/2017.
Contents
News
Ultime news
La lezione di lunedì 21 novembre 2016 si terrà in aula M2.1 La lezione di lunedì 7 novembre 2016 si terrà in aula M2.1 La lezione di lunedì 17 ottobre 2016 si terrà in aula M2.1 Le lezioni inizieranno il 26 settembre 2016
Vecchie news
Informazioni sul docente
Dipartimento di Scienze Fisiche, Informatiche e Matematiche
Università di Modena e Reggio Emilia, Via Campi 213/B - 41125 Modena
Telefono 0592058320 - Fax 0592055216
Orario delle Lezioni
Orario dell'AA 2016/17
Le lezioni dell'AA 2016/17 inizieranno il 26 settembre 2016 con il seguente orario:
- Lunedì dalle 11 alle 13 in aula M2.5 presso Matematica
- Martedì dalle 11 alle 13 in aula M2.1 presso Matematica
Obiettivi formativi
Gli obiettivi dell'insegnamento sono:
- Presentare e confrontare i vari paradigmi di programmazione
- Presentare i linguaggi di programmazione per un contesto specifico: il Web
Contenuti dell'insegnamento
Paradigmi di programmazione
- Paradigma imperativo
- Paradigma funzionale
- Paradigma logico
- Java 8 come linguaggio imperativo con costrutti funzionali
- Esempi di linguaggi nei vari paradigmi
Programmazione Web
- Programmazione client: JavaScript
- Programmazione lato server: JEE
- Framework per lo sviluppo di applicazioni Web
Verifica dell'apprendimento
La verifica si componente di due parti. La prima parte consiste nello sviluppo di un progetto, da parte di un singolo studente o di un gruppo. La seconda parte consiste nella presentazione del progetto tramite un report e nella verifica della comprensione dei contenuti tramite domande sul programma svolto.
Sviluppo di un progetto
Progetto sui linguaggi
Questo progetto prevede l'implementazione di un algoritmo tramite 2 linguaggi visti a lezione e relativo confronto. Gli algoritmi che possono essere implementati sono:
- Torre di Hanoi
- 8 regine
- Filosofi a cena
- Altri concordati con il docente
Progetto Web
Per svolgere un progetto Web, accordarsi direttamente con il docente.
Presentazione del progetto e prova orale
TBA
Appelli
Le date degli appelli sono disponibili sul sito ESSE3 (http://www.esse3.unimore.it).
Testi Consigliati
- Maurizio Gabbrielli, Simone Martini, Linguaggi di programmazione - Principi e paradigmi, mcgraw-hill
- Maurizio Gabbrielli, Simone Martini, Programming Languages: Principles and Paradigms, Springer
- Raoul-Gabriel Urma, Mario Fusco, and Alan Mycroft, Java 8 in Action, Manning
Slide dell'insegnamento
In questa pagina sono riportati alcuni lucidi usati a lezione.
Grazie al prof. Enrico Denti dell'Università di Bologna e al prof. Riccardo Lancellotti dell'Università di Modena e Reggio Emilia.
- Concetti generali / General concepts
- Paradigma funzionale / Functional paradigm
- Linguaggio LISP
- Java 8
- Paradigma logico e Prolog / Logic paradigm and Prolog
- JavaScript
- JEE
Seminari
TBA
Esercizi presentati a lezione
Strumenti Software
Si indicano di seguito gli strumenti software che si utilizzano durante l'insegnamento e si indica dove e' possibile reperirli.
- Per sviluppare programmi in Java si utilizza il JDK (Java Development Kit). È di pubblico domino e si puo' scaricare dal sito Java at Oracle.
- NOTA: È necessario utilizzare una versione del JDK maggiore o uguale alla 1.8 .
- Come ambiente integrato (IDE) è possibile utilizzare quello che si preferisce. Quello consigliato è Eclipse.
- LISP CLISP, LispWorks, CLISP on Mac
- PROLOG SWI Prolog
TBC