CCT-UFCA/Matemática Computacional/Programação Orientada a Objetos
Aparência
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.
Ementa
[editar | editar código]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]- BOOCH, G.; RUMBAUGH, J.; JACOBSON, I. UML: guia do usuário. 1ª edição. Editora Campus, 2006.
- GUEDES, G. T. A. UML 2: uma abordagem prática. 1a edição. Editora Novatec, 2009.
- 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]- DEITEL, H. M.; DEITEL, P.J. Java: como programar. 6a edição. Editora Bookman, 2005.
- FLANAGAN, D. Java: o guia essencial. 5ª ed. Porto Alegre: Artmed, 2006. 1099 p. ISBN 8560031073 (broch.).
- 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.
- 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.
- FOWLER, M. UML essencial: um breve guia para a linguagem-padrão de modelagem de objetos. 3a edição. Editora Bookman, 2005.