PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

Elenco notifiche



Object oriented programming

04JEYSM

A.A. 2021/22

Course Language

Inglese

Degree programme(s)

Master of science-level of the Bologna process in Data Science And Engineering - Torino

Course structure
Teaching Hours
Lezioni 42
Esercitazioni in aula 23
Esercitazioni in laboratorio 15
Lecturers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
Co-lectures
Espandi

Context
SSD CFU Activities Area context
ING-INF/05 8 B - Caratterizzanti Ingegneria informatica
2021/22
The goal of this course is to increase students' skills in software development by presenting techniques based on the object-oriented paradigm and their use with the Java programming language.
The goal of this course is to increase students' skills in software development by presenting techniques based on the object-oriented paradigm and their use with the Java programming language.
At the end of the course, students will know the fundamental notions of object-oriented programming (classes, objects, attributes, methods, inheritance, interfaces) and of software engineering (software life cycle, configuration management, testing, software quality). In addition, they will know in detail the main features of the Java programming language. Skills acquired will cover: familiarity with the Java language, the ability to analyze the requirements of a small-sized software system in order to deliver a working program using an integrated development environment (IDE).
At the end of the course, students will know the fundamental notions of object-oriented programming (classes, objects, attributes, methods, inheritance, interfaces) and of software engineering (software life cycle, configuration management, testing, software quality). In addition, they will know in detail the main features of the Java programming language. Skills acquired will cover: familiarity with the Java language, the ability to analyze the requirements of a small-sized software system in order to deliver a working program using an integrated development environment (IDE).
The knowledge of basic programming constructs (types and data structures, control statements and functions) and of sorting and searching algorithms is a prerequisite.
The knowledge of basic programming constructs (types and data structures, control statements and functions) and of sorting and searching algorithms is a prerequisite.
Basic features (1 credit) • Object-oriented programming, Java, Eclipse • Classes, attributes, methods and constructors, objects • Packages and visibility rules • Strings, wrapper classes • Arrays Inheritance and interfaces (3 credits) • Inheritance • Abstract classes, interfaces • Functional interfaces, lambda expressions • Exceptions • Generic types Standard libraries (3 credits) • Collections: sets, lists, maps • Streams • Files • Dates • Threads Software Engineering principles (1 credits) - Software life cycle - Design using UML - Design Patterns - Configuration management - Testing
Basic features (1 credit) • Object-oriented programming, Java, Eclipse • Classes, attributes, methods and constructors, objects • Packages and visibility rules • Strings, wrapper classes • Arrays Inheritance and interfaces (3 credits) • Inheritance • Abstract classes, interfaces • Functional interfaces, lambda expressions • Exceptions • Generic types Standard libraries (3 credits) • Collections: sets, lists, maps • Streams • Files • Dates • Threads Software Engineering principles (1 credits) - Software life cycle - Design using UML - Design Patterns - Configuration management - Testing
The course consists of classroom lectures that present the topics of software engineering and Java language; lectures are supplemented with classroom exercises. In addition, there is a series of laboratory exercises that allow students to master the Java language and the Eclipse platform through case studies of increasing complexity.
The course consists of classroom lectures that present the topics of software engineering and Java language; lectures are supplemented with classroom exercises. In addition, there is a series of laboratory exercises that allow students to master the Java language and the Eclipse platform through case studies of increasing complexity.
The slides of the course are available on the portal. Suggested readings are as follows: M.Fowler, K. Scott. UML Distilled, 3rd ed. Addison-Wesley, 2003. Cay S. Horstmann. Core Java SE 9 for the Impatient, Addison-Wesley Professional, 2017. R. Urma, M. Fusco, A. Mycroft. Java 8 in Action: Lambdas, streams, and functional-style programming. Manning, 2014.
The slides of the course are available on the portal. Suggested readings are as follows: M.Fowler, K. Scott. UML Distilled, 3rd ed. Addison-Wesley, 2003. Cay S. Horstmann. Core Java SE 9 for the Impatient, Addison-Wesley Professional, 2017. R. Urma, M. Fusco, A. Mycroft. Java 8 in Action: Lambdas, streams, and functional-style programming. Manning, 2014.
Modalità di esame: Prova pratica di laboratorio;
Exam: Practical lab skills test;
... Onsite exams take place in Politecnico's LAIBs and are divided into two parts: a) close-ended questions on topics covered in lectures (weight on the final grade ~15%) and b) the development of a Java program using the Eclipse IDE (weight on the final grade ~85%). The exam lasts two hours, the use of notes and books is not allowed. The grading is based on the number of correct answers (part a) and the quality on the program in terms of correctly implemented Java classes (part b).
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Practical lab skills test;
Onsite exams take place in Politecnico's LAIBs and are divided into two parts: a) close-ended questions on topics covered in lectures (weight on the final grade ~15%) and b) the development of a Java program using the Eclipse IDE (weight on the final grade ~85%). The exam lasts two hours, the use of notes and books is not allowed. The grading is based on the number of correct answers (part a) and the quality on the program in terms of correctly implemented Java classes (part b).
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.
Modalità di esame: Prova scritta tramite PC con l'utilizzo della piattaforma di ateneo;
Online exams are similar to onsite ones: close-ended questions are handled with the Exam platform, while the development of a Java program is checked with the Virtual Classroom platform.
Exam: Computer-based written test using the PoliTo platform;
Online exams are similar to onsite ones: close-ended questions are handled with the Exam platform, while the development of a Java program is checked with the Virtual Classroom platform.
Modalità di esame: Prova scritta tramite PC con l'utilizzo della piattaforma di ateneo;
In a blended scenario, onsite exams and remote ones take place simultaneously; the modalities are described in the two previous cases.
Exam: Computer-based written test using the PoliTo platform;
In a blended scenario, onsite exams and remote ones take place simultaneously; the modalities are described in the two previous cases.
Esporta Word