Aprendizagem dos conceitos fundamentais da Programação Orientada a Objectos e introdução às correspondentes metodologias de desenvolvimento de programas.
Programa
Introdução
Limitações das linguagens de programação imperativas
Paradigmas de programação
Hierarquias de classificação em Ciências Naturais
Objectos
Noção de Objecto e Identidade
Protocolo de utilização de um objecto
Mensagens e Métodos
Noção de Estado e Comportamento
Protocolos/Interfaces
Separação entre protocolo e implementação
Implementação de protocolos
Classes versus protótipos
Hierarquias de abstrações: Generalização e Especialização
Extensão de protótipos
Hierarquias de objectos
Hierarquias de objectos
Mecanismos de herança
Reutilização de código
Sistemas Reflexivos
Relações entre objectos
Extensão, Generalização e Especialização
Associação, Agregação e Composição
Coesão e Acoplamento
Análise, Projecto e Implementação Orientada a Objectos
Linguagens e ambientes de desenvolvimento
Análise, Projecto e Implementação
Avaliação
Aulas teóricas, teórico-práticas e práticas
Inscrição obrigatória nas aulas práticas
Frequências
Provas escritas com a duração de 90 minutos
Peso de 10 valores na nota final (5 valores cada)
Mínimo de 3 valores para concessão de frequência e admissão a exame
Datas: 10 de Novembro (14:00, Salas 6.04, 6.05 e 6.26) e 12 de Janeiro (14:00, Salas 6.16, 6.17, 6.08 e 6.26)
Exame
Prova escrita com a duração de 2 horas
Peso de 10 valores na nota final (soma com as notas das frequências) ou 20 valores (opção do aluno no acto de entrega da prova)
Primeira chamada: 30 de Janeiro (14:30, Salas 6.02, 6.03 e 6.18)
Segunda chamada: 6 de Fevereiro (14:30, Salas 6.02, 6.03 e 6.18)
Especial: 4 de Setembro (09:30, Sala 6.05)
Nota final
Somatório das classificações (expressas com duas casas decimais) das três provas escritas
Trabalhadores-estudantes
Contactar o regente da disciplina
Bibliografia
Filosofia
Handbook of Programming Languages, Volume I: Object-Oriented Programming Languages
Peter H. Salus (editor)
Macmillan Technical Publishing, USA
ISBN 1-57870-008-6 (I-3.3-255)
Object-Oriented Analysis and Design with Applications
Grady Boock
Addison Wesley, 1999
ISBN 0-8053-5340-2 (I-6.1-7/8)
Object-Oriented Languages, Systems, and Applications
G. Blair, J. Gallagher, D. Hutchison, e D. Shepard (editores)