OBJECT-ORIENTED PROGRAMMING AND MODELING
PROGRAMMAZIONE E MODELLAZIONE A OGGETTI
A.Y. | Credits |
---|---|
2021/2022 | 9 |
Lecturer | Office hours for students | |
---|---|---|
Sara Montagna | Tuesday 11am-1pm by appointment |
Teaching in foreign languages |
---|
Course with optional materials in a foreign language
English
This course is entirely taught in Italian. Study materials can be provided in the foreign language and the final exam can be taken in the foreign language. |
Assigned to the Degree Course
Date | Time | Classroom / Location |
---|
Date | Time | Classroom / Location |
---|
Learning Objectives
The aim is to provide a complete yet terse overview of the basics of object-oriented software development.
Program
01. Software analysis and desing
01.01 Object-oriented programming
01.02 Other kinds of software development paradigms
01.03 Introduction to software modelling
02. Unified modeling language (UML)
02.01 Introduction to UML
02.02 Structure diagrams
02.03 Behaviour diagrams
02.04 Robusteness analysis
02.05 Interaction diagrams
02.06 Finite state machines and other diagrams
03. Java language
03.01 Introduction
03.02 Data types, stetements, and methods
03.03 Advanced concepts
04. Object-oriented software development
04.01 Classes and objects
04.02 Inheritance
04.03 Polymorphism, abstract classes, and interfaces
04.04 Exceptions
04.05 Generics
05. Software design patterns
04.01 Introduction to design patterns
04.02 Creational patterns
04.03 Structural patterns
04.04 Behavioral patterns
06 Laboratory activities
06.01 The Visual Studio environment
06.02 How to write a simple class
06.03 How to develop class hierarchy and polymorphism
06.04 How to develop generics and how to manage exeptions
06.05 Design pattern implementation
06.06 Difference between software core logic and UI
06.07 How to develop dynamic libraries
Bridging Courses
Although there are no mandatory prerequisites, it is advisable to follow this course after completing the courses of Procedural Programming and Algorithms and Data Structure.
Learning Achievements (Dublin Descriptors)
Knowledge and understanding
At the end of the course, the student will learn: to recognize and make use of the main techniques for developing and designing software; to understand the UML visual language and basic "design patterns" for software development.
Applying knowledge and understanding
The student will be able to employ UML to describe software architectures. She/He will learn to make use of standard ”design patterns.” The student will learn how to write accurately structured software using Java code.
Making judgements
The student will be able to evaluate a software source code in terms of modularity, maintainability, abstraction, structure, and code reuse.
Communication skills
The student will acquire the ability to communicate with other object-oriented developers using appropriate verbiage.
Learning skills
The student will be able to learn and understand the main features of any object-oriented language.
Teaching Material
The teaching material prepared by the lecturer in addition to recommended textbooks (such as for instance slides, lecture notes, exercises, bibliography) and communications from the lecturer specific to the course can be found inside the Moodle platform › blended.uniurb.it
Teaching, Attendance, Course Books and Assessment
- Teaching
Theory lectures and laboratory exercises, both face-to face and on-line.
- Attendance
Although recommended, course attendance is not mandatory.
- Course books
- Bruce Eckel. Thinking in Java -- Fourth Edition, Prentice Hall, 2006
- Fowler, "UML Distilled", Addison-Wesley, 2003 (and newer editions).
- Gamma, Helm, Johnson, Vlissides, "Design Patterns: Elements of Reusable Object-Oriented Software", Addison-Wesley, 1995 (and newer editions).
- Assessment
Learning achievements will be evaluated through three types of assessments: individual project, written exam, and oral exam.
The written exam is passed if the mark (which is valid for an academica year) is at least 18/32. It consists on the development of source code in lab and theory questions.
The individual project has to be submitted at least seven days before the oral. The student defines his/her project specification. The project has to be developed in 2-to-4 students team. During the oral exam students discuss the project development and the written test. Possibly further questions about the course program can be asked. The project is evalutated during the oral discussion according to both the quality of the material developed as well the competence demonstrated during the discussion. The evaluation has to be considered positve if at least 18/32.
The final mark is the average of the two previous marks.
- Disability and Specific Learning Disorders (SLD)
Students who have registered their disability certification or SLD certification with the Inclusion and Right to Study Office can request to use conceptual maps (for keywords) during exams.
To this end, it is necessary to send the maps, two weeks before the exam date, to the course instructor, who will verify their compliance with the university guidelines and may request modifications.
« back | Last update: 18/02/2022 |