• EN
  • Facebook
  • Instagram
  • Youtube
  • Linkedin
Você está em: Início > Ensino > Unidades Curriculares > LIB10151
Autenticação
ATENÇÃO: Este site utiliza cookies. Ao navegar no site estará a consentir a sua utilização.

Programação Orientada aos Objetos

Código: LIB10151    Sigla: POO
Área Científica: Informática

Ocorrência: 2023/24 - 2S

Página Web:https://moodle.esgt.ipsantarem.pt/course/view.php?id=1513
Área de Ensino: Informática

Cursos

Sigla Nº de Estudantes Plano de Estudos Ano Curricular Créditos Horas Contacto Horas Totais
LIB1 109 Despacho n.º 9236/2020, de 28 de setembro 6 75 150

Horas Efetivamente Lecionadas

LI-1-TA

Teórico-Práticas: 70,42

LI-1-TB

Teórico-Práticas: 65,00

Docência - Horas Semanais

Teórico-Práticas: 5,00

Tipo Docente Turmas Horas
Teórico-Práticas Totais 2 10,00
Jorge Guerra Teixeira Constantino - ESGT   10,00

Docência - Responsabilidades

Docente Responsabilidade
Jorge Guerra Teixeira Constantino - ESGT Responsável

Objetivos de Aprendizagem (conhecimento, aptidões e competências a desenvolver pelos estudantes)

1) CONHECIMENTOS.

O aluno tem conhecimentos especializados de:
C1) Programação usando o paradigma Orientação a Objetos (OO).
C2) Prevenção, deteção e tratamento de erros.

e conhecimentos fundamentais de:
C3) Construções funcionais.
C4) Coleções.
C5) Streams e Pipelines.

2) APTIDÕES. O aluno:
AP1) Decompõe problemas de acordo com o paradigma OO.
AP2) Desenvolve aplicações usando o paradigma da OO.
AP3) Planeia e implementa sistemas de tratamento de exceções.
AP4) Planeia e implementa testes de unidade.
AP5) Aplica construções funcionais.
AP6) Seleciona com propósito e utiliza coleções de dados.
AP7) Utiliza Streams e Pipelines no processamento de coleções.

3) ATITUDES. O aluno demonstra:
AT1) Capacidade de trabalho em equipa.
AT2) Capacidade de comunicação.
AT3) Capacidade analítica e de pensamento lógico.
AT4) Responsabilidade, iniciativa e autonomia.

Conteúdos programáticos

  1. Paradigmas de Programação: programação estruturada e programação orientada a objetos
  2. Programação orientada a objetos: classes e instâncias; diagramas de classes;  interações entre classes: composição e agregação; princípios de POO: abstração, encapsulamento, herança e polimorfismo; classes abstratas.
  3. Interfaces
  4. Robustez do código: exceções e testes de unidade
  5. Construções funcionais
  6. Coleções
  7. Streams e Pipelines

Demonstração da Coerência dos Conteúdos Programáticos com os Objetivos de Aprendizagem da Unidade Curricular

Os conhecimentos especializados (objetivos C1 e C2) são os nucleares. A eles correspondem os tópicos programáticos 1 a 4, os quais: promovem a compreensão das características do paradigma OO por comparação com as do paradigma da programação estruturada e a consciência das suas diferenças (tópico 1); procedem ao estudo aprofundado do paradigma OO (tópicos 2 e 3); e oferecem recursos para o desenvolvimento de soluções robustas e fiáveis (tópico 4). O aluno deve revelar as aptidões AP1 a AP4.

Os conhecimentos de natureza fundamental (objetivos C3, C4 e C5) correspondem a importantes recursos disponíveis em Java, incluindo inovações introduzidas a partir da sua versão 8: o recurso a construções funcionais (tópico 5), a utilizações de coleções do pacote JCF (tópico 6) e o seu processamento usando Streams e Pipelines (tópico 7). O aluno deve revelar as aptidões AP5, AP6 e AP7.

As atitudes AT1 a AT4 são exercitadas no contexto das aprendizagens de todos os tópicos programáticos.

Metodologia de Ensino (Avaliação incluída)

1. METODOLOGIA DE ENSINO-APRENDIZAGEM

- ENSINO PRESENCIAL
M1. Aulas teóricas/práticas: apresentação teórica e ilustração de casos.
M2. Aulas práticas/experimentais: resolução de casos relacionando conteúdos programáticos e promovendo a análise crítica de resultados.
M3. Horas de atendimento no horário oficial.

- ESTUDO EM AUTONOMIA
M4. Bibliografia recomendada, publicações na Moodle (fichas...)

- FERRAMENTAS DE TRABALHO
F1. Java Platform, Standard Edition 8
F2. IDE Eclipse

2. SISTEMA DE AVALIAÇÃO

- Instrumentos: 2 testes individuais, T1 e T2, com inscrição obrigatória.
- Classificação final: 60% Max(T1,T2) + 40% Min(T1,T2)
- Condições de aprovação: [T1 >= 7,5] E [T2 >= 7.5]
- Exames. Não incluem prova oral.
- Notas superiores a 16. A atribuição de nota superior a 16 pode ficar dependente de defesa numa prova oral. O estudante pode abdicar dessa defesa, sendo-lhe então atribuída a classificação de 16 valores.


Demonstração da Coerência das Metodologias de Ensino com os Objetivos de Aprendizagem da Unidade Curricular

A organização da UC (25 horas de aulas teóricas e 50 horas práticas/laboratoriais) favorece uma abordagem sintética dos conteúdos programáticos e a definição da experimentação como componente privilegiada do processo de aprendizagem. Este tipo de abordagem recomenda que o aluno realize, de forma autónoma, estudo teórico para aprofundamento dos temas abordados e experimentação prática para consolidação das aprendizagens. Nesse sentido, a plataforma Moodle e o horário de atendimento extra letivo são importantes instrumentos de trabalho à disposição do aluno.

Numa lógica de experimentação e aplicação de saberes que permitam a construção dos conhecimentos objetivados, a forte componente prática/experimental favorece a aquisição das aptidões (todas elas ligadas ao "saber fazer") e o treino das atitudes definidas como objetivos de aprendizagem.

O sistema de avaliação pondera 2 testes. Os testes fazem a avaliação nas dimensões teórica e prática.

As metodologias descritas (M1, M2, M3, M4, F1 e F2) são aplicáveis à generalidade dos objetivos de aprendizagem.

Bibliografia de consulta (existência obrigatória)

- Booch, G., (1994) "Object Oriented Design with Applications", 2ª edição, Pearson Education.

- Horstmann, C., (2014) "Java Concepts:early objects", 8ª edição, Wiley.

- Martins, F., (2016) "JAVA 8, POO + Construções Funcionais", FCA Editora.

- Martins, F., (2014) "Projetos de POO em JAVA", FCA Editora.

Observações