| 06mar | (4) | Apresentação da disciplina. Contextualização: modelo conceitual; processos de abstração e representação. |  |
| 08mar | (2) | Histórico sobre linguagens de programação. |  |
| 13mar | (4) | Conceitos básicos de programação orientada a objetos: classes e objetos; atributos; métodos, argumentos e parâmetros (troca de mensagens). |  | L1 |
| 15mar | (2) | Conceitos básicos de programação imperativa: algoritmos e programas. Processo de edição, compilação e execução. Variáveis e tipos de dados. |
| 20mar | (4) | Algoritmo. Fluxograma. Pseudocódigo. Teste de mesa. Comando de atribuição. Operadores aritméticos e lógicos. |  |
| 22mar | (2) | Comando de atribuição. Operadores aritméticos e lógicos. |
| 27mar | (4) | Operadores aritméticos e lógicos. Estruturas de sequenciação. |  |
| 29mar | (2) | Estruturas de sequenciação. Estruturas de decisão simples e composta. |  | L2 |
| 03abr | (4) | Estruturas de decisão simples e composta. Constantes e enumerações. Introdução a estruturas de repetição |  |
| 05abr | (2) | Estruturas de repetição. |
| 10abr | (4) | Exercícios de revisão e atividades em laboratório. |
| 12abr | (2) | Primeira avaliação. |
| 17abr | (4) | Coleções unidimensionais. |  |
| 19abr | (2) | Coleções unidimensionais. Coleções bidimensionais. Strings. | | L3 |
| 24abr | (4) | Algoritmos em vetores (estatísticas, ordenação simples, ...). |  |
| 26abr | (2) | Exercícios em laboratório. |
| 01mai | (4) | Dia não letivo (dia do trabalhador). |
| 03mai | (2) | Algoritmos em matrizes. |
| 08mai | (4) | Algoritmos em matrizes. |
| 10mai | (2) | Outras aplicações. |
| 15mai | (4) | Exercícios em laboratório. |
| 17mai | (2) | Segunda avaliação. |
| 22mai | (4) | Encapsulamento e ocultamento de informações. Hierarquia de especialização/generalização. Herança. Sobreposição de métodos (overriding). Sobrecarga de métodos (overloading). Polimorfismo. Classes abstratas. |  |
| 24mai | (2) | Encapsulamento e ocultamento de informações. Hierarquia de especialização/generalização. Herança. Sobreposição de métodos (overriding). Sobrecarga de métodos (overloading). Polimorfismo. Classes abstratas. |
| 29mai | (4) | Introdução a outros tipos de coleções em Java (listas, conjuntos e mapas/dicionários). |  | L4 |
| 31mai | (2) | Introdução a outros tipos de coleções em Java (listas, conjuntos e mapas/dicionários). |
| 05jun | (4) | Introdução a tratamento de exceções. Introdução à persistência de dados (arquivos). |  |
| 07jun | (2) | Exercícios em laboratório. |
| 12jun | (4) | Introdução a interface gráfica (arquivos). |  |
| 14jun | (2) | Exercícios em laboratório. |
| 19jun | (4) | Revisão de conteúdo. Resolução de listas de exercícios. |
| 21jun | (2) | Terceira avaliação. |
| 26jun | (4) | Aplicações de modelos de objetos. |
| 28jun | (2) | Aplicações de modelos de objetos. |
| 03jul | (4) | Avaliação substitutiva. |