Programação Centrada em Objetos

Código

0105886

Créditos ECTS

6

Objetivos

1. Conhecer o paradigma de programação orientado aos objetos, as suas vantagens, inconvenientes e limitações.
2. Saber analisar problemas e especificar soluções que respondam aos requisitos com qualidade, através da construção de modelos utilizando notações padrão.
3. Conhecer e saber utilizar padrões de desenho.
4. Saber implementar soluções no paradigma orientado a objetos.

Programa

1. Análise e desenho centrado em objetos
1.1. Modelo de casos de uso e modelo de domínio
1.2. Desenho para a atribuição de responsabilidades (diagramas UML de interação e de classes)
1.3. Introdução aos padrões de desenho (GRASP e GoF)​

2. Conceitos fundamentais da programação centrada em objetos, utilizando a linguagem Java ​como suporte
2.1 Herança, polimorfismo, classes abstratas e interfaces ​
2.2 Coleções Java, tipos parametrizados e enumerações ​
2.3 Expressões lambda e streams​
2.4 Tratamento de erros e entradas/saídas​

Métodos de Ensino

Nas aulas teóricas apresentam-se os conceitos elementares de análise, desenho e programação centrada em objetos, com recurso a exemplos e demonstrações e analisam-se e discutem soluções a concretizar nas aulas práticas ou durante o estudo autónomo, utilizando a linguagem de notação UML e a linguagem de programação Java.

As aulas práticas laboratoriais funcionam articuladas com as aulas teóricas e com as sugestões de atividades a realizar durante o tempo de estudo autónomo, promovendo a resolução de problemas, de pequena e média escala, com análise, desenho e implementação de soluções, usando a linguagem Java e notação UML.

Os estudantes desenvolvem um projeto em grupo que é o elemento aglutinador dos conteúdos aprendidos ao longo da unidade curricular, que permite analisar, desenhar e implementar pequenos programas numa situação mais próxima da realidade, e desenvolver competências intrapessoais e interpessoais para o trabalho autónomo e em equipa.

A plataforma de e-Learning Moodle da UAc (em http://moodle.uac.pt) é utilizada como componente digital do ambiente de aprendizagem, disponibilizando informação e documentação relevante do funcionamento da UC, espaços de comunicação geral sobre a UC, atividades de aprendizagem propostas, individuais e em grupo, com os respetivos recursos e avaliação.

AVALIAÇÃO:

Em cada edição da unidade curricular, a avaliação, contínua e periódica, é constituída por uma componente individual teórico-prática que tem peso entre 50% e 70% e uma componente de projeto em grupo que tem peso entre 30% e 50%, ambas com nota mínima de 10 valores.

Bibliografia

Essencial

- Larman, C. (2004) Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition). Prentice Hall. ISBN: ‎ 978-013-148-906-6
- Martins, F. (2017) Java 8 - POO + Construções Funcionais, FCA. ISBN: 978-972-722-838-6
- Gamma, E., Helm, R., Johnson, R., Vlissides, J. (1994) Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley. ISBN 0-201-63361-2.

Complementar

- Martins, F. (2014). Projetos de POO em Java. FCA. ISBN: 978-972-722-792-1 ​
- Schildt, H., Coward, D. (2024). Java: The Complete Reference (Thirteenth Edition), McGraw Hill. ​ ISBN: 978-126-506-270-5

Método de Avaliação

    De acordo com Métodos de Ensino - 100 %