SCC 204 - Programação Orientada a Objetos

Ciências de Computação

1º Semestre - 2011

ICMC - USP - São Carlos

 

Professor: José Fernando Rodrigues Júnior - junio at icmc usp br

Horário atendimento do professor: às quartas-feiras, das 16:00 às 19:00 – sala 3-237

 

 

Monitores:

Jhonatan Casale – klauss at grad.icmc.usp.br – atendimento: quartas das 14:00 – 15:30 e das sextas das 16:30 – 18:00, no Lab 6 (3º. Andar do Cisc)

Felipe Duarte - felipelageduarte at gmail com - atendimento via e-mail apenas

 


Divulgação: evento para desenvolvedores muito interessante.

 

The Developer’s Conference, São Paulo, de 06 a 10 de julho – detalhes aqui.

 

 The Developers Conference 2011, um evento organizado pela Globalcode

 

Incluindo: lançamento mundial do Java 7 no dia 07/07, palestras com Tim Bray (Google), Roger Brinkley (Oracle) e Arun Gupta (JavaEE).

 


Índice

Programa
Conteúdo Semanal
Relação dos Projetos
Avaliação
Listas de exercícios
Bibliografia
Links Relacionados


Programa

 

  • Conceitos de Orientação a Objetos
  • Tipos e Classes
  • Identificação de Objetos
  • Abstrações, Generalizações, Instanciação
  • Herança
  • Ocultamento de Informações
  • Polimorfismo
  • Construtores e Destrutores (Garbage Collection)
  • Generics
  • Collections (coleções)
  • Aplicações dos Conceitos de POO
  • Padrões de Projeto
    • Linguagem Java e C++
    • Threads
    • Redes / Interface Socket (?)
    • Applets
    • Metodologia de Análise Orientada a Objeto: Notação UML (apenas uma introdução com diagramas de classe)
  • C++: como os conceitos de POO vistos em Java são aplicados em C++



[Índice]
   


Conteúdo Semanal


Aula 1 – 22/02

·  Apresentação da Disciplina

 

·  Material Necessário para programação

·  Sítios de consulta O B R I G A T Ó R I A !

 

·  Lição de casa

  • Instalar e executar alguns demos do BlueJ
  • Instalar e criar projetos "Hello World!" no Netbeans e/ou Eclipse

 

Aula 2 – 25/02

·  Aspectos interessantes da linguagem Java

·  Material da prof. Renata 1

·  Material da prof. Renata 2

·  Saiba mais sobre UTF

 

Aula 3 – 04/03

·  Classes e Objetos

·  Saiba como usar o depurador JDB

·  Saiba como produzir documentação com o JAVADOC

·  Notação UML para AGREGAÇÃO

 

Aula 4 – 08/03

·  Excelente sítio sobre conceitos em JAVA

·  membros static exemplo

·  Coleta de lixo (garbage collection) e o método finalize() exemplo

·  Herança

·  Momento Zen: você já parou para ver o Ipê Amarelo ao lado da Biblioteca? Não perca

·  Momento cultural 1: Marisa Monte (música de Gil e Caetano)

·  Momento cultural 2: Marisa Monte (música Nando Reis)

·  Momento cultural 3: Marisa Monte (autor desconhecido - cancioneiro popular)

·  Momento cultural 4 (a melhor de todas): Marisa Monte (música de Pixinguinha)

 

Aula 5 – 11/03

·  Polimorfismo: Overriding (Sobrescrita) e Overload (sobrecarga)

·       Exemplo de polimorfismo (1)

·       Exemplo de polimorfismo (2)

·       Momento cultural(se vc tiver um filho de 10 meses!): Turma do cocoricó

 

Aula 6 – 15/03

·  Mais sobre polimorfismo

·       Classes abstratas e Interfaces

·       Interfaces. Diferenças entre Classes abstratas e Interfaces

·       Exemplo de Classe abstrata (1)

·       Exemplo de Classe abstrata (2)

