OBJETIVOS:
O cumprimento da disciplina busca dar
ao aluno, ao final do semestre, condições de:
1. Compreender os conceitos fundamentais do paradigma de orientação de objetos;
2. Implementar ferramentas de software utilizando uma linguagem orientada a objetos;
3. Continuar os estudos em programação avançada.
EMENTA:
Linguagem de programação
imperativa e bloco-estruturada: subprogramas, recursividade, arquivos, tipos de
dados estruturados, alocação dinâmica de memória. Estruturas avançadas,
pré-processador, modularização. Programação orientada a eventos. Estilo de
programação.
Nº DA UNIDADE: 01
CONTEÚDO: Introdução
1.1 Paradigma de programação orientada a objetos
1.2 Diagrama de classes
1.3 Origens e Características da linguagem
1.4 Ambiente de desenvolvimento e execução
1.5 Expressões e comandos
Nº DA UNIDADE: 02
CONTEÚDO: Abstração e Classes
2.1 Conceito de abstração
2.2 Classes e instâncias
2.2.1. Atributos
2.2.2 Métodos
2.3 Encapsulamento
2.3.1 Declaração e visibilidade de atributos
2.3.2 Declaração e visibilidade de métodos
3.1 Relacionamentos entre Classes
3.2 Construtores
3.3 Sobrecarga
3.5 Atributos e métodos de classe
3.6 Auto-referência
3.7 Modularização (agrupamento de classes relacionadas)
CONTEÚDO: Herança e Interface
4.1 Hierarquia de classes
4.2 Classes abstratas
4.3 Polimorfismo
4.4 Conversão dinâmica de tipos
Nº DA UNIDADE: 05
CONTEÚDO: Tratamento de exceções
5.1 Gerando exceções
5.2 Criando exceções
5.3 Asserções
Nº DA UNIDADE: 06
CONTEÚDO: Sistema básico de E/S
7.1 Fluxos de E/S
7.2 Manipulação de arquivos
Nº DA UNIDADE: 07
CONTEÚDO: Templates
8.1 Funções template
8.2 Classes template
8.3 Derivando classes template