Laura VERDE
Insegnamento di PROGRAMMAZIONE ORIENTATA AGLI OGGETTI
Corso di laurea magistrale in MATEMATICA
SSD: INF/01
CFU: 8,00
ORE PER UNITÀ DIDATTICA: 72,00
Periodo di Erogazione: Secondo Semestre
Italiano
| Lingua di insegnamento | ITALIANO |
| Contenuti | Principi di progettazione e programmazione orientata agli oggetti. Il linguaggio Java: concetti base e sviluppo di software object-oriented. |
| Testi di riferimento | Horstmann Cay. Concetti di informatica e fondamenti di Java. Collana Apogeo Education, 2016. — 846 p. — ISBN 8891617377, 13 9788891617378. |
| Obiettivi formativi | Il Corso intende fornire la conoscenza dei principi di programmazione ad oggetti e loro applicazione al linguaggio Java. Durante il corso, lo studente dovrà essere in grado di acquisire la capacità di analizzare semplici problemi e di progettare strutture di classi ed algoritmi per la loro risoluzione automatica, così come la capacità di implementare tali algoritmi in programmi e di usare gli strumenti software adeguati (editor, compilatori, linker, etc.). Inoltre, obiettivo del corso sarà quello di fare in modo che lo studente sia in grado di motivare le scelte progettuali ed implementative effettuate in modo logico ed argomentato, oltrechè usare la terminologia propria della programmazione a oggetti. Al termine dell'insegnamento lo studente dovrà dimostrare: - di saper far uso degli strumenti di sviluppo in ambiente Java; - di avere compreso i meccanismi di base della programmazione a oggetti. - di integrare lo studio dei linguaggi proposti con riferimenti esterni in grado di dettagliare quanto presentato a corso nonché di fornire supporto alla fase di debugging. |
| Prerequisiti | Fondamenti di Informatica |
| Metodologie didattiche | Il corso prevede ore teoriche (48 ore) in cui verranno illustrate le tecniche di programmazione ad oggetti e i dettagli del linguaggio Java; ed ore (24 ore) in laboratorio in cui verranno presentati vari tool di sviluppo (ad esempio Eclipse) oltreché la risoluzione di esercizi e problemi applicativi. Data la presenza di una prova d’esame pratica è consigliata la frequenza alle lezioni di laboratorio. |
| Metodi di valutazione | L’esame si compone di due prove: una prova pratica ed una prova orale. La prova pratica mira ad accertarsi delle competenze legate all’analisi ed allo sviluppo di programmi scritti in Java. La prova viene superata se quanto scritto è corretto e soddisfa i requisiti richiesti nella traccia. La prova pratica potrà essere tenuta sotto forma di elaborato da consegnare e da discutere all’esame e/o in forma di prova a tempo al calcolatore. La prova orale mira a valutare le capacità di ragionamento sugli argomenti del corso la verifica delle conoscenze dello studente anche attraverso il collegamento di contenuti trasversali e la capacità espositiva. Non sono previste prove di esonero durante il corso. Gli studenti dovranno presentarsi alla prova muniti di documento di riconoscimento. Non sarà consentita la consultazione di materiale didattico e/o elettronico personale (smartphone, tablet, etc..). |
| Altre informazioni | E’ previsto il caricamento on-line di materiale didattico, esercitazioni e programmi di esempio. |
| Programma del corso | Paradigma di programmazione a oggetti: -Introduzione al paradigma di programmazione orientato agli oggetti. -Progettazione di sistemi orientati agli oggetti: processo di analisi e modellazione. -Concetti base: incapsulamento, ereditarietà, poliformismo, astrazione. -Classi, attributi, metodi e costruttori, oggetti, interfacce. Il linguaggio Java: -I costrutti del linguaggio, compilazione, debugging ed ambienti di programmazione. -Tipi di dati fondamentali. -Variabili, Array. -Operatori (aritmetici, di assegnazione, logici fondamentali). -Decisioni e iterazioni. -La gestione dell'I/O e delle eccezioni. -Packages e librerie standard. -Thread. -Collections. |
English
| Teaching language | Italian |
| Contents | Principles of object-oriented programming. The Java language: basic concepts and object-oriented software development. |
| Textbook and course materials | Horstmann Cay. Concetti di informatica e fondamenti di Java. Collana Apogeo Education, 2016. — 846 p. — ISBN 8891617377, 13 9788891617378. |
| Course objectives | The course aims to provide knowledge of the principles of object-oriented programming and their application to the Java language. During the course, the student will be able to acquire the ability to analyse simple problems and to design class structures and algorithms for their automatic resolution, as well as the ability to implement these algorithms in programs and to use the appropriate software tools (editors, compilers, linkers, etc.). Furthermore, the aim of the course will be to ensure that the student will be able to justify the design and implementation choices made in a logical and reasoned manner, as well as to use the terminology of object-oriented programming. At the end of the course, the student will have to demonstrate - to be able to make use of the development tools in the Java environment; - that they have understood the basic mechanisms of object-oriented programming. - to supplement the study of the proposed languages with external references capable of detailing what is presented in the course as well as providing support in the debugging phase. |
| Prerequisites | Fundamentals of Programming |
| Teaching methods | The course includes theory hours (48 hours) in which object-oriented programming techniques and the details of the Java language will be explained; and hours (24 hours) in the laboratory in which various development tools (e.g. Eclipse) will be presented as well as the solving of exercises and application problems. Due to the presence of a practical examination, attendance of the laboratory lessons is recommended. |
| Evaluation methods | The examination consists of two tests: a practical test and an oral test. The practical test is aimed at ascertaining skills in the analysis and development of programmes written in Java. The test is passed if what is written is correct and meets the requirements set out in the outline. The practical test may be held in the form of a paper to be handed in and discussed at the examination and/or in the form of a computer time trial. The oral test is aimed at assessing the student's reasoning skills on the topics of the course, the verification of the student's knowledge also through the linking of transversal content and expository ability. No exemption tests are scheduled during the course. Students must present themselves at the test with an identity document. Consultation of personal teaching and/or electronic material (smartphones, tablets, etc.) will not be permitted. |
| Other information | Online uploads of teaching materials, tutorials and sample programmes are provided. |
| Course Syllabus | Object-oriented programming paradigm: -Introduction to the object-oriented programming paradigm. -Design of object-oriented systems: analysis and modelling process. -Basic concepts: encapsulation, inheritance, polyformism, abstraction. -Classes, attributes, methods and constructors, objects, interfaces. The Java language: -Language constructs, compilation, debugging and programming environments. -Basic data types. Variables, Arrays. -Operators (arithmetic, assignment, fundamental logic). -Decisions and iterations. -Interfaces. -I/O and exception handling. -Packages and standard libraries. -Threads. -Collections. |








