SCC-504

De CoteiaWiki
Revisão de 20h58min de 23 de março de 2010 por Mello (discussão | contribs)

VEJA no Jupiter-web: [a ementa]

1.o Semestre de 2010

Material disponível [aqui]

Site de submissão de trabalhos

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

NOVO HORÁRO DE ATENDIMENTO DO ESTAGIÁRIO PAE

Augusto Andrade irá atender na sala 6-206 (CISC) nas quintas das 16h-19h.


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)


Horário de Atendimento

Rodrigo - sala 3-162 - terças das 16h-19h

Augusto (Estagiário PAE) - sala 6-206 (CISC/Laboratório Biocom)- quartas 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