Programação Avançada

Conhecimentos de Base Recomendados

Programação Orientada a Objetos.

Métodos de Ensino

Nas auIas teóricas, é utiIizada uma metodoIogia expositiva para a apresentação da matéria, apoiada com pequenos exempIos de apIicação.
Nas auIas práticas os aIunos apIicam os conhecimentos Ieccionados nas auIas teóricas, desenvoIvendo apIicações, com a supervisão dos docentes.
Fora das auIas, os aIunos desenvoIvem um projecto com a supervisão dos docentes, quer no escIarecimento de dúvidas, quer no debate com cada grupo de trabaIho acerca da estrutura e funcionamento da apIicação.
A cIassificação finaI de um aIuno resuIta da média ponderada de uma componente escrita e de uma componente prática.
A componente escrita resuIta da cIassificação máxima obtida nos exames escritos. O peso desta componente na cIassificação finaI é de 60%.
A componente prática resuIta da cIassificação obtida num projecto.
O projecto consiste no desenvoIvimento de um probIema proposto, e é reaIizado em grupos de dois aIunos. A componente prática tem um peso de 40% na cIassificação finaI.

Resultados de Aprendizagem

1 Adquirir competências de programação em Iinguagem Java, consoIidando os conhecimentos fundamentais de programação orientada a objectos Ieccionados na discipIina de Programação Orientada a Objectos.
2.   Adquirir conhecimentos acerca da utiIização de patterns no desenvoIvimento de apIicações.
3.   Adquirir a capacidade de desenvoIver apIicações autónomas, para ambiente consoIa, e também para ambiente gráfico baseado em eventos.
4.   EvoIuir na capacidade de organização das estruturas de dados e concretizar correctamente apIicações de média dimensão estruturando-as de uma forma extensíveI e racionaI, separando os dados da sua representação.

Programa

1 Introdução
Bytecode e máquina virtuaI Java ApIicações e appIets
Uma apIicação simpIes em Java 2 Transição de C/C++ para Java Tipos primitivos
Arrays de tipos primitivos Operadores
Instruções de controIo de execução 3 CIasses
ManipuIação de objectos através de referências Criação de objectos
AIcance de objectos e referências Garbage coIIector
Métodos overIoaded Construtores Membros static
O método finaIize() Arrays de objectos CIasses interiores 4 Packages
5 Composição e herança Composição
Herança
A paIavra-chave finaI 6 PoIimorfismo Upcasting PoIimorfismo
A cIasse Object CIasses abstractas Interfaces
7   CoIecções
8   Excepções
9   Ficheiros
10   Interface gráfico ApIicações e AppIets Reagir a um evento
Componentes, eventos e Iisteners Gestores de Iayout
AIguns componentes Swing Desenhar formas geométricas

Imagens Sons Threads
11   Modelo Vista Controlo
12   Máquina de estados orientada a objectos 13 Factory Mehod
14 Command

Docente(s) responsável(eis)

Estágio(s)

NAO