Disciplina
Programação com Objectos
Área
Área Científica de Metodologia e Tecnologias da Programação > Linguagens de Programação
Activa nos planos curriculares
LEIC-T 2021 > LEIC-T 2021 > 1º Ciclo > Área Principal > Programação com Objectos
GENI > GENI > 1º Ciclo > Área Principal > Percursos > Fundamentos para Engenharia de Telecomunicações e Informática > Programação com Objectos
LETI 2021 > LETI 2021 > 1º Ciclo > Área Principal > Programação com Objectos
LEIC-A 2021 > LEIC-A 2021 > 1º Ciclo > Área Principal > Programação com Objectos
MEIC-T 2006 > MEIC-T 2006 > 2º Ciclo > Áreas de Especialização Complementares > Fundamentos de Engenharia Informática > Programação com Objectos
MEIC-A 2006 > MEIC-A 2006 > 2º Ciclo > Área de Especialização Complementar > Fundamentos de Engenharia Informática > Programação com Objectos
MEE 2006 > MEE 2006 > 2º Ciclo > Opções > C1 > Programação com Objectos
LERC 2006 > LERC 2006 > 1º Ciclo > Ciências da Engenharia Informática > Programação com Objectos
LEIC-A 2006 > LEIC-A 2006 > 1º Ciclo > Ciências da Engenharia Informática > Programação com Objectos
LEIC-T 2006 > LEIC-T 2006 > 1º Ciclo > Ciências da Engenharia Informática > Programação com Objectos
Nível
1ª Componente - 50% Projecto (sem nota mínima): a avaliação do projecto inclui um teste prático. 2ª Componente - 40% Teste (nota mínima de 7.5 valores). 3ª Componente - 10% Seis séries de exercícios (sem nota mínima) a realizar nas aulas práticas e em casa. Existem provas de repescagem para os testes prático e teórico. Das seis séries de exercícios, são contabilizadas as cinco melhores.
Tipo
Não Estruturante
Regime
Semestral
Carga Horária
1º Semestre
3.0 h/semana
1.5 h/semana
105.0 h/semestre
Objectivos
Conhecer: o paradigma de programação com objectos, as suas vantagens, inconvenientes e limitações; o paradigma dos padrões de desenho, tanto no desenvolvimento, como na refactorização de aplicações. Competências a adquirir: domínio do paradigma da programação com objectos, nomeadamente dos conceitos de encapsulamento, abstracção, herança e polimorfismo; capacidade de utilizar uma linguagem de programação baseada em objectos; capacidade de utilização de padrões de desenho; e domínio da escrita de testes de avaliação.
Programa
Programação com Objectos e Linguagem Java Introdução aos objectos: definição; longevidade; classes; métodos; programas. Regras de codificação em Java Operadores, expressões e controlo de fluxo em Java: precedências; atribuição; operadores; conversões de tipos; literais; controlo de execução Construção de objectos: iniciação e limpeza; construtores; métodos sobrecarregados; "this"; colector de lixo Organização de código: interface vs. implementação; bibliotecas; acesso aos membros Herança e composição: desenvolvimento incremental; "final"; carregamento de classes Polimorfismo; Classes abstractas e interfaces Classes internas: utilização e aspectos particulares de Java Tipos paramétricos Java: Enumerações; Excepções; Colecções; Entradas/saídas; Informação de tipos em tempo de execução Modelação (UML) Introdução à UML Diagramas de classes e de sequência Padrões de Desenho Introdução aos padrões de desenho: Singleton Apresentação e discussão de padrões de desenho: Composite, State, Template Method, Strategy, Decorator, Factory Method, Abstract Factory, Simple Factory, Observer, Visitor, Adapter, Façade, Bridge, Proxy
Metodologia de avaliação
1ª Componente - 50% Projecto (sem nota mínima): a avaliação do projecto inclui um teste prático. 2ª Componente - 40% Teste (nota mínima de 7.5 valores). 3ª Componente - 10% Seis séries de exercícios (sem nota mínima) a realizar nas aulas práticas e em casa. Existem provas de repescagem para os testes prático e teórico. Das seis séries de exercícios, são contabilizadas as cinco melhores.
Pré-requisitos
Componente Laboratorial
Princípios Éticos
Componente de Programação e Computação
Componente de Competências Transversais
Bibliografia
Principal
Prentice Hall, New Jersey, ISBN 0131872486 (4ª Ed.)
Eric Freeman, Elisabeth Freeman, Kathy Sierra, Bert Bates
Secundária
Design Patterns: Elements of Reusable Object-Oriented Software
Erich Gamma, Richard Helm, Ralph Johnson e John
Addison Wesley Professional, ISBN 0201633612
O'Reilly. ISBN 0596009208 (2ª Ed.)
The Unified Modeling Language User Guide
Grady Booch, James Rumbaugh, Ivar Jacobson
Addison Wesley Professional (2ª Ed.)
JAVA6 e Programação Orientada pelos Objectos
Fernando Mário Junqueira Martins
Stanley B. Lippman, Josée Lajoie, Barbara E. Moo
ISBN-10: 0-201-72148-1, ISBN-13: 978-0-201-72148-5, Addison-Wesley Professional (4ª Ed.)