Ir para o conteúdo

CCT-UFCA/Matemática Computacional/Programação Orientada a Objetos

De Wikiversidade

Programa do Componente Curricular

[editar | editar código]
Código: MC0004
Componente Curricular: Programação Orientada a Objetos
Semestre de Oferta: 3º Semestre Tipo: Disciplina Caráter: Obrigatória
Unidade Acadêmica Responsável: Centro de Ciências e Tecnologia - CCT
Área: Programação
Créditos: 4 Carga horária: 64 Teórica: 32 Prática: 32 Extensão: -
Pré-requisito: MC0004 - Introdução a Programação
Co-requisito:
Equivalência: CC0019

Objetivos

[editar | editar código]

Apresentar os conceitos básicos e técnicas da programação orientada a objetos.

Conceitos básicos: classes, objetos, mensagens, encapsulamento, herança, polimorfismo. Programação orientada a objetos utilizando uma linguagem de programação orientada a objetos. Tratamento de Exceções. Análise e projeto orientados a objetos. Noções de padrões de projeto de software e linguagem UML.

Conteúdo

[editar | editar código]
  • Fundamentos de POO:
    • Paradigmas de programação: estruturado vs. orientado a objetos.
    • Classes, objetos, atributos e métodos.
    • Mensagens e interação entre objetos.
  • Pilares da POO:
    • Encapsulamento: Modificadores de acesso (public, private, protected).
    • Herança: Classes base e derivadas; sobrescrita de métodos.
    • Polimorfismo: Sobrecarga e sobrescrita; interfaces e classes abstratas.
  • Tratamento de Exceções:
    • Exceções vs. erros.
    • Blocos try-catch-finally.
    • Criação de exceções personalizadas.
  • Análise e Projeto Orientados a Objetos:
    • Introdução à UML: Diagramas de classe, sequência e casos de uso.
    • Padrões de projeto (Design Patterns): Singleton, Factory, Observer.
    • Estudo de caso: Modelagem e implementação de um sistema simples.

Metodologia

[editar | editar código]
  • Aulas teóricas: Exposição dos conceitos com exemplos em pseudocódigo e linguagens como Java ou Python.
  • Aulas práticas: Implementação de exercícios e projetos em ambiente de desenvolvimento (IDE).
  • Atividades colaborativas: Discussão de padrões de projeto e modelagem UML em grupos.
  • Avaliação contínua: Listas de exercícios, trabalhos práticos e projeto final.

Avaliação

[editar | editar código]
  • Exercícios e listas de programação: Implementação dos conceitos em linguagem de POO.
  • Prova teórica: Questões sobre princípios de POO, UML e padrões de projeto.
  • Projeto final:
    • Análise e modelagem UML de um sistema.
    • Implementação funcional com tratamento de exceções e aplicação de herança/polimorfismo.

Bibliografia Básica

[editar | editar código]
  1. BOOCH, G.; RUMBAUGH, J.; JACOBSON, I. UML: guia do usuário. 1ª edição. Editora Campus, 2006.
  2. GUEDES, G. T. A. UML 2: uma abordagem prática. 1a edição. Editora Novatec, 2009.
  3. BARNES, D. J.; KOLLING, M. Programação orientada a objetos com Java. 4a edição. Editora Pearson Prentice Hall, 2008.

Bibliografia Complementar

[editar | editar código]
  1. DEITEL, H. M.; DEITEL, P.J. Java: como programar. 6a edição. Editora Bookman, 2005.
  2. FLANAGAN, D. Java: o guia essencial. 5ª ed. Porto Alegre: Artmed, 2006. 1099 p. ISBN 8560031073 (broch.).
  3. MENEZES, N. N. C. Introdução à programação com Python: algoritmos e lógica de programação para iniciantes. 2ª ed. revisada e ampliada. São Paulo, SP: Novatec, 2014. 328 p. ISBN 9788575224083.
  4. LARMAN, C. Utilizando UML e padrões: uma introdução à análise e ao projeto orientados a objetos e ao desenvolvimento iterativo. 3a edição. Editora Bookman, 2007.
  5. FOWLER, M. UML essencial: um breve guia para a linguagem-padrão de modelagem de objetos. 3a edição. Editora Bookman, 2005.