Programação Aplicada de Computadores – 2015/2

Ementa: introdução à programação orientada a objetos: abstrações de dados, classes e objetos, atributos e métodos, reuso de código por composição, reuso por herança, polimorfismo, classes abstratas. Interfaces gráficas: noções de programação concorrente (processos, threads), programação orientada a eventos, componentes de programação gráfica (janelas, painéis, botões, menus), gerenciamento de layout de interfaces gráficas. Utilização de aplicativos gráficos.

Objetivo: projetar e programar usando os conceitos de Programação Orientada a Objetos. Aprender a usar linguagens de programação orientadas a objetos.

Metodologia: aulas expositivas e aulas práticas em laboratório.

Dia/horário das aulas: segundas e quartas-feiras, das 11h às 13h.

Local: CT-12, sala 104 (aulas teóricas), CT-2, LCEE/sala 16 (aulas práticas).

Carga horária semestral: 60 horas.

Mais informações:

Programa detalhado

  1. Orientação a Objetos:
    1. Princípios fundamentais, conceitos básicos e avançados;
    2. Modelagem e projeto orientados a objetos;
  2. Classes e Objetos:
    1. Abstração de Dados;
    2. Classes e Objetos;
    3. Atributos e Métodos;
    4. Encapsulamento e Ocultamento de Informação;
    5. Classes internas;
  3. Herança:
    1. Composição x Derivação;
    2. Herança Simples de Métodos e Atributos;
    3. Sobrescrição de Métodos;
    4. Polimorfismo;
    5. Amarração Dinâmica de Métodos;
    6. Ampliação e Estreitamento de Tipos;
    7. Classes e Métodos Abstratos;
    8. Herança Múltipla;
  4. Genéricos:
    1. Funções e Métodos Genéricos;
    2. Classes Genéricas;
    3. Estruturas de Dados Genéricas;
    4. Genéricos e Herança;
  5. Exceções:
    1. Tipos;
    2. Tratamento;
    3. Lançamento;
    4. Propagação;
    5. Criação;
  6. Tópicos avançados:
    1. Interfaces Gráficas com Usuário;
    2. Programação Orientada a Eventos;
    3. Concorrência e Sincronização;
    4. Estudo de Outras Linguagens de Programação OO.

Sistema de avaliação

A avaliação será constituída de 1 prova (P) valendo 10 e 2 trabalhos computacionais (T1 e T2) valendo 10 cada. A nota parcial será obtida com a seguinte fórmula:

NOTA PARCIAL = (P + T1 + T2) / 3

Alunos que obtiverem nota parcial igual ou superior a 7 não farão prova final, tendo sua nota final igual à nota parcial. Demais alunos terão sua nota final calculada pela média aritmética simples entre a nota parcial e a nota da prova final e deverão obter nota final igual ou superior a 5 para serem aprovados.

Observação: o aluno que tiver mais de 25% (vinte e cinco por cento) de faltas, contadas em relação ao número de horas-aulas previstas para a disciplina, será privado do direito de prestar exame final e estará, independentemente de qualquer outra condição, reprovado. (Art. 51 Regimento CT, art. 104 Regimento Geral Ufes). Além disso, a média final da disciplina será arredondada para valores inteiros ou fração de 0,5, de acordo com o art. 63, parágrafos 1º e 2º do Regimento CT.

Bibliografia

Livros:

A lista de livros da bibliografia complementar está disponível no programa da disciplina arquivado junto à secretaria do Departamento de Informática.

Materiais disponíveis online:

Ambos os livros do Bruce Eckel podem ser obtidos mais diretamente na página de downloads de livros da MindView. É possível chegar a ela usando os links acima, porém este link é mais direto.

Cronograma / Datas importantes

O período 2015/2 inicia em 03/08/2015 e termina em 04/12/2015. A semana de provas finais 2015/2 vai de 07 a 11/12/2015. A tabela abaixo resume eventos importantes durante o curso. O programa de aulas com o cronograma completo do curso é exibido em seguida.

Data Descrição
03/08/2015 Não haverá aula – Semana da Engenharia.
05/08/2015 Não haverá aula – Semana da Engenharia.
10/08/2015 Primeira aula do curso.
01/09/2015 Prazo para definição dos grupos para trabalho prático.
07/09/2015 Não haverá aula – Feriado da Independência do Brasil.
07/10/2015 Prova Parcial.
12/10/2015 Não haverá aula – Feriado de Nossa Senhora Aparecida.
28/10/2015 Não haverá aula – Feriado do Dia do Servidor Público.
02/11/2015 Não haverá aula – Feriado de Finados.
06/11/2015 Prazo para entrega e entrevistas sobre T1.
09/12/2015 Prazo para entrega e entrevistas sobre T2.
14/12/2015 Prova Final.

Download de material

Trabalho prático

Para o trabalho de C++, sugere-se "traduzir" o trabalho Java para C++ classe a classe (a mesma ordem de desenvolvimento do roteiro pode ser usada também neste caso).