Programa de Ensino 20201
Aprovado pelo Departamento em: 3-8-2020
- Identificação:
- Disciplina: INE5402 - Programação Orientada a Objetos I
- Carga horária: 108 horas-aula
Teóricas: 30
Práticas: 78
- Período:
1º semestre de 2020 até a presente data
- Curso(s):
- Ciências da Computação (208)
- Matemática (223)
- Matemática, Habilitação Bacharelado (222)
- Requisito(s):
- Ementa:
- Algoritmo. Programação de computador. Resolução de problemas usando computador. Linguagem de Programação. Elementos de programação imperativa: variáveis simples, coleções uni e n dimensionais; tipos das variáveis; comandos; procedimentos e funções. Conceitos fundamentais do paradigma de Programação Orientada a Objetos: objeto, atributo, método, classe. Prática de programação usando alguma linguagem de programação orientada a objetos.
- Objetivo(s):
- Geral: Apresentar as noções básicas de programação de computadores capacitando os alunos a analisar problemas de complexidade básica e projetar/desenvolver soluções de software sob a perspectiva de orientação a objetos.
- Específicos:
- Apresentar os conceitos fundamentais da programação orientada a objetos.
- Capacitar o aluno a analisar problemas de complexidade básica, abstraindo, modelando e implementando soluções sob o enfoque de programação orientada a objetos.
- Desenvolver fluência em uma linguagem de programação orientada a objetos.
- Conteúdo Programático:
- CONTEXTUALIZAÇÃO [8 horas-aula]
- Modelo conceitual
- Processos de abstração e representação
- Histórico sobre linguagens de programação
- CONCEITOS BÁSICOS DA ORIENTAÇÃO A OBJETOS [10 horas-aula]
- Classes e objetos
- Atributos
- Métodos, argumentos e parâmetros
- CONCEITOS BÁSICOS DE PROGRAMAÇÃO IMPERATIVA [46 horas-aula]
- Algoritmos e programas
- Processo de edição, compilação e execução
- Variáveis e Tipos de dados
- Comando de atribuição
- Operadores aritméticos e lógicos
- Estruturas de controle
- Estrutura de seqüenciação
- Estruturas de decisão (simples e compostas)
- Estruturas de repetição (condicionais e contadas)
- COLEÇÕES [36 horas-aula]
- Cadeias de caracteres (String)
- Coleções unidimensionais (Array, Lista, Tupla)
- Coleções bidimensionais (Matriz)
- Coleções indexadas (Dicionário)
- MODELO DE OBJETOS [08 horas-aula]
- Comunicação por troca de mensagens
- Encapsulamento e ocultamento de informações
- Hierarquia de agregação/decomposição
- Hierarquia de especialização/generalização
- Herança e Polimorfismo
- Bibliografia Básica:
- SEVERANCE, Charles R. Python para Todos. Publicação Independente, 2020. Disponível em http://do1.dr-chuck.com/pythonlearn
- WAZLAWICK, Raul S. Introdução a Algoritmos e Programação com Python. São Paulo: Elsevier, 2017.
- OLIVEIRA, Jayr F. e MANZANO, José Augusto N. G. Algoritmos. Érica, 2016.
- SOUZA, Marco F. de Souza; et al. Algoritmos e Lógica de Programação. São Paulo: Thomson Learning, 2005.
- Bibliografia Complementar:
- BOOCH, G., Object-Oriented Design. Benjamin/Cumminggs Pub. 1998.
- MEYER, Bertrand. Object-oriented software construction. 2nd. ed. Upper Saddle River, NJ: Prenteice-Hall PTR, 1997.
- RUMBAUGH, James et alii. Modelagem e Projetos Baseados em Objetos. Ed. Campus, 1994.
- WAZLAWICK, Raul S. Análise e Projeto de Sistemas de Informação Orientados a Objetos. São Paulo: Campus. 2004.