Scc-504(mello)
VEJA no Jupiter-web: [a ementa]
1.o Semestre de 2010
Material disponível [aqui]
Site de submissão de trabalhos
Provas
P1 - 27/04/2010
Para submeter trabalhos:
- cadastre-se no site
- matricule-se na disciplina (vocês terão acesso por meio do link Matrícula)
- submetam o trabalho Zipado pelo link correspondente
Trabalhos
Trabalho 1 - em sala
Trabalho 2 - entregar um arquivo Zipado até 14/03/2010 à meia-noite (SOMENTE via Site de Submissão de Trabalhos)
ATENÇÃO: A correção do trabalho 2 (ex0 no site de submissão) já foi finalizada. Qualquer dúvida, entre em contato com o estagiário PAE.
Alunos Sorteados para apresentação:
- 5889196 - Alexandre Koji Imai Negrao (ok)
- 6447138 - André Ogura Dantas (ok)
- 6516076 - Bruno Teles Lino Begotti (ok)
- 6792371 - Daniel Luiz de Albuquerque (ok)
- 6748523 - Daniel Nacata (ok)
- 5634462 - Debora Midori Kataoka (ok)
- 6552021 - Eugenia de Jesus Papa (ok)
- 3335207 - Marcelo Kannami Gimenez (ok)
- 5889279 - Thales C. Barbosa dos Santos (ok)
- 6248762 - Thomaz Alberto de Matos Lázaro (NÃO APRESENTOU)
Trabalho 3 - entregar um arquivo Zipado até 04/04/2010 à meia-noite (SOMENTE via Site de Submissão de Trabalhos)
ATENÇÃO: A apresentação do trabalho 3 (ex1 no site de submissão) deve ser feita até o dia 28/05/2010.
Alunos Sorteados para apresentação:
- 6792284 - Bruno Derisso Salvini (NÃO APRESENTOU)
- 6792371 - Daniel Luiz de Albuquerque (ok)
- 5744739 - Eric Fernando Risteri da Silva (ok)
- 4885930 - Gustavo Moraes da Costa (ok)
- 6792346 - Jader Bruno Pereira Lima (ok)
- 4540410 - Lucas Teixeira (ok)
- 7123917 - Matheus Hemerly Chung Nin (ok)
- 6876008 - Paula Castro Junqueira Paranaiba (ok)
- 6511175 - Pedro Ernesto Scotton (NÃO APRESENTOU)
- 4197025 - Rafael Mira de Oliveira Libardi (ok)
Trabalho 4 - entregar um arquivo Zipado até 09/05/2010 (**DATA FOI ALTERADA**) à meia-noite (SOMENTE via Site de Submissão de Trabalhos)
APRESENTAÇÃO: 10/06/2010 - 16:00 às 19:00 (Local: Sala 6-206 - Biocom)
- 6552035 - Aline Abreu
- 6792325 - Allan Chbane Bosso
- 6909518 - Anita Reane Caron
- 6516076 - Bruno Teles Lino Begotti
- 6511182 - Camila Picon
- 6792371 - Daniel Luiz de Albuquerque
- 6553547 - Henrique Tadeu de Pina Jayme
- 6792093 - Luiz Antonio de Menezes Filho
- 5789308 - Marcio do Amaral Nishiyama
- 4197025 - Rafael Mira de Oliveira Libardi
Trabalho 5 - entregar um arquivo Zipado até 16/05/2010 à meia-noite (SOMENTE via Site de Submissão de Trabalhos)
APRESENTAÇÃO: 17/06/2010 - 16:00 às 19:00 (Local: Sala 6-206 - Biocom)
- 6447138 - André Ogura Dantas
- 6516076 - Bruno Teles Lino Begotti
- 6792332 - Laís Zagatti Pedro
- 4540410 - Lucas Teixeira
- 6792134 - Lucas Vido
- 6792093 - Luiz Antonio de Menezes Filho
- 7123917 - Matheus Hemerly Chung Nin
- 6792270 - Rafael Ribaldo
- 6783457 - Raimundo de Araujo Pereira Santos
- 5631581 - Vitor Pucciarelli Antloga
Trabalho 6 (trabalho final) - entregar um arquivo Zipado até 27/06/2010 à meia-noite (SOMENTE via Site de Submissão de Trabalhos) -- descrição do trabalho no site de submissões.
Horário de Atendimento
Rodrigo - sala 3-162 - terças das 16h-19h
Augusto (Estagiário PAE) - sala 6-206 (CISC/Laboratório Biocom)- quintas das 16h-19h
Plano de Aulas
Apresentar ementa
Questões sobre Ponteiros
- Endereçamento de máquinas de 32 bits
- Tamanho de um ponteiro
- Exemplos de ponteiros para cadeias de caracteres, inteiros e chars
- Casting para ponteiro char* onde foi armazenado um inteiro
- Observação de binários na memória
- Incremento/Decremento em ponteiros e no conteúdo desses ponteiros
Onde obter o compilador C++ e Java?
- Compilador e Máquina Virtual Java
- GNU C++
Diferenças entre Paradigma Imperativo e Orientado a Objetos
- Classes são entidades em um sistema
- Deve-se "pensar" em um sistema em função de suas entidades e não mais em funções de procedimentos
- Visão inicial sobre classes e objetos (comparação com structs)
- Conduzir exemplos iniciais de classes em C++ e Java tais como (escolher somente um): Celular, Pessoa, Veículo, Livro, Vector, Stack, Ponto
Conceitos I
- Discutir sobre entidades no sistema de bibliotecas
- Implementar algumas entidades: Livro, Revista (incluir sets e gets)
- Conceito (ainda) sobre armazenar essas entidades em um Vector (malloc e realloc/free)
Conceitos II
- Discutir sobre grande número de sets em entidades da biblioteca -> chegar em construtores
- Implementar construtores
- Discutir sobre destrutores em C++ e Java (ressaltar diferenças)
- Implementar destrutores em C++ (malloc/free; new/delete)
Conceitos III
- Modelagem UML do sistema de biblioteca
- Usar Vector para armazenar Livro na biblioteca (Vector de Livro)
- Fazer inserir, remover e listar Livro da biblioteca
- Usar Vector para armazenar Usuários na biblioteca (Vector de Usuários)
- Vector void * genérico
Resolução
- Resolver Calculadora em C++ e Java
- Usar expressões regulares para verificar entrada da biblioteca
- Rever conceitos
Conceitos IV
- Encapsulamento e Heranca
- Quando uma heranca é válida?
- Experimentos com C++:
- Acesso via main -- criar uma classe com private e public --> testar a classe usando main
- Acesso via outra classe -- criar uma segunda classe --> testar essa nova classe que acessa metodos e variaveis da primeira
- Acesso via classe Filha -- Fazer heranca e testar private e public
- Acesso via classe Filha -- Fazer heranca e testar protected
- Detalhes de heranca em C++
- Experimentos com Java:
- private, protected e public
- criar classes para testar acesso private, protected e public
- Fazer heranca e testar com private, protected e public
- Resumir conceitos de encapsulamento e relembrar em C++ e Java
- Resumir conceitos de heranca e quando ela é válida
Conceitos V
- Template para o Vector
- Chegar em Herança para Vector / Polimorfismo de herança
- Autocasting para inserir no vector / Cast manual para converter objetos tirados do Vector
Conceitos VI
- this e super (super para chamar construtor da superclasse pode ser utilizado somente no construtor da subclasse)
- métodos e variáveis static
- herança múltipla
Adicionais I
- argc e argv / args
- instanceof e typeid
- includes circulares
Revisão