Introduzir os conceitos de programação Orientada a Objetos e utilizá-los no desenvolvimento de uma aplicação em Engenharia Elétrica. A aplicação é desenvolvida de forma incremental, isto é, são agregadas novas funções a cada aula. Desenvolver a capacidade dos alunos para organização, construção, teste e depuração de programas.
Aspectos básicos de programação. Conceitos de orientação a objetos. Encapsulamento. Ciclo de vida de objeto. Herança. Polimorfismo. Programação defensiva. Manipulação de Arquivos. Desenvolvimento de programas em Engenharia Elétrica.
O curso consta de aulas semanais e atividades extra-classe. Programa:1. Histórico.2. Aspectos básicos de codificação: estilo de codificação, nomes de variáveis, comentários.3. Conceitos de orientação a objetos: classe e objeto, atributo, operação e método.4. Conceito de encapsulamento, modos de visibilidade.5. Ciclo de vida de um objeto: alocação na memória, construtor e destrutor.6. Apontadores.7. Tipos de dado abstrato.8. Pacotes.9. Conceito de herança.10. Classe abstrata e classes concretas.11. Métodos e atributos estáticos.12. Polimorfismo: sobrecarga de operação, redefinição de operação e variável polimórfica.13. Programação defensiva, exceção e tratamento de erros.14. Manipulação de dados e operação em arquivos.15. Programação de aplicações em Engenharia Elétrica.
[1] BUDD, T. An Introduction to Object-Oriented Programming 3rd Edition. Addison-Wesley. 2001. [2] LAFORE, R. Object-Oriented Programming in C++. 4th Edition. SAMS. 2002. [3] SAVITCH, W. C++ Absoluto. Ed. Pearson/Addison Wesley. 2004. [4] STROUSTRUP, B. The C++ Programming Language. 4th Edition. Addison-Wesley. 2013.