Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
A craftsman’s guide to designing clean archite...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Marcus Biel
May 16, 2018
Technology
81
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
A craftsman’s guide to designing clean architecture
In this talk, Software Craftsman Marcus Biel describes how to design a Clean Architecture
Marcus Biel
May 16, 2018
More Decks by Marcus Biel
See All by Marcus Biel
Java, Turbocharged!
marcusbiel
0
52
Java, Turbocharged!
marcusbiel
0
68
Java, Turbocharged!
marcusbiel
0
130
Java, Turbocharged!
marcusbiel
0
50
Java, Turbocharged
marcusbiel
0
45
Listen to Dad
marcusbiel
0
60
Java, Turbocharged
marcusbiel
0
110
Java, Turbocharged
marcusbiel
0
76
A craftsman’s guide to designing clean architecture (german)
marcusbiel
0
74
Other Decks in Technology
See All in Technology
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1.1k
Tofu-Controller lightning talk @ Containerday 2026
gionn
0
110
Rust で関数型ドメインモデリング
takonda
0
140
WasmをRustにする
sansantech
PRO
0
250
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
160
日本語に強いオープンな大規模言語モデル「LLM-jp」
odashi
4
1.1k
その Valkey 使いこなしていますか?
onk
PRO
5
1.5k
re:Invent初参加で変わったこと、2回目にやってみたいこと(JAWS-UG彩の国埼玉 #12)
mhrtech
2
230
Code for Security プロジェクト紹介 2026年10月
yu23ki14
0
110
Gemini Intelligence 入門 ― AppFunctions と Gemini Nano
takuroabe
0
270
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
170
脆弱性診断って、何をしているの? 〜弱点を見つけて、会社の改善につなげるまで〜
keeg
0
920
Featured
See All Featured
Marketing to machines
jonoalderson
1
5.9k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
340
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
580
Fireside Chat
paigeccino
43
4.1k
The Cult of Friendly URLs
andyhume
79
7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.9k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
360
Done Done
chrislema
187
17k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Transcript
Marcus Biel, Software Craftsman Lightweight Java User Group Munich 16.
May 2018 A craftsman’s guide to designing clean architecture
Copyright 2018 Marcus Biel https://cleancodeacademy.com About Me Clean Code Evangelist
• Founder of Clean Code Academy • Public Speaker • Author • Java Influencer • JCP Member • Clean Code Coach • Java Consultant @MarcusBiel https://cleancodeacademy.com
Copyright 2018 Marcus Biel https://cleancodeacademy.com Defining a Clean Architecture
Copyright 2018 Marcus Biel https://cleancodeacademy.com Defining a Clean Architecture
Copyright 2018 Marcus Biel https://cleancodeacademy.com Defining a Clean Architecture
Copyright 2018 Marcus Biel https://cleancodeacademy.com Defining a Clean Architecture MODULES
PACKAGES CLASSES METHODS
Copyright 2018 Marcus Biel https://cleancodeacademy.com Defining a Clean Architecture Domain
Infrastructure HTTPS REST SOAP http://bit.ly/HexagonalArchitecture
Copyright 2018 Marcus Biel https://cleancodeacademy.com Building Blocks of a Clean
Architecture ‣ Size ‣ Naming ‣ Encapsulation ‣ Coupling and Cohesion
Copyright 2018 Marcus Biel https://cleancodeacademy.com Size MODULES PACKAGES CLASSES METHODS
Copyright 2018 Marcus Biel https://cleancodeacademy.com Naming Clean names drive high
cohesion (Customer, AccountNumber) Use service pattern judiciously Clean names are team work Rename on new insights
Copyright 2018 Marcus Biel https://cleancodeacademy.com Encapsulation technically enforces of how
the system should be used Getters and Setters violate encapsulation. Use package private more often! http://bit.ly/EvilGettersAndSetters
Copyright 2018 Marcus Biel https://cleancodeacademy.com Building Blocks of a Clean
Architecture ‣ Size ‣ Naming ‣ Encapsulation ‣ Coupling and Cohesion
Copyright 2018 Marcus Biel https://cleancodeacademy.com Defining Coupling Tight Coupling Loose
Coupling
Copyright 2018 Marcus Biel https://cleancodeacademy.com Coupling Strength ‣ Type of
Coupling ‣ Timing of Coupling ‣ Distance of the Components
Copyright 2018 Marcus Biel https://cleancodeacademy.com Type of Coupling
Copyright 2018 Marcus Biel https://cleancodeacademy.com Distance of the Components MODULES
PACKAGES CLASSES METHODS
Copyright 2018 Marcus Biel https://cleancodeacademy.com Distance of the Components
Copyright 2018 Marcus Biel https://cleancodeacademy.com Distance of the Components
Copyright 2018 Marcus Biel https://cleancodeacademy.com Distance of the Components
Copyright 2018 Marcus Biel https://cleancodeacademy.com Timing of Coupling
Copyright 2018 Marcus Biel https://cleancodeacademy.com Cohesion Low Cohesion High Cohesion
Copyright 2018 Marcus Biel https://cleancodeacademy.com Cohesion Low Cohesion High Cohesion
Copyright 2018 Marcus Biel https://cleancodeacademy.com Cohesion High Cohesion requires in-depth
knowledge of the domain.
Copyright 2018 Marcus Biel https://cleancodeacademy.com What is Clean Architecture? I
would advise students to pay more attention to the fundamental ideas rather than the latest technology. The technology will be out-of-date before they graduate. Fundamental ideas never get out of date. — David L. Parnas “ ”
Marcus Biel, Software Craftsman Lightweight Java User Group Munich 16.
May 2018 A craftsman’s guide to designing clean architecture
Copyright 2018 Marcus Biel https://cleancodeacademy.com Slides https://bit.ly/GuideToCleanArchitecture