Publicação em Diário da República: Despacho n.º16228/2009 - 15/07/2009
6 ECTS; 1º Ano, 2º Semestre, 28,0 T + 42,0 PL + 5,0 OT + 5,0 O , Cód. 91199.
Docente(s)
- Paulo Alexandre Gomes dos Santos (2)
- Samuel Caetano Augusto Martins Pereira (2)
- António Manuel Rodrigues Manso (2)
(1) Docente Responsável
(2) Docente que lecciona
Pré-requisitos
Conhecimentos básicos de programação.
Objetivos
1 - Resolver problemas computacionais utilizando o paradigma de programação orientada aos objectos;
2 - Desenvolver código funcional através da linguagem Java e das suas bibliotecas de classes;
3 - Conceber e programar aplicações com interfaces gráficas e com persistencia de dados;
Programa
1. Introdução à Programação Orientada por Objectos:
- Conceitos básicos fundamentais.
- Noção de classe e objeto.
- Programação na linguagem java.
2. Programação com classes:
- Definição de classes.
- Construtores e instanciação.
- Interface e Encapsulamento.
- Documentação e teste.
- Classes genéricas.
- Programação com classes de biblioteca.
- Definição de classes através de Agregação.
3. Herança:
- Hierarquias de herança
- Definição de classes através de herança
- Classes abstractas
- Polimorfismo
- Interfaces
4. Interfaces gráficas com o utilizados:
- Arquitetura MVC.
- Bibliotecas de interfaces gráficas.
- Interactividade e gestão de eventos.
5. Modelação com classes:
- Análise e desenho de software orientado por objectos.
- Diagramas de classes (UML)
- Gestão de situações de exceção
- Serialização e persistência de objetos
Metodologia de avaliação
Teórica (60%) - Exame escrito sem consulta. Mínimos de 7 valores em 20.
Prática (40%) - Dois testes práticos e um trabalho final.
Bibliografia
- Documentation, O. (0). The Java Tutorials. Acedido em 1 de janeiro de 2017 em https://docs.oracle.com/javase/tutorial/
- Horstmann, C. e Cornell, G. (2003). Core Java Volume 1 - Fundamentals. (Vol. I). USA: Sun Microsystems
- Sierra, K. e Bates, B. (2003). Head First Java. EUA: O'Reilly
Método de Ensino
Aulas teóricas expositivas para apresentação dos conteúdos programáticos.
Aulas práticas laboratoriais para resolução de problemas e consolidação de conhecimentos utilizando o computador.
Software utilizado nas aulas
Netbeans e java