Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Clean Architecture
Search
Lucas Arantes
January 22, 2018
Programming
3
83
Clean Architecture
Lucas Arantes
January 22, 2018
Tweet
Share
More Decks by Lucas Arantes
See All by Lucas Arantes
Elixir 101
lucasprag
1
250
The pragmatic programmer
lucasprag
0
120
Hello Docker!
lucasprag
0
74
The Pragmatic Programmer
lucasprag
1
160
Hello Swift!
lucasprag
1
48
Other Decks in Programming
See All in Programming
Cell-Based Architecture
larchanjo
0
140
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
800
GoLab2025 Recap
kuro_kurorrr
0
780
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
140
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
280
Basic Architectures
denyspoltorak
0
130
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.4k
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
170
ゲームの物理 剛体編
fadis
0
380
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
190
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
480
Vibe codingでおすすめの言語と開発手法
uyuki234
0
130
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Tell your own story through comics
letsgokoyo
0
770
Producing Creativity
orderedlist
PRO
348
40k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Paper Plane
katiecoart
PRO
0
44k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
GitHub's CSS Performance
jonrohan
1032
470k
Utilizing Notion as your number one productivity tool
mfonobong
2
190
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
300
Believing is Seeing
oripsolob
0
15
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Transcript
Clean Architecture Lucas Oliveira
None
twitter.com/fbzga | magnetis.com.br
What is clean architecture?
the problem
None
It is screaming: web framework!
The web is a delivery system request
Yet it dominates your code
proposal
None
None
None
None
None
None
What about MVC? Trygve Reenskaug
MVC as a software architecture
this is not what I mean =(
None
Let's see a real world use case
app/models/invoice.rb
Who is calling?
None
None
None
None
Who you gonna call? Accountant Accounting Caretaker Operator Salesman Bank
Map
More important than that, it separates
What the system is
Data stable
What the system does
Behavior changes
Now, I can see what our app does.
Especial thanks to: Iugu | Uncle Bob | Fabiano Beselga
Thank you
When should I use those use cases and when not?
this is a FAKE tweet
this is a FAKE tweet