Programação Orientada a Objetos¶
Objetivos: Noções de arquitetura de software com ênfase em programação orientada a objetos.
Ementa: Arquitetura de Software: Coesão e acoplamento; Aprofundar os conceitos básicos de orientação a objetos, entre eles: classes, objetos, interfaces, herança e polimorfismo; Introduzir técnicas de tratamento de erros com exceções; noções depadrões de projeto (explorando alguns exemplos como Observer, Adapter, Null Object); Apresentar noções de aspectos, funções anônimas, closures e técnicas funcionais (Map, Filter, Fold, etc).
Bibliografia Base:
- Félix, Rafael. Programação orientada a objetos. 2017. Pearson.
- Puga, Sandra; Rissetti, Gerson. Lógica de programação e estruturas de dados com aplicações em Java. 2016. Pearson.
- Sommerville, Ian. Engenharia de Software. 2007. Pearson. Bibliografia Complementar:
- Stephen, Samuel; Bocutiu, Stefan. Programando com Kotlin. 2017. Novatec.
- DEITEL, H. M.; DEITEL, P.J. Java: Como Programar. São Paulo: Pearson Prentice- Hall, 8a Edição, 2010.
- DEITEL, H. M.; DEITEL, P.J. Java: Como Programar. São Paulo: Pearson Prentice- Hall, 6a Edição, 2005.
- DEITEL, H. M.; DEITEL, P.J. C++: Como Programar. São Paulo: Pearson Prentice- Hall, 5a Edição, 2006.
- MIZRAHI, V. V. Treinamento em Linguagem C++: módulo 1. São Paulo: Pearson Prentice-Hall, 2a Edição, 2006.
- MIZRAHI, V. V. Treinamento em Linguagem C++: módulo 2. São Paulo: Pearson Prentice-Hall, 2a Edição, 2006.