·       Exemplo de Classe abstrata (3)

·       Exemplo de interface (1)

·       Exemplo de interface (2)

·       Exemplo de interface (3)

·       Exemplo de interface (4)

· Material Argonavis InterfacesEClassesAbstratas

· Exemplo de uso de polimorfismo: Dispositivos

· Herança Multipla C++

· Interface VS Classe Abstrata

Aulas 7 – 18/03

· Herança e Herança Múltipla

·       Material didático herança

·       Exercios herança

·       Exercios herança2

·       Exemplo de uso de interfaces: Browsers’ plugins

Aulas 8 e 9 – 22/03 e 25/03

· Interface – continuação

 

· Window Listener e Window Adapter

· Interface – composição

· Exemplo-desempilhamento (stack e heap)


Aulas 1
0 e 11 – 29/03 e 01/04

· Fluxo de Programa e Exceções

Aulas 12 e 13 – 05/04 e 08/04

· Noções de arquivo

 

Aulas 14 e 15 – 12/04 e 15/04

· UML

 

 

Aulas 16 e 17 – 26/04 e 29/04

 

· Introdução a Threads

 

Aula 18 – 03/05 

 

Aula 19 – 06/05

 

Aula 20 – 10/05

 

Primeira prova

 

 

Aula 21 – 13/05

 

Aula 22 – 17/05

 

Aula 23 – 31/05

 

Aula 24 – 03/06

 

Aula 25 – 07/06

 

Aula 26 – 10/06

 

Aula 27 – 14/06

 

Aula 28 – 17/06

  • Desenvolvimento do trabalho

 

Aula 29

  • 2ª. Prova

 

Aula 30

  • Prova sub

 

Projetos/Trabalhos

· Projeto

· Entrega:
  parte 1: 18/04/2011 - NOVA DATA

  parte 2: 20/05/2011 - NOVA DATA
  parte 3: 27/06/2011- NOVA DATA

· Formato de entrega

  • Entregar no formato .zip, .tar.gz, ou .rar
  • Entrega: online via Tidia
  • Trabalhos serão entregues em grupo de duas pessoas ou individualmente
  • Trabalhos podem ser entregues com atraso, mas com "desconto" na nota (via de regra, -1,0 ponto por dia)
  • Trabalhos iguais ou copiados terão a mesma nota => Zero !

· Critérios para avaliação

  • Satisfação aos requisitos, funcionamento correto e estruturação em classes: 90%
  • Documentação externa: 10%


[Índice]
 


Critério de Avaliação. Notas de Provas e Projetos

· Prova 1: 10/05

· Prova 2: 28/06

· Sub: 05/07

 

· Média Final = (Med_Prova + Med_Projetos)/2

  • Se Med_prova E Med_Projetos >= 5,0. Caso contrário, Média Final = MENOR(Med_Prova, Med_Projetos)

· Med_prova = (P1 + P2)/2

· Med_Projetos = (Trab1 + Trab2 + Trab3)/3

  • Se Trab1 E Trab2 E Trab3 >= zero. Caso contrário, Med_Projetos = 0 (ZERO)

· Notas finais

· Notas trabalho 1

· Notas trabalho 2

[Índice]
 


Exercícios

 

 


Bibliografia

H.M. Deitel, P.J. Deitel. - “Java: Como programar” 6a Edição, Pearson Prentice Hall, 2005. http://wps.prenhall.com/esm_deitel_javahtp_6/
Programação Orientada a Objetos com Java. Uma introdução prática usando BLUEJ. David J. Barnes; Michael Kolling. Pearson, 2004
Bruce Eckel - “Thinking in Java” http://www.mindview.net/Books/TIJ/
Cox,B.J. “Object-Oriented Programming”, Addison Wesley, 1986. (Nacional: Makron 1991).
John Lewis, William Loftus - “Java Software Solutions: Foundations of Program Design”, 5/E Addison-Wesley.
2007


[Índice]
 


Links Relacionados