Introduzione al corso - Dipartimento di Ingegneria Informatica e

Linguaggi
Corso di Laurea in Ingegneria delle Telecomunicazioni
A.A. 2010-2011
Alessandro Longheu
http://www.diit.unict.it/users/alongheu
[email protected]
- lezione 00 Informazioni generali sul corso
A. Longheu – Linguaggi – A.A. 2010-2011
Informazioni generali
►Orario delle lezioni
 Consultare il sito di Facolta’ (unico riferimento)
►Chiarimenti e informazioni
 Ricevimento: lunedi 10-11, martedi 11-12
 Via Email: [email protected]
2
A. Longheu – Linguaggi – A.A. 2010-2011
Programma
Prerequisiti:
►Concetto di algoritmo, programma, processo
►Concetti base di programmazione:
tipi di dato, espressioni, istruzioni
►Linguaggio C
►Strutture dati notevoli
3
A. Longheu – Linguaggi – A.A. 2010-2011
Programma
Contenuti del corso:
► Definizioni, proprietà, classificazione dei linguaggi di programmazione
► Programmazione orientata agli oggetti (Object Oriented, OO)
► Il linguaggio JAVA:
 Caratteristiche generali, tipi di dato, operatori, espressioni, strutture
di controllo,
 Classi, oggetti, interfacce, ereditarietà, package
 concorrenza, gestione delle eccezioni, eventi.
 Grafica di base, applet e programmazione in rete
► Il linguaggio Python
► Il linguaggio PHP, utilizzo in ambienti web-based
4
A. Longheu – Linguaggi – A.A. 2010-2011
Esami
► Prova pratica
 prenotazione obbligatoria su https://giove.diit.unict.it/linguaggi
 Consiste nello sviluppo di una applicazione java
 L’applicazione deve essere compilata correttamente
 Deve essere adeguatamente documentata
 Deve funzionare in modo corretto perchè venga presa in
considerazione
 La durata della prova è di 2 ore
 La valutazione riguarda “come” il programma funziona e come è
organizzato; il voto minimo per accedere alla prova orale è 18/30
► Prova orale
 Discussione della prova pratica
 Domande riguardanti l’intero programma (Java, Python e PHP)
5
A. Longheu – Linguaggi – A.A. 2010-2011
Materiale didattico
► Libro di testo
 K. Arnold - J. Gosling - D. Holmes
IL Linguaggio Java - Manuale ufficiale - 4 Edizione
Pearson Education (Addison Wesley)
 Allen Downey, Jeffrey Elkner e Chris Meyers.
Pensare da informatico – imparare con Python
disponibile al sito web.econ.unito.it/terna/infsimeco/howtothink_ita.pdf
 Ducumentazione ufficiale PHP
disponibile al sito http://www.php.net/manual/it/
► Altri testi
 Bruce Eckel “Thinking in Java” - Apogeo
 Wu C.T. “Introduzione alla programmazione a oggetti in Java” McGraw-Hill
 Marty Hall, Larry Brown “Core web programming” - A Sun
Microsystems Press/Prentice Hall PTR Book
 Adam Drozdek “Algoritmi e strutture dati in Java” - Apogeo
6
A. Longheu – Linguaggi – A.A. 2010-2011
Strumenti
► Java Development Kit
 Scaricare dal sito della SUN
► Documentazione JDK
 Scaricare dal sito della SUN java.sun.com
► Strumenti di sviluppo
 Un editor di testo (es. Textpad)
 Comandi JDK da linea di comando
• javac
• java
• javadoc
► www.python.org
► www.php.net
7
A. Longheu – Linguaggi – A.A. 2010-2011
Strumenti
► Lo studente deve sapere:
 Usare il Sistema Operativo
(variabili di ambiente incluse)
 Usare un editor di testo
(non un word processor …)
 Compilare ed eseguire programmi Java da linea di
comando
8
A. Longheu – Linguaggi – A.A. 2010-2011
Filosofia del corso
”per me non è importante che il codice "funzioni", perché io
do per scontato che lo faccia.
Le cose che mi interessano sono altre, in primissimo luogo
la manutenibilità del codice a distanza di anni e da parte di
persone diverse“
[un imprenditore IT]
► Ingegnere edile: “Guarda la casa che ho progettato. Sta in piedi !”
► Ingegnere informatico: “Guarda il programma che ho scritto. Funziona !”
9
A. Longheu – Linguaggi – A.A. 2010-2011
Filosofia del corso
► Per comprendere la programmazione OO è indispensabile fare
esperienza al calcolatore
► Questo inizialmente comporta sicuramente un investimento di
tempo, ma è l'unico modo per ottenere risultati
► Può essere abbastanza semplice comprendere i singoli dettagli
tecnici; la difficoltà consiste nel mettere insieme i concetti e
nell'applicarli su vasta scala
► Solo svolgendo esercizi al calcolatore si può avere una verifica
obiettiva della propria comprensione degli argomenti svolti
► Solo attraverso l'esercizio al calcolatore si può raggiungere un
sufficiente livello di approfondimento
10