SlideShare uma empresa Scribd logo
Clean Architecture
Elton Minetto
@eminetto
O que é Clean Architecture?
- https://8thlight.com/blog/uncle-bob/2012/08/13/
the-clean-architecture.html
- https://www.amazon.com/Clean-Architecture-
Craftsmans-Software-Structure/dp/0134494164
Premissas
- Independente de frameworks
- Testável
- Independente de UI
- Independente de Database
- Independente qualquer agente externo
Divide nosso código em 4
camadas
- Entities: representam as entidades das regras de
negócio
- Use Cases: as regras de negócio da aplicação
- Controller: adaptam e convertem os dados do
formato usado pelas entidades e use cases para
agentes externos como bancos de dados , web,
etc
- Framework & Driver: frameworks e ferramentas
como bancos de dados, frameworks web, etc
Clean Architecture
Clean architecture em Go
https://www.slideshare.net/eminetto/clean-
architecture-em-go-v2
Clean architecture em PHP
No namespace entity estão nossas entidades
Clean Architecture
Clean Architecture
No namespace UseCase temos a definição das
interfaces dos Use Case
Clean Architecture
Clean Architecture
O Service.php é a implementação dos Use Case
Clean Architecture
No namespace Driver temos a camada
correspondente, neste caso os repositórios onde as
entidades serão armazenadas
Clean Architecture
Clean Architecture
Nos arquivos InmemRepository.php e
SqliteRepository.php temos implementações da
interface
Clean Architecture
No diretório Controller temos a implementação da
camada correspondente
Clean Architecture
Clean Architecture
Podemos também ter diferentes controllers, como a
linha de comando
Clean Architecture
Clean Architecture
Podemos facilmente testar nossos pacotes, camada
a camada
Clean Architecture
Clean Architecture
Clean Architecture
Clean Architecture
Premissas
- Independente de frameworks
- Testável
- Independente de UI
- Independente de Database
- Independente qualquer agente externo
Clean Architecture
Exemplo completo
https://github.com/eminetto/clean-architecture-php
Perguntas
@eminetto
http://eltonminetto.net
http://codenation.com.br

Mais conteúdo relacionado

PDF
Clean Architecture em PHP
PDF
Clean Architecture
PDF
Clean architecture
PPTX
Git y Github basico.pptx
PPSX
SOLID Principles and The Clean Architecture
PPTX
DevOps to DevSecOps Journey..
PDF
Clean Architecture
PPTX
Clean architecture
Clean Architecture em PHP
Clean Architecture
Clean architecture
Git y Github basico.pptx
SOLID Principles and The Clean Architecture
DevOps to DevSecOps Journey..
Clean Architecture
Clean architecture

Mais procurados (20)

PPTX
Kubernetes
PDF
Introduction to docker
PDF
Nest.js Introduction
PDF
Devops Cultura y Ciclo de Vida
PDF
Gitlab CI : Integration et Déploiement Continue
PPTX
The Clean Architecture
PPT
Domain Driven Design (DDD)
PPTX
MVVM - Model View ViewModel
PPTX
PPTX
Training: MVVM Pattern
PDF
Understanding Monorepos
PDF
Clean Architecture
PDF
Backend roadmap
PPTX
Kubernetes CI/CD with Helm
PDF
Ceilometer to Gnocchi
PDF
CI:CD in Lightspeed with kubernetes and argo cd
PPTX
Domain Driven Design Quickly
PDF
Intégration continue et déploiement continue avec Jenkins
PDF
Microservices with Spring Boot Tutorial | Edureka
PDF
OpenAPI development with Python
Kubernetes
Introduction to docker
Nest.js Introduction
Devops Cultura y Ciclo de Vida
Gitlab CI : Integration et Déploiement Continue
The Clean Architecture
Domain Driven Design (DDD)
MVVM - Model View ViewModel
Training: MVVM Pattern
Understanding Monorepos
Clean Architecture
Backend roadmap
Kubernetes CI/CD with Helm
Ceilometer to Gnocchi
CI:CD in Lightspeed with kubernetes and argo cd
Domain Driven Design Quickly
Intégration continue et déploiement continue avec Jenkins
Microservices with Spring Boot Tutorial | Edureka
OpenAPI development with Python
Anúncio

Semelhante a Clean Architecture (20)

PDF
Clean Architecture - Elton Minetto
PDF
TDC2018SP | Trilha Go - Clean architecture em Golang
PDF
Clean architecture em Go - v2
PDF
Clean Architecture in Golang
PPTX
Introducao a Clean Architecture
PDF
Clean Architecture
PDF
Clean architecture frontend
PDF
InterCon 2016 - Refactor direto e reto: migração de uma arquitetura 100% acop...
PPTX
TDC 2019 Clean Architeture com .net core
PPTX
Clean architecture
PDF
Arquitetura limpa
PDF
TDC2011: Arquitetura de Software Enterprise
PDF
Arquitetura_de_software_e_como_descreve-la_v2
PPTX
Clean architecture em NodeJS
PPTX
Arquitetura software
PDF
Arquitetura Limpa @ 32º CocoaTalks BH
PPTX
Ddd e software architecture
PDF
Uma linha tênue entre arquitetura de software e o dia a dia dev
PDF
Arquitetando sistemas PHP
PDF
Arquitetura de Software 101
Clean Architecture - Elton Minetto
TDC2018SP | Trilha Go - Clean architecture em Golang
Clean architecture em Go - v2
Clean Architecture in Golang
Introducao a Clean Architecture
Clean Architecture
Clean architecture frontend
InterCon 2016 - Refactor direto e reto: migração de uma arquitetura 100% acop...
TDC 2019 Clean Architeture com .net core
Clean architecture
Arquitetura limpa
TDC2011: Arquitetura de Software Enterprise
Arquitetura_de_software_e_como_descreve-la_v2
Clean architecture em NodeJS
Arquitetura software
Arquitetura Limpa @ 32º CocoaTalks BH
Ddd e software architecture
Uma linha tênue entre arquitetura de software e o dia a dia dev
Arquitetando sistemas PHP
Arquitetura de Software 101
Anúncio

