Programação 2
Objetivos Gerais
Aprender a programação Orientada a Objeto, estruturas de dados simples e algoritmos
básicos da Ciência da Computação
Objetivos Específicos
- Aprender uma segunda linguagem de programação,
substancialmente diferente daquela usada em Programação 1
- Aprender noções básicas de Orientação a Objeto (OO):
conceito de objetos, tipos de objetos, instanciação, envio de mensagens para objetos,
atributos, encapsulamento, comportamento de objetos, identidade de objetos
- Aprender a usar coleções de objetos
- Aprender a criar novas classes de objetos
- Aprender noções de sobrecarga de métodos
- Aprender a tratar erros através de exceções
- Aprender noções de interfaces (Tipos Abstratos de Dados)
e polimorfismo
- Aprender noções de herança de implementação,
hierarquias de classes, classes abstratas, upcast e downcast
- Aprender noções simples de UML (Unified Modeling
Language)
- Aprender algumas técnicas de reuso através de herança:
programming by difference, override
- Aprender detalhes de controle de encapsulamento através de visibilidade
- Aprender a fazer reuso com composição de objetos,
contrastando a técnica de composição com a técnica de herança
- Aprender regras básicas de design e Design
Patterns básicos
- Aprender algumas estruturas de dados comuns tanto no uso
quanto na implementação
- Aprender regras de escolha de estruturas de dados
- Aprender a utilizar arquivos para a persistência de dados
- Aprender alguns algoritmos básicos de pesquisa e ordenação
- Aprender a apreciar a complexidade computacional de
algoritmos
p2-1 programa