Offerta Didattica
INFORMATICA
PROGRAMMAZIONE A OGGETTI
Classe di corso: L-31 - Scienze e tecnologie informatiche
AA: 2021/2022
Sedi: MESSINA
SSD | TAF | tipologia | frequenza | moduli |
---|---|---|---|---|
INF/01 | Caratterizzante | Libera | Libera | No |
CFU | CFU LEZ | CFU LAB | CFU ESE | ORE | ORE LEZ | ORE LAB | ORE ESE |
---|---|---|---|---|---|---|---|
9 | 6 | 0 | 3 | 72 | 36 | 0 | 36 |
LegendaCFU: n. crediti dell’insegnamento CFU LEZ: n. cfu di lezione in aula CFU LAB: n. cfu di laboratorio CFU ESE: n. cfu di esercitazione FREQUENZA:Libera/Obbligatoria MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli ORE: n. ore programmate ORE LEZ: n. ore programmate di lezione in aula ORE LAB: n. ore programmate di laboratorio ORE ESE: n. ore programmate di esercitazione SSD:sigla del settore scientifico disciplinare dell’insegnamento TAF:sigla della tipologia di attività formativa TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio
Obiettivi Formativi
Il corso mira a fornire solide basi in merito alla programmazione dei calcolatori elettronici per risoluzione di problemi con il paradigma ad oggetti. L’obiettivo è dunque la programmazione ad oggetti, i cui concetti verranno prevalentemente spiegati attraverso l’approfondimento del linguaggio Java.Learning Goals
The Object-oriented programming course aims at providing the basic concepts on OOP, in particular focusing on Java.Metodi didattici
Lezioni frontali e laboratorio: il corso si svolge prevalentemente attraverso lezioni frontali e seminari su specifici aspetti disciplinari. Parte delle lezioni verteranno su aspetti pratici/di laboratorio, espletato prevalentemente in aula attraverso sessioni “hands on” su propri dispositivi (BYOD – Bring Your Own Device)Teaching Methods
Frontal lecturing, seminars and hands-on lab (BYOD" Bring Your Own Device)Prerequisiti
Conoscenza dei concetti base della programmazione, la programmazione strutturata ed i costrutti e le strutture dati principali.Prerequisites
Basics of programming, functional programming, top-down problem solving approach, basics algorithms and data structures.Verifiche dell'apprendimento
Elaborazione di un progetto di OOP, relazione scritta e discussione dei risultati e degli argomenti teorici relativi al progetto.Assessment
OOP Project and oral examination discussing pn practical and theoretical aspects of the prokect.Programma del Corso
Introduzione del corso. Linguaggi di programmazione. Tipi di linguaggi: imperativi, dichiarativi, funzionali, logici, orientati agli oggetti. Linguaggi macchina. Limiti della programmazione in linguaggio macchina - Dai linguaggi macchina ai linguaggi ad alto livello. Compilatori e interpreti. Il compilatore Java. Bytecode e Java Virtual Machine. - Richiami sulla programmazione strutturata. Alcuni aspetti della grammatica del linguaggio Java. Il primo programma Java. - Dalla programmazione strutturata alla programmazione a oggetti. Tipi astratti di dato, classi oggetti interfacce. Incapsulamento, ereditarietà, polimorfismo. - Introduzione alla programmazione ad oggetti - Classi oggetti metodi e stringhe - Costrutti di controllo - Metodi - Array - Classi e oggetti - Ereditarietà e subtyping - Polimorfismo ed interfacce - Eccezioni e gestione delle eccezioni - Files, streams, thread e socketCourse Syllabus
Introduction to the course. Programming languages. Types of languages: imperative, declarative, functional, logical, object-oriented. Machine languages. Limits of machine language programming - From machine languages to high level languages. - Object languages - Compilers and interpreters. - The Java compiler. Bytecode and Java Virtual Machine. - Basics on structured programming. Some aspects of the grammar of the Java language. The first Java program. - From structured programming to object-oriented programming. Abstract data types, classes, objects, interfaces. Encapsulation, inheritance, polymorphism. - Introduction to Java programming - Object classes, methods and strings - Control structures - Methods - Arrays - Classes and objects - Inheritance and subtyping - Polymorphism and interfaces - Exceptions and exception handling - Files, streams, threads and socketsTesti di riferimento:
Java How To Program (Early Objects) by Paul Deitel (Author), Harvey Deitel (Author) - Pearson
Esami: Elenco degli appelli
Elenco delle unità didattiche costituenti l'insegnamento
Docente: ANTONINO GALLETTA
Orario di Ricevimento - ANTONINO GALLETTA
Dato non disponibile