Mais de Elton Minetto (20)

PDF
Go e Microserviços - Nascidos um para o outro
PDF
Object Calisthenics em Go
PDF
Programar != desenvolver software (v2)
PDF
Gerenciando uma startup no Github Projects
PDF
Serverless em Go
PDF
JAMstack
PDF
Programar != desenvolver software
PDF
A jornada do desenvolvedor
PDF
Product and Technology
PDF
Code:Nation Tech Stack
PDF
Modernizando projetos legados usando APIs
PDF
12 factor in the PHP world
PDF
Building APIs using Go
PDF
Start you
PDF
O case da Compufácil e AWS
PDF
Introdução a Go
PDF
Como extrair métricas do Trello
PDF
Memórias das trincheiras (parte 2)
PDF
Metodologias ágeis interativas
PDF
De Padawan a Jedi - Versão 2016
Go e Microserviços - Nascidos um para o outro
Object Calisthenics em Go
Programar != desenvolver software (v2)
Gerenciando uma startup no Github Projects
Serverless em Go
JAMstack
Programar != desenvolver software
A jornada do desenvolvedor
Product and Technology
Code:Nation Tech Stack
Modernizando projetos legados usando APIs
12 factor in the PHP world
Building APIs using Go
Start you
O case da Compufácil e AWS
Introdução a Go
Como extrair métricas do Trello
Memórias das trincheiras (parte 2)
Metodologias ágeis interativas
De Padawan a Jedi - Versão 2016

Último (20)

PPTX
Fund-proc-moagem-carvaoerde_PPT_v007.pptx
PDF
Análise do concreto permeável com adição de resíduos
PDF
Palestras_Tribologia_Profa_MCristinaMFarias.pdf
PPTX
PROCEDIMENTOS DE BLOQUEIO- Executante.pptx
PDF
Normas, higiene e segurança na soldadura eléctrica
PDF
Mapa de Oferta Eng Civil (20h 02min, 06-08-2025).pdf
PDF
DETECCAO DE ALARME DE INCENSDIO E PANICO
PDF
Aula 01 INT. EnnnnnnnnnnnnnnENF.pdf 2.pdf
PDF
1 - Fundamentos Básicos da Transferência de Calor.pdf
PPTX
Treinamento em powerpoint para integração de colaboradores em fábrica de pequ...
PPTX
2 - introducao a ciencia do solo para o curso de agronomia.ppt
PPTX
Caminho das Bromélias _Nível Obra - Governança em SSMA_03.2024.pptx
PDF
Manutenção de motores de indução trifésicos.pdf
PPT
DIFERENTES SINTOMAS E SINAIS DE PLANTAS.
PPTX
Integração SMS introdutorio 111111111111
PDF
Material referente ao método kanban f2ms
PDF
LIMPEZA E SANITIZAÇÃO NA INDUSTRIA ALIMENTICIA
PPT
Curso de NR 10 para segurança do trabalho
PPTX
1 Conceitos-de-Gestao-da-Qualidaade.pptx
PDF
MIP - soja.- pragas da cultura e seu controle
Fund-proc-moagem-carvaoerde_PPT_v007.pptx
Análise do concreto permeável com adição de resíduos
Palestras_Tribologia_Profa_MCristinaMFarias.pdf
PROCEDIMENTOS DE BLOQUEIO- Executante.pptx
Normas, higiene e segurança na soldadura eléctrica
Mapa de Oferta Eng Civil (20h 02min, 06-08-2025).pdf
DETECCAO DE ALARME DE INCENSDIO E PANICO
Aula 01 INT. EnnnnnnnnnnnnnnENF.pdf 2.pdf
1 - Fundamentos Básicos da Transferência de Calor.pdf
Treinamento em powerpoint para integração de colaboradores em fábrica de pequ...
2 - introducao a ciencia do solo para o curso de agronomia.ppt
Caminho das Bromélias _Nível Obra - Governança em SSMA_03.2024.pptx
Manutenção de motores de indução trifésicos.pdf
DIFERENTES SINTOMAS E SINAIS DE PLANTAS.
Integração SMS introdutorio 111111111111
Material referente ao método kanban f2ms
LIMPEZA E SANITIZAÇÃO NA INDUSTRIA ALIMENTICIA
Curso de NR 10 para segurança do trabalho
1 Conceitos-de-Gestao-da-Qualidaade.pptx
MIP - soja.- pragas da cultura e seu controle

Clean Architecture