Computation III
Objectives
This course is designed to provide students with a solid understanding of object-oriented programming (OOP), covering essential concepts such as class and method definition, library utilization, and more, using the Python programming language. It is assumed that the students attended the programming courses taught during the first year of the underlying bachelor degree at NOVA IMS.
General characterization
Code
100029
Credits
6.0
Responsible teacher
João Pedro Martins Ribeiro da Fonseca
Hours
Weekly - Available soon
Total - Available soon
Teaching language
Portuguese. If there are Erasmus students, classes will be taught in English
Prerequisites
The course will be held in English language.
Basic knowledge from the high school, in particular mathematical and logical issues
and the basic knowledge of imperative programming is required.
Bibliography
Teaching method
Theoretical classes will be held using the blackboard
and projecting slides. Practical classes will be held
in computer rooms and laboratories, allowing the students
to apply the concepts that have been explained previously
by solving programming exercises.
Evaluation method
The examination consists in a written test that will contain
both theoretical questions and the implementation of some
Java programs.
Subject matter
- Classes and objects in Java
- the concept of reference: basics on memory management in Java
- Methods with complex data types: definition and invocation
- Array of reference
- Information hiding and encapsulation. Visibility modifiers on methods
- Inheritance and polymorphism in Java
- Constructors
- Overloading and overriding
- Class methods and class attributes