Mudanças entre as edições de "SCC-204(Moacir)"

De CoteiaWiki
(Conteúdo e Material Didático)
 
(114 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
 
''' SCC-0204 Programaçao Orientada a Objetos '''
 
''' SCC-0204 Programaçao Orientada a Objetos '''
  
Terça as 14h20 e Sexta as 10h10 - Sala 5-003
+
Terças as 16h20 (sala 4-003)
  
:'''Professor''': Moacir Ponti Jr (moacir ''at'' icmc usp br), Sala 4-117
+
Sextas as 08h10 (sala 5-004)
: Horário de atendimento: Quintas das 16h às 19h
 
  
:'''Aluno PAE''': Ricardo Ramos (ricardoramos ''[arroba]'' icmc usp br)
+
:'''Professor''': Moacir Ponti Jr (moacir ''at'' icmc usp br), Sala 3-245
: Atendimento por demanda - procurá-lo ou enviar email para marcar
+
: ''Horário de atendimento'': Quartas das 17h às 18h - Quintas das 16h as 18h
  
:'''Monitor especial''': Eduardo Henrique dos Santos (eduhsbc ''[arroba]'' grad icmc usp br)
+
:'''Monitor''': Samuel G. Fadel ( fadel ''[arroba]'' grad icmc usp br)
: Aulas de laboratório com exercícios: Quartas das 13h as 14h, sala 6-305 (bloco 6) ('''nova informação''')
+
: ''Horário de monitoria'': Quintas das 18h às 19h (Lab 7 bloco 6)
 +
 
 +
'''Material, gerencimento da disciplina no TIDIA-AE''' [http://agora.tidia-ae.usp.br/portal]
  
 
== Exercícios ==
 
== Exercícios ==
* [[Media:poo_ListaExercicios_01.pdf‎|Exercício 1 (pdf)]] - livros e capítulos de livros
+
* [[Media:poo_ListaExercicios_01.pdf‎|Exercício 1 (pdf)]] - livros e capítulos de livros: coleções de objetos
 +
* [[Media:poo_ListaExercicios_02.pdf‎|Exercício 2 (pdf)]] - produtos: polimorfismo
 +
* [[Media:poo_ListaExercicios_04.pdf‎|Exercício 4 (pdf)]] - pegadas de carbono: interfaces e classes abstratas
 +
* [[Media:poo_ListaExercicios_05.pdf‎|Exercício 5 (pdf)]] - instanciando objetos via interface gráfica
 +
* [[Media:poo_ListaExercicios_06.pdf‎|Exercício 6 (pdf)]] - tratamento de exceção
 +
* [[Media:poo_ListaExercicios_07.pdf‎|Exercício 7 (pdf)]] - threads
 +
* [[Media:poo_ListaExercicios_08.pdf‎|Exercício 8 (pdf)]] - projeto orientado a objetos
 +
* [[Media:poo_ListaExercicios_09.pdf‎|Exercício 9 (pdf)]] - redes
  
== Trabalhos Práticos ==
+
== Links e recursos externos ==
  
=== Critérios de avaliação ===
 
# Observação dos conceitos de orientação a objetos, projeto das classes e relação entre elas
 
# Boas práticas de programação: endentação, uso das estruturas de controle e variáveis
 
# Documentação da classe e dos métodos, comentários úteis no código
 
# Cumprimento dos objetivos e tarefas requeridas no enunciado
 
 
=== Descrição e informações ===
 
* [[Media:poo_Trabalho1.pdf‎|Trabalho 1 (clique para ver a descrição)]]: modelagem e implementação orientada a objetos
 
** '''Individual'''
 
** Implementação em '''C++'''
 
** Entrega até '''31/03'''
 
** Sorteio para apresentação: [[Media:poo_Trabalho1_Apresentacao.pdf‎|Tabela de Apresentação]]
 
** Critérios (75+15+15%):
 
:: 1) Estruturação das classes, e conceitos de orientação a objetos ''com cumprimento dos objetivos do trabalho'': total ''70%''
 
::: - será principalmente observada a modelagem das ''entidades'' (classes) que formam a solução para o problema (30%), o uso da coleção de objetos e iteradores (15%) , uso correto de herança e encapsulamento (25%).
 
:: 2) Separação da interface e implementação (uso de cabeçalho/fonte) (7,5%) e documentação das classes e métodos (7,5%): total ''15%''
 
:: 3) Clareza, endentação e comentários úteis no código: total ''15%''
 
 
== Provas ==
 
 
'''Datas:''' 03/05 (P1), 28/06 (P2)
 
 
== Notas ==
 
 
== Conteúdo e Material Didático ==
 
:1. [[Media:poo_00.Apresentacao.pdf|Apresentação da Disciplina: objetivos, programa, materiais, avaliação e bibliografia]].
 
:: '''Introdução à Programação Orientada a Objetos'''
 
:: - Classe e objeto, implementações em C++ e Java
 
:: - Comparação com paradigma imperativo
 
:: - Compilação e execução em C++ e Java
 
