Departamento de Informática e Estatística

Programas de Ensino
Visitante (Entrar)

Programa de Ensino 20201

Aprovado pelo Departamento em: 3-8-2020

  1. Identificação: Visualizar em PDF
    • 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
  2. Curso(s):
    • Ciências da Computação (208)
    • Matemática (223)
    • Matemática, Habilitação Bacharelado (222)
  3. Requisito(s):
    • Não há
  4. 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.
  5. 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:
      1. Apresentar os conceitos fundamentais da programação orientada a objetos.
      2. 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.
      3. Desenvolver fluência em uma linguagem de programação orientada a objetos.
  6. 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
  7. 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.
  8. 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.