Programação III › 47213

código no paco
47213
área científica
Informática / Ciência e Tecnologia da Programação
créditos
8
escolaridade
ensino teórico-prático (TP) - 3 horas/semana
ensino prático e laboratorial (PL) - 2 horas/semana
idioma(s) de lecionação
a inserir brevemente
objectivos

No final desta disciplina os alunos deverão estar habilitados a:

  • Decomporem problemas computacionais segundo o paradigma de orientação por objectos (POO).

  • Construírem programas em linguagem Java usando extensivamente as características de POO: Encapsulamento, Polimorfismo e Herança.

  • Desenharem software robusto recorrendo a excepções.

  • Construírem colecções genéricas.

  • Utilizarem as colecções já disponíveis na linguagem Java.

competências

No final desta disciplina os alunos deverão estar habilitados a:

  • Decomporem problemas computacionais segundo o paradigma de orientação por objectos (POO).

  • Construírem programas em linguagem Java usando extensivamente as características de POO: Encapsulamento, Polimorfismo e Herança.

  • Desenharem software robusto recorrendo a excepções.

  • Construírem colecções genéricas.

  • Utilizarem as colecções já disponíveis na linguagem Java.

conteúdos
  1. Introdução: metodologias de software; POO.

  2. Programação por Objectos em Java: Conceitos principais: Encapsulamento (classes e objectos), Herança e Polimorfismo.

  3. Classes e objectos: atributos e métodos; sobreposição de nomes de métodos;  construtores e destrutor; atributos e funções estáticas.

  4. Herança: classes base e derivadas; herança simples; redefinição e sobreposição de métodos e variáveis; final, this, super; herança múltipla.

  5. Polimorfismo: generalização versus especialização; ligação estática e ligação dinâmica; classes abstractas.

  6. Interfaces, Classes internas

  7. Excepções: as palavras chave try, catch, finally, throws e throw; tipos de excepções e herança de excepções.

  8. Entrada e saída de dados: streams, compressão, serialização

  9. Swing e programação por eventos

  10. Padrões: Singleton, Fábrica, Decorador; composição versus herança.

  11. Classes genéricas: modelos e herança; modelos para colecções; iteradores.

  12. Colecções Java: Vector, Stack, ArrayList, Hashtable, HashMap, LinkedList, ...

avaliação

A avaliação da disciplina de Programação III (P III) terá duas componentes:

  • Avaliação Teórica - 50%
    - 15% para um teste intercalar teórico-prático
    - 35% para o exame final

  • Avaliação Prática - 50%
    - 20% correspondentes ao desempenho nas aulas e nos trabalhos
    - 30% para um exame prático final a efectuar na última aula do semestre

A nota mínima para cada uma das duas componentes (teórica e prática) é de 7 valores.

requisitos
Conhecimentos introdutórios de programação e de estruturas de dados e algoritmos
metodologia

As aulas teóricas têm um carácter expositivo, ilustrado, sempre que possível, com exemplos de aplicação.

As aulas práticas decorrem em laboratório de computadores e consistem no desenvolvimento de pequenos programas que modelam situações concretas.

bibliografia base
"Thinking in Java", Bruce Eckel, http://www.mindview.net/Books/TIJ/
bibliografia recomendada
  • "Thinking in Java", Bruce Eckel, http://www.mindview.net/Books/TIJ/
  • "Effective Java Programming Language Guide", Joshua Bloch.
  • "Java in a Nutshell", David Flanagan.
  • "Head First Design Patterns", Elisabeth Freeman.
  • "Java 5 e Programação por Objectos", F. Mário Martins, FCA.
Este sítio web utiliza cookies sem recolher informação pessoal que permita a identificação dos utilizadores. Ao navegar neste sítio está a consentir a sua utilização.saber mais
Para que esta página funcione corretamente deve ativar a execução de Javascript. Se tal não for possível, algumas funcionalidades poderão estar limitadas.