Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

Arquitetura Hexagonal

Slide 3

Slide 3 text

Mônica Ribeiro Backend Developer monica.ribeiro@zup.com.br /monicahelenaribeiro

Slide 4

Slide 4 text

Agenda 1 2 4 3 Por quê se preocupar? Camadas Arquitetura Hexagonal Quando utilizar?

Slide 5

Slide 5 text

Por que se preocupar com a escolha da arquitetura?

Slide 6

Slide 6 text

Camadas

Slide 7

Slide 7 text

Arquitetura Hexagonal

Slide 8

Slide 8 text

Como surgiu? Artigo Vídeo

Slide 9

Slide 9 text

@zupinnovation zup.com.br <> “Driving Side” “Driven side” Application

Slide 10

Slide 10 text

@zupinnovation zup.com.br <> “Driving Side” “Driven side” User Interface Infrastructure Application

Slide 11

Slide 11 text

@zupinnovation zup.com.br <> PORT IN PORT OUT User Interface Infrastructure Application

Slide 12

Slide 12 text

@zupinnovation zup.com.br <> PORT IN PORT OUT ADAPTER ADAPTER User Interface Infrastructure Application

Slide 13

Slide 13 text

@zupinnovation zup.com.br <> PORT IN PORT OUT ADAPTER ADAPTER User Interface Infrastructure Application

Slide 14

Slide 14 text

@zupinnovation zup.com.br <> PORT IN PORT OUT ADAPTER ADAPTER Domain User Interface Infrastructure Application

Slide 15

Slide 15 text

Como fica isso na prática?

Slide 16

Slide 16 text

@zupinnovation zup.com.br <> Application Usuário Domain Filme Domain

Slide 17

Slide 17 text

@zupinnovation zup.com.br <> Application Usuário Domain Filme Domain SalvarUsuario UseCase Application Core utiliza

Slide 18

Slide 18 text

@zupinnovation zup.com.br <> Application Usuário Domain Filme Domain SalvarUsuario UseCase Application Core SalvarUsuario UseCasePort Interface Usuario Controller Adapter utiliza im plem enta

Slide 19

Slide 19 text

@zupinnovation zup.com.br <> Application Usuário Domain Filme Domain SalvarUsuario UseCase Application Core SalvarUsuario UseCasePort Interface Usuario Controller Adapter SalvarUsuário Port Interface BuscarFilme Port Interface utiliza

Slide 20

Slide 20 text

@zupinnovation zup.com.br <> Application Usuário Domain Filme Domain SalvarUsuario UseCase Application Core SalvarUsuario ServicePort Interface Usuario Controller Adapter SalvarUsuário Port Interface BuscarFilme Port Interface BuscarFilme Adapter Adapter utiliza im plem enta

Slide 21

Slide 21 text

@zupinnovation zup.com.br <> Application Usuário Domain Filme Domain SalvarUsuario UseCase Application Core SalvarUsuario ServicePort Interface Usuario Controller Adapter SalvarUsuário Port Interface BuscarFilme Port Interface SalvarUsuario Adapter Adapter BuscarFilme Adapter Adapter im plem enta utiliza im plem enta

Slide 22

Slide 22 text

Quando utilizar?

Slide 23

Slide 23 text

Trade-offs - Regra de negócio protegida - Testabilidade - Manutenibilidade (separação de responsabilidades) - Curva de aprendizado do time - Mais verboso por utilizar mais interfaces - Muitas classes de DTOs Prós Contras

Slide 24

Slide 24 text

- em scripts; - em POCs básicas; - em testes de ferramentas; - em aplicações CRUD; - em aplicações que contém muitas dependências externas; - em aplicações mais complexas. Quando NÃO utilizar Quando utilizar

Slide 25

Slide 25 text

Obrigada! Dúvidas?

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

Lorem Ipsum DOLOR SIT AMET Lorem Ipsum DOLOR SIT AMET Lorem Ipsum DOLOR SIT AMET

Slide 29

Slide 29 text

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

No content