Arquitetura Hexagonal com Java - C1

Conceitos, metáforas, projeto e implementação de arquitetura hexagonal usando Java

Ratings: 4.63 / 5.00




Description

Objetivo

Objetivo desse curso 1 é oferecer aos participantes conhecimentos teóricos e práticos relacionados ao uso do padrão de projeto arquitetural conhecido como “Hexagonal Architecture”.

O curso aborda toda a teoria, valores, conceitos e metáforas, fazendo a implementação de um estudo de caso funcional 100% prático em Java usando: JDK, IntelliJ, TDD, JUnit, Java 12, Java Module, CDI, Spring Framework, JavaFX e banco de dados relacional HSQDB, aplicando e provando os conceitos ministrados.

Conteúdo programático:

Módulo 1 – Teoria, Conceitos Valores e Metáforas

Introdução

  • O que é?

  • Para que serve?

  • Quando surgiu?

  • Qual o objetivo?

Isolamento

  • SoC

  • Centro como hexágono.

  • Lado superior esquerdo.

  • Lado inferior direito.

Atores

  • O que é?

  • Para que serve?

  • Ator Primário Condutor (Driver)

  • Ator Secundário Conduzido (Driven)

Dependências

  • O que é?

  • Para que serve?

  • Centro como hexágono.

  • Lado superior esquerdo.

  • Lado inferior direito.

Portas

  • O que é?

  • Para que serve?

  • Porta Primária Condutor (Driver)

  • Porta Secundária Dirigida (Driven)

Adaptadores

  • O que é?

  • Para que serve?

  • Adaptador Condutor (Driver)

  • Adaptador Dirigido (Driven)

Adaptadores Simulados (Mock)

  • O que é?

  • Para que serve?

Fluxo de Execução

  • O que é?

  • Como funciona?

Inversão de Controle – IoC

  • O que é?

  • Como funciona?

Dependências Configuráveis

  • O que é?

  • Para que serve?

  • Lado superior esquerdo.

  • Lado inferior direito.

Exemplo Real

  • Aplicativo de Gerenciador de tarefas

  • Diagrama

Conclusão

  • Pontos Positivos

  • Pontos Negativos

  • Quando usar ou não usar?

  • Leitura Complementar

  • Fechamento

Módulo 2 – Projeto e Design

Opções de Design

  • Organização de IDE/Projeto

  • Organização de Pacotes

  • Padrões de Regras de Negócios

  • Organização de Portas Primárias

  • Transferência de Dados

  • Dependências para Objetos de Backservices

Classes e Serviços Dentro do Hexágono

  • Modelo de Domínio

  • Serviço de Domínio

  • Portas Dirigidas

  • Portas Condutoras

Serviços Fora do Hexágono – Lado Inferior Direito

  • Adaptadores Dirigidos

Serviços Fora do Hexágono – Lado Superior Esquerdo

  • Adaptadores Condutores.

Fluxo de Execução

  • O que é?

  • Como funciona?

  • Digrama de execução

Sequência de Desenvolvimento

  • O que é?

  • Como funciona?

Módulo 3 – Projeto e Implementação com Java

Caso de uso: Transferência Bancária

  • O que é?

  • Como funciona?

  • Protótipo

  • Tecnologias: OpenJDK, Java 12, IntelliJ, TDD, JUnit, Java Module, CDI, Spring Framework, JavaFX e banco de dados relacional HSQDB.

  • Decisões de Design de projeto

  • Montagem do ambiente de desenvolvimento

Implementação

  • Projeto 1 - Core Hexagonal

  • Projeto 2 - Front-End

  • Projeto 3 - Back-Services

  • Projeto 4 - Build de homologação e produção

  • Fechamento

What You Will Learn!

  • Conhecimentos teórico e conceituais em arquitetura hexagonal
  • Conhecimentos sobre decisões de design em projetos Java
  • Implementação de um sistema real usando arquitetura hexagonal com Java

Who Should Attend!

  • Estudantes ou desenvolvedores Java que almejem se ingressar na carreira de arquiteto java
  • Estudantes ou desenvolvedores Java que almejem aprender teoria, conceitos e implementação de arquitetura hexagonal usando Java
  • Estudantes ou desenvolvedores Java que almejem aprender a como desenvolver uma solução moderna, flexível e manutenível usando modelo arquitetural baseado em princípios ágeis