SCUOLA Scienze di Base e Applicate ANNO ACCADEMICO 2015

SCUOLA
ANNO ACCADEMICO
CORSO DI LAUREA
INSEGNAMENTO
TIPO DI ATTIVITÀ
AMBITO DISCIPLINARE
CODICE INSEGNAMENTO
ARTICOLAZIONE IN MODULI
SETTORI SCIENTIFICO DISCIPLINARI
DOCENTE RESPONSABILE
CFU
NUMERO DI ORE RISERVATE ALLO
STUDIO PERSONALE
NUMERO DI ORE RISERVATE ALLE
ATTIVITÀ DIDATTICHE ASSISTITE
PROPEDEUTICITÀ
ANNO DI CORSO
SEDE DI SVOLGIMENTO DELLE
LEZIONI
ORGANIZZAZIONE DELLA DIDATTICA
MODALITÀ DI FREQUENZA
METODI DI VALUTAZIONE
TIPO DI VALUTAZIONE
PERIODO DELLE LEZIONI
CALENDARIO DELLE ATTIVITÀ
DIDATTICHE
ORARIO DI RICEVIMENTO DEGLI
STUDENTI
Scienze di Base e Applicate
2015/2016
Informatica
Linguaggi di Programmazione
Caratterizzante
Discipline informatiche
04758
NO
INF01
Gabriele Fici
Ricercatore, Università di Palermo
9
153
72
Programmazione e Laboratorio C.I., Metodi
matematici per l’informatica.
II
Consultare il sito www.cs.unipa.it
Lezioni frontali, Lezioni di laboratorio
eesercitazioni
Facoltativa
Prove in itinere, Prova orale finale
Voto in trentesimi
Primo semestre
Consultare il sito www.cs.unipa.it
Lunedì e Mercoledì 15:00 – 17:00
RISULTATI DI APPRENDIMENTO ATTESI
Conoscenza e capacità di comprensione
Conoscenza delle macchine astratte. Conoscenza panoramica storica dei vari paradigmi di
programmazione. Conoscenza del paradigma di programmazione funzionale, logico, dichiarativo
e strutturale. Conoscenza del paradigma orientato agli oggetti. Conoscenza del linguaggio Java.
Capacità di applicare conoscenza e comprensione
Capacità di valutare le funzionalità dei diversi paradigmi di programmazione. Capacità di scrivere
un codice nel linguaggio di programmazione Java.
Autonomia di giudizio
Capacità di valutare e comparare autonomamente le soluzioni di un problema di limita
complessità.
Abilità comunicative
Capacità di organizzarsi in gruppi di lavoro. Capacità di comunicare efficacemente in forma orale,
anche utilizzando termini in Inglese.
Capacità di apprendere
Capacità di catalogare, schematizzare e rielaborare le nozioni acquisite.
OBIETTIVI FORMATIVI
Fornire le competenze di base, sia metodologiche che tecniche, sui linguaggi di programmazione,
in particolar modo sui linguaggi orientati agli oggetti.
ORE FRONTALI
12
LEZIONI FRONTALI
Concetti base sui linguaggi di programmazione: linguaggi interpretati e
compilati, macchine astratte, gestione della memoria, paradigmi di
programmazione, linguaggi di scripting.
16
Paradigma di programmazione orientato agli oggetti: classi, attributi e metodi,
incapsulamento, ereditarietà, polimorfismo, accenni alle differenze tra Java e
C++. Caratteristiche di Java: ereditarietà singola, overloading e overriding di
metodi, static type checking e dynamic late binding, classi astratte e interfacce.
LEZIONI DI LABORATORIO ED ESERCITAZIONI
Programmazione in linguaggio Java: struttura delle classi, strutture di controllo
del flusso, stringhe, array e arraylist, ereditarietà e polimorfismo, classi astratte e
interfacce, gestione dell'input output, gestione delle eccezioni, implementazioni
di strutture dati, basi di interfacce grafiche.
22
22
TESTI
CONSIGLIATI
Esercizi di programmazione in linguaggio Java
M. Gabbrielli, S. Martini, Linguaggi di programmazione, principi e paradigmi,
Mc GrawHill;
C. Horstmann, Concetti di informatica e fondamenti di Java, Apogeo;
S. Mazzanti, V. Milanese, Programmazione di applicazioni grafiche in Java,
Apogeo;
C. Demetrescu, U. Ferraro Petrillo, I. Finocchi, G. F. Italiano, Progetto di
algoritmi e strutture dati in Java, Mc GrawHill.