Saltar para:
Logótipo
Você está em: Início > CC2013
Mapa das Instalações
FC6 - Departamento de Ciência de Computadores FC5 - Edifício Central FC4 - Departamento de Biologia FC3 - Departamento de Física e Astronomia e Departamento GAOT FC2 - Departamento de Química e Bioquímica FC1 - Departamento de Matemática

Laboratório de Programação

Código: CC2013     Sigla: CC2013     Nível: 200

Áreas Científicas
Classificação Área Científica
OFICIAL Ciência de Computadores

Ocorrência: 2015/2016 - 2S

Ativa? Sim
Unidade Responsável: Departamento de Ciência de Computadores
Curso/CE Responsável: Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
MI:ERS 105 Plano Oficial desde ano letivo 2014 2 - 6 42 162

Língua de trabalho

Português

Objetivos

Consolidação dos conhecimentos de programação estruturada através da realização de dois projetos de pequena e média dimensão.

Resultados de aprendizagem e competências

Ao concluírem esta unidade curricular os estudantes deverão ser capazes de:
- utilizar bibliotecas já existentes com base na documentação de APIs
- desenvolver programas modulares com interfaces entre componentes bem documentadas
- escrever testes unitários simples baseados em invariantes de estruturas de dados
- utilizar um ambiente de desenvolvimento (IDE) 
- utilizar um sistema de controlo de versões para coordenar trabalho em equipa

Modo de trabalho

Presencial

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

Programação imperativa e funcional

Programa

Revisões sobre programação em Java. Classes, objetos e packages. Arrays e "strings". Visiblidade e modificadores de acesso. Construtores e encapsulamento. Métodos e atributos estáticos. A classe "Object". Cuidados com herança. Classes vs. Interfaces. Enumerações. Cuidados com referências "null". Comparações de igualdade. Cuidados na re-definição de métodos de teste de igualdade.

Programação com genéricos em Java. Inferência de tipos. Classes "wrapper". Interfaces a coleções genéricas da biblioteca standard.

Uso de exceções para tratamento de erros. Lançar e apanha exceções. Exceções "checked" vs. "unchecked ". Recomendações sobre uso de exceções.

Especificação funcional de uma API; noção de pré e pós-condições e invariantes; implementação em Java. Desenvolvimento de testes para validar invariantes simples.

Utilização de um ambiente integrado de desenvolvimento (IDE).  Utilização de um sistema de controlo de versões de código para coordenar trabalho em grupo.



Bibliografia Obrigatória

Reges Stuart; Building Java programs. ISBN: 9780137062904
McConnell Steve; Code complete. ISBN: 0-7356-1967-0

Métodos de ensino e atividades de aprendizagem

Aulas teórico-práticas combinando exposição e discussão; acompanhamento da realização dos trabalho propostos.

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Designação Peso (%)
Exame 25,00
Trabalho laboratorial 75,00
Total: 100,00

Obtenção de frequência

Perde frequência o aluno que não obtenha uma classificação mínima de 40% no conjunto dos dois trabalhos práticos.

Fórmula de cálculo da classificação final

20%*1ºTrabalho + 55%2ºTrabalho + 25% Teste final

São aprovados os estudantes que obtenham uma classificação superior ou igual a 9,5.
Recomendar Página Voltar ao Topo
Copyright 1996-2024 © Faculdade de Ciências da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2024-07-27 às 23:26:40 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias