Computation III
Objectives
The aim of this course is to get the elements of object-oriented programming. Java will be the basic reference language.
At the end of the course the student is expected to master the major abstraction mechanisms useful in the analysis and design of software applications.
He/She will be capable of designing, developing and testing Java programs.
A part of the course will be dedicated to the design of algorithms using OOP. Applications related to graphs will be presented.
General characterization
Code
100029
Credits
6.0
Responsible teacher
Mauro Castelli
Hours
Weekly - Available soon
Total - Available soon
Teaching language
Portuguese. If there are Erasmus students, classes will be taught in English
Prerequisites
O curso será realizado em inglês.
Conhecimento básico dos cursos anteriores, programação imperativa, matemática e lógica são necessários para frequentar o curso.
Bibliography
Java: The Complete Reference, (Ninth Edition) Herbert Schildt;
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
First epoch:
Project with discussion
Second epoch:
70% - Exam
30% - Project (the same as the first epoch)
Subject matter
- UML: requirements, use cases, class diagram
- 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 modifier
- Abstract classes
- Interfaces
- Algorithms on graphs
- Dynamic Programming (depending on schedule)