Programação Orientada a Objetos

Conhecimentos de Base Recomendados

Conceitos básicos de programação.

Métodos de Ensino

De acordo com os objetivos do curso, as suas condições de realização e o público alvo devem ser utilizadas metodologias e estratégias que permitam à turma apreender e compreender os conteúdos lecionados da melhor forma.

 Como tal é priorizado o uso de várias técnicas e metodologias em conjunto para maximizar a apreensão de conteúdos, assim temos:

1. Método expositivo: exposição oral de conteúdos teóricos com recurso a apresentações multimédia, tal como utilização de programas específicos e recursos afetos à prática do desenvolvimento de programas em Java;

2. Método interrogativo: através de questões individuais ou direcionadas ao grupo no decorrer das aulas, permitindo obter feedback imediato sobre os conteúdos abordados;

 3. Método ativo: será utilizado com recurso a várias técnicas como, realização de discussões/debates sobre as temáticas desenvolvidas, estudos de caso relativamente a factos importantes na área das ciências informáticas, resolução de problemas e desenvolvimento de trabalhos individuais;

 4. Método demonstrativo: será útil para demonstrar a instalação e utilização de certos programas a utilizar para o desenvolvimento de programas em Java.

Resultados de Aprendizagem

Definir o conceito de programação orientada a objetos.

Identificar os conceitos de encapsulamento, abstração, herança e polimorfismo.

Criar programas orientados a objetos.

Criar objetos e invocar os seus métodos.

Programa

1. Conceitos de programação orientada a objetos

               1.1. Métodos

               1.2. Encapsulamento

               1.3. Classes.

               1.4. Objetos

               1.5. Herança

                              1.5.1. Hierarquia de classes; 1.5.2. Mecanismos de herança; 1.5.3. Super e Subclasse

               1.6. Polimorfismo

               1.7. Classes abstratas

 2. Regras construção de software orientado por objetos

 3. A linguagem orientada a objetos Java

               3.1. Sintaxe da linguagem

               3.2. Ambiente de desenvolvimento

               3.3. Constantes e variáveis

               3.4. Operadores

               3.5. Tipos de dados

               3.6. Entrada e saída de dados

               3.7. Instruções básicas

               3.8. Conversão de tipos

               3.9. Instruções e estruturas de controlo

                              3.9.1. If; 3.9.2. Switch; 3.9.3. For; 3.9.4. While; 3.9.5. Repeat; 3.9.6. Break; 3.9.7. Continue;

               3.10. Classes e Objetos

               3.11. Definição de classes

                              3.11.1. Criação de classes; 3.11.2. Métodos da classe; 3.11.3. Variáveis da classe;

               3.12. Herança de classes

               3.13. Encapsulamento

               3.14. Polimorfismo

               3.15. Classes abstratas

               3.16. Interfaces

               3.17. Coleções

               3.18. Excepções

               3.19. Stream.

Docente(s) responsável(eis)

Estágio(s)

NAO

Bibliografia

Evans, B.J, Flanagan, D. (2018). Java in a nutshell (7th ed.). O’Reilly Media.

Mendes, A. J., Marcelino, M. J. (2012). Fundamentos de programação em Java (4th ed.). FCA.

Eckel, B (2006). Thinking in java (4th ed.). Prentice Hall.