Programação Avançada em Java

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

Conhecimentos de Base Recomendados

Não aplicável.

Métodos de Ensino

Esta u.c. está estruturada em cerca 8 horas teórico-práticas, 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 respetiva prática de imediato. Durante as aulas laboratoriais, os estudantes resolvem um conjunto de problemas de programação com acompanhamento.

Resultados de Aprendizagem

Adquirir conhecimentos sobre o desenvolvimento de aplicações Web, persistência, segurança, acesso concorrente, transações, mensagens, injeção de dependências, e de ferramentas automáticas de compilação, de servidor de aplicações, de integração contínua, de repositório e de mapeamento entre modelo objeto e relacional. A inscrição nesta u.c. requer uma classificação final positiva (acima ou igual a 10 valores) nas u.c. anteriores. Será dada especial atenção à utilização de APIs de Java disponíveis em ambiente Java Enterprise Edition. Como competências genéricas realçam-se: capacidade de análise, síntese; organização e planificação; resolução de problemas; trabalho em grupo; aprendizagem autónoma; adaptabilidade a novas situações; criatividade; preocupação com a qualidade e com desenvolvimento sustentado.

Estágio(s)

Não

Programa

• Arquitetura de três camadas
• Tecnologia de java servlet; internacionalização e localização de aplicações Web.
• Serviços Web; serviços Web baseados em JAX-WS; serviços Web RESTful em JAX-RS.
• Enterprise Beans, Message-driven Beans; injeção de dependências e CDI
• Java Persistance API e JP Query Language
• Concorrência e mecanismos de sincronização; Criteria API
• Segurança em aplicações Web e empresarias, autenticação JAAS
• Recursos, transações e mensagens; Java message service and Interceptors.
• Servidor de aplicações; JBOSS; administração e configuração
• Ambientes de compilação e ferramentas automáticas de compilação; Maven; Repository Manager;
• Ferramentas de integração contínua, Jenkins
• Ferramentas de mapeamento entre modelo objeto e relacional; Hibernate
• Spring framework
• Google Web toolkit

Docente(s) responsável(eis)

João Nuno Gonçalves Costa Cavaleiro Correia

Métodos de Avaliação

Avaliação
Avaliação contínua (50%) e teste (50%).No caso de classificação negativa no teste (< 9.5 valores), o aluno terá a possibilidade de realizar um exame (50% da classificação final), substituindo a classificação do teste. A avaliação contínua procura estimular a participação individual nas atividades letivas e avaliar a evolução. O exame assume um papel de avaliação final e individual de conhecimentos: 100.0%

Bibliografia

The Java EE 6 Tutorial (disponível em http://docs.oracle.com/javaee/6/tutorial/doc/)