Faculdade de Ciências e Tecnologia

Object-Oriented Programming B

Code

11141

Academic unit

Faculdade de Ciências e Tecnologia

Department

Departamento de Informática

Credits

6.0

Teacher in charge

Luís Manuel Marques da Costa Caires, Vasco Miguel Moreira do Amaral

Weekly hours

5

Teaching language

Português

Objectives

Knowledge:

  • Become acquainted with object-oriented programming concepts, namely classes, interfaces, polymorphism and inheritance.
  • Learn techniques and algorithms for processing data structures such as lists, strings, vectors and dictionaries.
  • Understand the basic mechanisms of generic programming.
  • Get acquainted with available class libraries and learn how to reuse them.

Know-how:

  • Design and develop software applications using the object-oriented paradigm.
  • Solve problems, using the object-oriented paradigm.
  • Use correctly the verification and validation techniques studied in this course.
  • Build GUIs and event-driven applications.
  • Develop, both in solo and as a team member, software development projects, integrating all the skills trained in this course, in an increasingly autonoumous way.

Soft-Skills:

  • Enhance disciplined work and deadline skills.
  • Develop a concern with rigour and the systematic execution of work plans and methods previously set.
  • Develop team work skills.
  • Build up an interest for programming and solving problems.

Subject matter

Interfaces specification and documentation.
Software design with classes.
Interface polymorphism.
Class inheritance.
Inheritance polymorphism.
Usage of generic types and collections.
Exception handling and assertions.
I/O streams.

Bibliography

- Cay Horstmann, Java Concepts, 4ª Edição (or subsequent editions), Wiley, 2005, ISBN-­10: 0471697044.
- Slides for this course (made avilable gradually in the moodle).
- F. Mário Martins, Java 5 e Programação por Objetos, FCA, 2006, ISBN 978-972-722­548­4.

Courses