Programação Avançada em Java

Ano
1
Ano lectivo
2024-2025
Código
02021918
Área Científica
Tecnologias da Informação e da Comunicação
Língua de Ensino
Português
Modo de Ensino
Presencial
Créditos ECTS
22.0
Tipo
Obrigatória
Nível
Curso Não Conferente de Grau

Conhecimentos de Base Recomendados

NA

Métodos de Ensino

Esta u.c. está estruturada em 6 horas teórico-práticas semanais, sendo as restantes laboratoriais. Todas as aulas são acompanhadas por um docente. Nas aulas teórico-práticas são apresentados conceitos sobre programação e é promovida a respectiva prática de imediato. Durante as aulas laboratoriais, os estudantes resolvem um conjunto de problemas de programação com acompanhamento, alguns dos quais sujeitos a defesa individual. A inscrição nesta u.c. requer uma classificação final positiva (acima ou igual a 10 valores) nas u.c. anteriores.

Resultados de Aprendizagem

Adquirir conhecimentos no desenvolvimento de aplicações web, abrangendo aspetos de frontend e backend, este curso oferece uma exploração das tecnologias e metodologias relevantes. Na programação de frontend, os alunos adquirirão conhecimentos sobre avanços recentes e técnicas essenciais para a construção de aplicações utilizando HTML, CSS e diversos frameworks JavaScript, como React e Bootstrap.

Na programação de backend, é enfatizada uma abordagem de arquitetura em camadas múltiplas, cobrindo a camada de serviço com tecnologias como serviços web RESTful, a camada de negócios com CDI e beans EJB, e a camada de dados incorporando Entidades e Objetos de Acesso a Dados. Os alunos irão interagir com plataformas Java empresariais utilizadas como, por exemplo, Jakarta, juntamente com ferramentas como Maven para construção automatizada, Wildfly para servidores de aplicação e Git para controle de versões.Serão abordadas ferramentas de teste para JavaScript, testes de API e testes unitários.

Estágio(s)

Não

Programa

  • Programação de Frontend: HTML, CSS e Frameworks JavaScript
  • Arquitetura de três camadas e plataformas empresariais Java como Jakarta
  • Serviços web: Transporte de dados (XML, JSON), Serviços web RESTful com JAX-RS
  • Enterprise Beans, Message-driven Beans; Injeção de Dependência e Beans CDI
  • Mapeamento Objeto-Relacional (ORM), API de Persistência Java, Linguagem de Consulta JPQL, API de Critérios
  • Segurança em aplicações Web e Empresariais
  • Transações
  • Internacionalização e Localização
  • Conexão Bidirecional através de WebSocket
  • Responsividade de aplicações Web

Testes: Testes JavaScript (por exemplo, Jest), Testes de API (por exemplo, Postman), Testes Unitários (por exemplo, JUnit), ...

Docente(s) responsável(eis)

José Alexandre D'Abruzzo Pereira

Métodos de Avaliação

Avaliação Contínua
Avaliação é contínua e procura estimular a participação individual nas atividades letivas e avaliar a evolução: 100.0%

Bibliografia

Jakarta EE Specefications (disponível em https://jakarta.ee/specifications/).