Subject: Object-oriented Programming

Scientific Area:



80 Hours

Number of ECTS:

7,5 ECTS



Overall objectives:

1 - In this course, students should acquire the following competences that are specific to the topic of the course: - Understanding of the theoretical concepts underlying object oriented programming; - Development of skills for creating software using an object oriented programming language (Java); - Analysis of situations/problems prior to the development of the software through the development of conceptual models that aim at optimizing the proposed solution.
2 - Moreover, students should develop some adittional general skills such as: - Capacity to work in the context of a team; - Development of communication skills, both oral and written.


1 - Understanding object oriented programming using Greenfoot; Syntax, types of data and expressions; Conditionals and loops.
2 - Writing and using classes; design of object oriented programms; Inheritance; Lists and arrays; Abstract classes and polymorphism; Exceptions; Colections; Input and Output streams.
3 - Unified Modeling Language (UML) - class diagrams.


John Lewis, William Loftus, Addison Wesley , Java Software Solutions, Foundations of Program Design ,
Pedro Coelho , Programação em Java - Curso Completo ,
John Lewis & William Loftus , Java Software Solutions - Foundations of Program Design , Addison Wesley

Assesssment methods and criteria:

Classification Type: Quantitativa (0-20)

Evaluation Methodology:
The following methodologies are used: 1. Theoretical classes. 2. Practical classes for implementation of programs following the theoretical content. 3. Team work for implementation of projects. 4. Oral presentation of projects. The evaluation consists of: 1- Test (40% of the grade, minimum grade of 8) 2- Group project 1 (20% of the grade, minimum grade of 8) 3- Group final project (40% of the grade, minimum grade of 8)