Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Write S.O.L.I.D code
Search
Yoan
June 13, 2017
How-to & DIY
2.6k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Write S.O.L.I.D code
Learn how to write Object Oriented S.O.L.I.D code
Yoan
June 13, 2017
More Decks by Yoan
See All by Yoan
Coder sans se noyer dans la complexité
thirion
0
180
L'artisanat logiciel à l'heure du numérique responsable
thirion
0
180
Clean Code du point de vue de la cognition
thirion
0
230
Agile Tech Coaching - The Missing Piece Of Your Organization
thirion
1
180
Cultiver l'intelligence collective à l'heure de ChatGPT
thirion
0
190
Clean Code from the Cognition Point of View
thirion
2
260
Xanpan - une méthode agile hybride centrée sur l'équipe
thirion
0
260
Les aventures d'un facilitateur au pays des techs - Agile Grenoble 2023
thirion
0
190
Clean Code du point de vue de la cognition
thirion
1
320
Other Decks in How-to & DIY
See All in How-to & DIY
タスク管理で人生はもっと楽しくなる
naomik92
2
120
JAWS-UG 山梨 第10回 勉強会 Community Update
awsjcpm
0
1.1k
Goカードゲームを 作ってみた!
senoue
0
320
ネガティブをねじ伏せ、n=1のキャリアに変える技術
subroh0508
1
1.2k
サイボウズには100名以上の社員が出演する"夏フェス"があるって本当?
oguemon
1
990
M5StickS3触ってXiaoZhiAI触ってみた #にぼし香 #iotlt
n0bisuke2
0
310
JAWS-UG/AWS Community Update - JAWS-UG栃木 #6
awsjcpm
0
150
파이썬 토룡신점 운영후기
lqez
0
580
ドローンをAWSで制御してみた
nagi900
0
190
JAWS SONIC 2026 オンラインでつながり、オフラインで会おう! - JAWS-UG北陸新幹線で始まった支部とコラボ
pharaohkj
0
260
餃子コミュニティの活性化/TechGYOZA
nishiuma
2
410
地方カンファレンスのスタッフしてて思うこと
yumechi
0
280
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
320
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
sira's awesome portfolio website redesign presentation
elsirapls
0
410
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
870
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
720
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
660
It's Worth the Effort
3n
188
29k
Transcript
@yot88 By yoan thirion S.O.L.I.D principles
@yot88 bad code / Good code Bad code vs Good
code Categorize each piece of code
None
@yot88 Singleton Tight Coupling Untestability Premature Optimization Indescriptive Naming Duplication
Single Responsibility Open/Closed Principle Liskov Substitution Interface Segregation Dependency Inversion Patterns and anti-patterns
@yot88 SRP A class should have only 1 responsibility
@yot88 Software entities should be open for extension, but closed
for modification. Open closed
@yot88 Subtypes must be substitutable for their base types. Liskov
substitution
@yot88 Clients should not be forced to depend on methods
that they do not use. Interface segregation
@yot88 High level modules should not depend on low level
modules : both should depend on abstractions. DI
@yot88 Good code / bad code Align each piece of
code with a S.O.L.I.D principle
1 3 3 1 3 16 13 2 4 14
15 6 8 9 12 5 10 11
3 13 16 1 3 16 13 2 4 14
15 6 8 9 12 5 10 11
3 4 2 1 3 16 13 2 4 14
15 6 8 9 12 5 10 11
3 15 14 1 3 16 13 2 4 14
15 6 8 9 12 5 10 11
3 8 6 1 3 16 13 2 4 14
15 6 8 9 12 5 10 11
3 11 9 1 3 16 13 2 4 14
15 6 8 9 12 5 10 11
3 10 5 1 3 16 13 2 4 14
15 6 8 9 12 5 10 11
12 1 3 16 13 2 4 14 15 6
8 9 12 5 10 11
1 3 16 13 2 4 14 15 6 8
9 12 5 10 11
@yot88 Let’s refactor using s.O.L.I.D
@yot88 exercises Practice S.O.L.I.D principles on code examples Clone the
repository at : https://github.com/ythirion/solid-kata Foreach code example : • identify why it’s breaking the given principle • Write down your refactoring strategy • Refactor it
@yot88 Where do you stand ? No quite yet On
the way Ready to roll