Métodos Avançados de Programação

(Design Orientado a Objeto)

Período: 2002.2

As Pessoas A Disciplina A Avaliação Outros
Professor Objetivos Forma de avaliação Datas Importantes
Monitor Programa Notas dos Alunos Lista de Discussão
Alunos Plano de Aulas Avaliação da disciplina Recursos
  Bibliografia Projeto  
  Material da disciplina (html on-line) Auto Avaliação  
  Material da disciplina (html zipado)    
  Material da disciplina (pdf) Gabaritos  

Professor: Jacques Philippe Sauvé

Horários das Aulas e de Atendimento a Alunos pelo Professor

Monitor: Não há

Alunos

Aluno Observação
Adilton Angelo Seixa Magalhães  
Adriano Laurentino da Silva Pinto  
Airon Fonteles da Silva  
Ana Emília Victor Barbosa  
Ana Isabella Muniz  
Ayran Leite Cruz  
Brunno Giordano Mello Silva  
Cleidson Santos Barreto  
Danilo Alexandre  
Daralan Araújo dos Santos  
Eduadro de Lima Tavares  
Fernando A. Dias da Costa  
Filipe Teixeira Marques  
Flávio Ossen Lagrado  
Francisco Rodrigues de Azevêdo Neto  
Francisco Wellber Lucena Cabral  
Fúlvio Figueirôa Silvestre  
Gladyston Agra França  
Guilherme Nathanli Ribeiro Beserra  
Laurislândio da Silva Diniz  
Leandro de Lima Lira  
Leonardo Arruda de Mattos  
Lisandro de Brito Jordão  
Loreno Feitosa de Oliveira  
Marcos Luiz Lins Filho  
Mário Cardoso Simões de Fa...  
Maurício Marinho Formiga  
Michael Angelo Henriques da Silva  
Mônica Lopes Muniz Corrêa  
Paulo Eduardo S. Barbosa  
Paulo Marcelo F. M. Leite  
Rodrigo de Oliveira Tavares  
Sadi Giorgi P. Gitz  
Sandro Roberto Loiola Mene...  
Uirá Henriques de Melo  
Vanderson Botêlho  
Wagner de Souza Porto  
Yuska Paola Costa Aguiar  

Plano de Aulas

Dia Planejado Dia Realizado

Assunto

1

30/10/2002

  Verificar habilidade de programação dos alunos (se sabem OO, se programam muito, em que linguagens)

Você tem que gostar de programar para fazer essa disciplina!

Anunciar URL da disciplina: http://jacques.dsc.ufpb.br/cursos/2002.2/map
Pegar lista de alunos com e-mail
Falar da auto-avaliação
Pedir para não imprimir nas impressoras da Universidade
Avisar para todos olharem as datas importantes
Objetivos da disciplina
Programa da disciplina
Trabalhos e critérios de avaliação
Apresentação do projeto

1. Facetas da Reusabilidade de Software

2

4/11

 

2. Design Patterns

2.1 O que são Design Patterns?
2.2 Elementos essenciais de um Design Pattern
2.3 Padrões para atribuir responsabilidades: Expert
2.4 Padrões para atribuir responsabilidades: Creator

3

6/11

 

2.5 Padrões para atribuir responsabilidades: Baixo Acoplamento
2.6 Padrões para atribuir responsabilidades: Alta Coesão

4

11/11

 

  [Buffer de contingência para as aulas]
5

13/11

 

 

2.7 Design Pattern básico: Interfaces e polimorfismo
2.8 Design Pattern básico: Herança versus composição

6

18/11

 

2.9 Padrões arquiteturais: Camadas, partições, MVC

7

20/11

 

2.9 Padrões arquiteturais: Camadas, partições, MVC

8

25/11

 

2.10 Design Pattern: Factory Method
2.11 Design Pattern: Singleton

9

27/11

  [Buffer de contingência para as aulas]

10

2/12

 

2.12 Design Pattern: Abstract Factory
2.13 Design Pattern: Iterator

11

4/12

 

2.14 Design Pattern: Composite

12

9/12

 

2.15 Design Pattern: Visitor
2.16 Design Pattern: Strategy

13

11/12

 

[Buffer de contingência para as aulas]

14

13/01/2003

 

2.17Design Pattern: Decorator
2.18Design Pattern: Template Method

15

15/01

 

16

20/01

 

17

22/01

 

2.20Comentários finais sobre Design Patterns

18

27/01

 

3. Software Baseado em Componentes

3.1 O que são componentes?

19

29/01

 

3.2 Aspectos técnicos do desenvolvimento baseado em componentes

20

3/02

  [Buffer de contingência para as aulas]

21

5/2

 

3.3 Construção de componentes: JavaBeans

22

10/2

 

3.3 Construção de componentes: JavaBeans

23

12/2

  Voltando ao capítulo 3, sobre Componentes.

j2ee1.1 Introdução e Motivação: Arquiteturas em n Camadas

24

17/2

 

j2ee1.2 A arquitetura J2EE

25

19/2

  [Buffer de contingência para as aulas]
26

24/2

 

j2ee1.3 Desenvolvimento de Aplicações J2EE: Papeis, Composição e Deployment

27

26/2

  4. Frameworks

4.1 O que é um framework?
4.2 Vantagens e desvantagens no uso de frameworks
4.3 Tipos de frameworks
4.4 Uma lista de frameworks

28

10/3

 

4.5 Detalhamento de um framework horizontal: JUNIT

29

12/3

 

4.7 Construção de frameworks: Um processo evolutivo

30

17/3

  [Buffer de contingência para as aulas]
31

19/3

  Prova Final

Avaliação

A avaliação será feita através de:

O curso é baseado em grande parte num projeto de desenvolvimento envolvendo os assuntos do curso. Poderá formar equipe com uma (e apenas uma) pessoa. O projeto é importante e você deverá trabalhar duro para completá-lo. É assim que vai aprender algo.

O projeto será avaliado através de 5 milestones distintos. Os detalhes do que deve ser entregue para o professor estão aqui.

Os pesos atribuídos aos vários eventos de avaliação são indicados abaixo. Perde-se 5% do valor da nota dada a um milestone do projeto para cada dia de atraso na entrega.

Evento de avaliação

Peso

Minitestes 70%
Milestone 1 6%
Milestone 2 6%
Milestone 3 6%
Milestone 4 6%
Milestone 5 6%

Datas Importantes

Milestones entregues via e-mail para jacques@dsc.ufcg.edu.br, até a meia-noite do dia indicado abaixo.

Milestone 1 Domingo, 1/12/2002
Milestone 2 Terça-feira, 14/1/2003
Milestone 3 Domingo, 9/2/2003
Milestone 4 Domingo, 25/2/2003
Milestone 5 Domingo, 16/3/2003