:: ''Bibliografia sugerida:'' Deitel, seções 3.1 a 3.5, Slides Prof. Fernando Paulovich: [http://www.lcad.icmc.usp.br/~paulovic/aulas/POO/SCC0604-aula-01-Introducao_OO.pdf]
 
:2. '''Detalhes de Implementação''': C++ e Java
 
:: - Ponteiros e endereçamento
 
:: - Alocação dinâmica e estática de objetos em C++
 
:: - Projeto e diagramas de classe e objeto: estado/comportamento
 
:: - Alocação de objetos em Java e referência nula
 
:: - Passagem de parâmetros para métodos em Java
 
:: - BlueJ e Máquina virtual Java (JVM)
 
:: ''Bibliografia sugerida:'' Deitel, seções 3.6 a 3.8, Slides Prof. Fernando Paulovich: [http://www.lcad.icmc.usp.br/~paulovic/aulas/POO/SCC0604-aula-02-Classes_Objetos.pdf]
 
:: ''Figuras JVM:'' [http://www.codeproject.com/KB/java/How_JVM_Works/JVM2.png] e [http://img.viralpatel.net/2008/12/java-program-execution.png]
 
:: ''Exemplos das aulas 1 e 2'': [[Media:aula02.tar.gz|aula02.tar.gz]]
 
:3. '''Main, Construtores, Destrutores e Interação entre Objetos'''
 
:: - função principal (main) em Java e C++
 
:: - múltiplos setters -> construtores
 
:: - objeto: declaração, instanciação e inicialização
 
:: - implementar construtores em C++
 
:: - destrutores em C++
 
:: - uso de new/delete
 
:: - implementar construtores em Java
 
:: ''Exemplos da aula 3'': [[Media:aula03.tar.gz|aula03.tar.gz]]
 
:4. '''Introdução ao Projeto Orientado a Objetos'''
 
:: - interação entre objetos -> exemplos em Java e C++
 
:: - diagramas de classe e objeto
 
:: - exercício
 
:: - exemplo de projeto de duas classes com implementação: C++ e Java
 
:: ''Exemplos da aula 4'': [[Media:aula04.tar.gz|aula04.tar.gz]]
 
:5. '''Detalhes de implementação: constantes, estáticos e tipos''': parte1
 
:: - constantes
 
:: - tipos primitivos e classes Wrapper em Java [http://www.certpal.com/blogs/2011/02/java-immutable/]
 
:: - atributos e métodos ''static'' em Java
 
:: ''Exemplos da aula 5'': [[Media:aula05.tar.gz|aula05.tar.gz]]
 
:6 '''Detalhes de implementação: constantes, estáticos''': parte 2 e '''Coleções de Objetos'''
 
:: - constantes e static em C++
 
:: - pacotes Java
 
:: - coleção de objetos
 
:: - exemplo usando os conceitos vistos ate agora
 
:: ''Exemplos da aula 6'': [[Media:aula06.tar.gz|aula06.tar.gz]]
 
:7, 8 e 9. '''Conceitos de Orientação a Objetos - Herança''': parte 1
 
:: - encapsulamento, super e subclasse, herança
 
::: - criação de novos atributos e métodos (subclasse mais específica)
 
:: - em Java, ''exemplo da aula 7'', desenvolvida no BlueJ: [[Media:aula07.tar.gz|aula07.tar.gz]]
 
:: - construtores e herança
 
:: - vários níveis de herança (atributos protegidos e construtores)
 
:: - sobrescrita de métodos, e sobrecarga de métodos e construtores
 
:: - polimorfismo em C++ e Java
 
:: ''Exemplos da aula 8: [[Media:aula08.tar.gz|aula08.tar.gz]]
 
:10 e 11. '''Conceitos de Orientação a Objetos - Herança''': parte 2
 
:: - herança múltipla em C++
 
:: - exemplos e exercícios
 
:12 e 13. '''Classes abstratas, interaces e programação genérica'''
 
:14 e 15. '''Herança e abstração''': exercícios e exemplos
 
 
== Leituras complementares e links ==
 
 
* Documentação Java da SUN/ORACLE [http://java.sun.com/javase/6/docs/api]
 
* Documentação Java da SUN/ORACLE [http://java.sun.com/javase/6/docs/api]
 
: -> acesse [http://www.oracle.com/technetwork/java/javase/downloads/index.html] vá em "Additional resources" para baixar a documentação (Java SE 6 Documentation) e o código fonte das classes (Java JDK source code)
 
: -> acesse [http://www.oracle.com/technetwork/java/javase/downloads/index.html] vá em "Additional resources" para baixar a documentação (Java SE 6 Documentation) e o código fonte das classes (Java JDK source code)
 
* Download do BlueJ [http://www.bluej.org/download/download.html]
 
* Download do BlueJ [http://www.bluej.org/download/download.html]
 
* Exemplos do livro do Barnes para uso em BlueJ [http://wps.prenhall.com/br_barnes_java_4/110/28281/7240157.cw/index.html]
 
* Exemplos do livro do Barnes para uso em BlueJ [http://wps.prenhall.com/br_barnes_java_4/110/28281/7240157.cw/index.html]
 +
 +
=== Apostila ===
 +
 +
* [[Media:ApostilaMakefiles2011.pdf|Criação de Bibliotecas e Makefiles em C/C++]]

Edição atual tal como às 13h29min de 9 de março de 2012

SCC-0204 Programaçao Orientada a Objetos

Terças as 16h20 (sala 4-003)

Sextas as 08h10 (sala 5-004)

Professor: Moacir Ponti Jr (moacir at icmc usp br), Sala 3-245
Horário de atendimento: Quartas das 17h às 18h - Quintas das 16h as 18h
Monitor: Samuel G. Fadel ( fadel [arroba] grad icmc usp br)
Horário de monitoria: Quintas das 18h às 19h (Lab 7 bloco 6)

Material, gerencimento da disciplina no TIDIA-AE [1]

Exercícios

Links e recursos externos

  • Documentação Java da SUN/ORACLE [2]
-> acesse [3] vá em "Additional resources" para baixar a documentação (Java SE 6 Documentation) e o código fonte das classes (Java JDK source code)
  • Download do BlueJ [4]
  • Exemplos do livro do Barnes para uso em BlueJ [5]

Apostila