
Programação Orientada pelos Objetos B
Código
11141
Unidade Orgânica
Faculdade de Ciências e Tecnologia
Departamento
Departamento de Informática
Créditos
6.0
Professor responsável
Luís Manuel Marques da Costa Caires, Vasco Miguel Moreira do Amaral
Horas semanais
5
Língua de ensino
Português
Objectivos
Saber:
- Dominar os conceitos fundamentais de programação orientada pelos objectos, como o de classe, interface, polimorfia e herança.
- Conhecer técnicas e algoritmos para o processamento de estruturas de dados tais como listas, cadeias de caracteres, vectores e dicionários.
- Compreender os mecanismos essenciais de programação genérica.
- Tirar partido de bibliotecas de classes disponíveis.
Fazer:
- Projectar e desenvolver aplicações seguindo o paradigma de orientação pelos objectos.
- Resolver problemas, recorrendo ao paradigma estudado.
- Usar correctamente as abordagens de verificação e validação estudadas na cadeira.
- Construir GUIs e aplicações baseadas em eventos.
- Realizar, individualmente e em grupo, projectos de desenvolvimento de software, integrando as várias competências transmitidas, de forma progressivamente mais autónoma.
Soft-Skills:
- Aprofundar hábitos de disciplina de trabalho e de cumprimento de prazos.
- Desenvolver a preocupação com o rigor, e com a execução sistemática de planos de trabalho e métodos previamente determinados.
- Desenvolver competências de organização de trabalho em grupo.
- Desenvolver o gosto pela programação e pela resolução de problemas de programação.
Conteúdo
Especificação de interfaces e respectiva documentação.
Concepção de programas estruturados em classes.
Polimorfismo de interfaces.
Herança de classes.
Polimorfismo de herança.
Utilização de tipos genéricos e colecções.
Tratamento de excepções e asserções.
Ficheiros de entrada/saída.
Bibliografia
- Cay Horstmann, Java Concepts, 4ª Edição (ou seguintes), Wiley, 2005, ISBN-10: 0471697044.
- Diapositivos de Programação Orientada pelos Objetos (serão disponibilizados gradualmente na página moodle da cadeira).
- F. Mário Martins, Java 5 e Programação por Objetos, FCA, 2006, ISBN 978-972-7225484.
Método de avaliação
Componentes da avaliação:
Existem duas componentes na avaliação: testes e avaliação prática.
A nota final (NF) é determinada pela fórmula:
NF = NT + NP
em que:
NT é a componente da nota relativa a 2 testes escritos, individuais e sem consulta.
NP é a componente da nota relativa a um trabalho prático laboratorial, a realizar em grupos de 2 alunos durante o semestre, e a uma avaliação sumativa decorrente da participação do aluno na resolução de mini-testes (vulgos "quizzes", contando para esta componente de avaliação os melhores 4 de 5).
A componente NT corresponde a 65% da nota final e a componente NP corresponde a 35% da nota final.
A nota da componente NT é calculada da seguinte forma:
NT = 0,20 * NT1 + 0,45 * NT2
em que NT1 é a nota do teste 1 e NT2 é a nota do teste 2, numa escala 0% - 65%.
A nota da componente NP é calculada da seguinte forma:
NP = 0,30 * NTr + 0,05* NA
em que NTr é a nota do trabalho prático laboratorial (projecto) e NA é a nota da avaliação sumativa (quizzes).
Trabalhos prático:
O trabalho prático é realizado em grupos de dois alunos do mesmo turno, durante parte de algumas aulas e fora das aulas.
Se se detectar que: (i) um trabalho não foi realizado apenas pelos alunos que o entregaram; ou (ii) que um aluno entregou um trabalho que não realizou; ou (iii) que a distribuição das tarefas pelos membros do grupo não foi equilibrada, esse trabalho é anulado e, nesse caso, nenhum dos elementos do(s) grupo(s) obtém aprovação na disciplina.
Frequência:
Obtém frequência à disciplina o aluno que tenha uma nota superior ou igual a 9.5 no trabalho prático laboratorial (projecto).
O aluno sem frequência é excluído do exame de recurso.
Frequências anteriores:
Os alunos que tenham obtido frequência até duas edições da cadeira anteriores (ou, seja, até à edição da cadeira de 2012/13) mantêm-na na presente edição. No entanto, para efeitos de avaliação neste semestre, caso entreguem o trabalho prático laboratorial perdem a frequência anterior. Nesse caso, aplicam-se as regras de avaliação definidas para alunos sem frequência.
Exame final:
NE é a nota obtida em exame final (i.e., época de recurso), na presente edição da disciplina. Tem o mesmo peso, para o cálculo da nota final (NF), que os 2 testes: 65%.
Nota final:
O aluno com frequência obtém aprovação se ambas as notas NF e NT2 forem superiores ou iguais a 9.5.
Para alunos com frequência anterior válida (ou seja, até à edição da cadeira de 2012/13), há 2 cenários alternativos: (1) comparecer aos 2 testes para obtenção de NT; ou ir a exame para obter a NE. A nota final é calculada utilizando na fórmula para o cálculo de NF:
NF = NT + NP se compareceram aos 2 testes, NT >= 9.5 (escala 0-20) e NT2 >= 9.5 (escala 0-20), ou NF = NE + NP se compareceram ao exame de recurso e NE >= 9.5.
O aluno obtém aprovação se NF >= 9.5.
Melhoria de nota:
Os alunos que tenham obtido aprovação na avaliação contínua deste semestre podem usar o exame de recurso para melhorar a nota final. Nesse caso, a nota de exame NE substitui a nota NT na fórmula de cálculo de NF. Como requisito de melhoria de nota, estabelece-se que a nota NE seja superior ou igual a 9.5.
As melhorias de nota, para os alunos que obtiveram aprovação num semestre anterior, a nota final será a nota obtida no exame de recurso (NF = NE).
Observação: As classificações relativas a testes e demais elementos de avaliação são expressas num escala de 0 a 20, arredondadas às centésimas.