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
Single responsibility principle
Search
Grzegorz Wilczyński
November 12, 2012
Programming
210
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Single responsibility principle
Single responsibility principle
Grzegorz Wilczyński
November 12, 2012
More Decks by Grzegorz Wilczyński
See All by Grzegorz Wilczyński
REWRITE'EM ALL
gwilczynski
2
480
Chain made out of coins - smart introduction to blockchain
gwilczynski
0
110
WebComponents or shadow side of the Doom
gwilczynski
0
60
clean code
gwilczynski
0
150
git scm in one hour
gwilczynski
0
130
Productivity for Programmers
gwilczynski
3
210
Git branching model for TAPTeam
gwilczynski
0
930
JS design patterns
gwilczynski
6
370
Other Decks in Programming
See All in Programming
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
2k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
390
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
260
さぁV100、メモリをお食べ・・・
nilpe
0
140
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
690
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
130
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
3.6k
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
110
Agentic UI
manfredsteyer
PRO
0
140
RTSPクライアントを自作してみた話
simotin13
0
580
Lessons from Spec-Driven Development
simas
PRO
0
170
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
120
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.5k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
The Invisible Side of Design
smashingmag
302
52k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
230
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
330
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Unsuck your backbone
ammeep
672
58k
Speed Design
sergeychernyshev
33
1.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Tell your own story through comics
letsgokoyo
1
950
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Transcript
Design patterns: The Single-Responsibility Principle Grzegorz Wilczyński 11th november 2012
SOLID The principles when applied together intend to make it
more likely that a programmer will create a system that is easy to maintain and extend over time. http://en.wikipedia.org/wiki/Solid_(object-oriented_design)
SOLID Single responsibility Open-closed Liskov substitution Interface segregation Dependency inversion
http://en.wikipedia.org/wiki/Solid_(object-oriented_design)
BIBLE http://www.amazon.com/Agile-Principles-Patterns-Practices-C/dp/0131857258
Rule #1 A class should have only one reason to
change. "Agile Principles, Patterns, and Practices in C#" Robert C. Martin
Rule #2 A class should have only one reason to
change. "Agile Principles, Patterns, and Practices in C#" Robert C. Martin
So please don't... http://3.bp.blogspot.com/-FQZ4VT_gbRY/T8RvXLTPWMI/AAAAAAAABP0/JCckSpENM88/s640/SingleResponsibilityPrinciple.jpg
Step 1 http://www.remondo.net/wp-content/uploads/2012/03/SingleResponsibilityPrincipleRadio.png
Step 2 http://www.remondo.net/wp-content/uploads/2012/03/SingleResponsibilityPrincipleRadioManagers.png
Homework $ git branch gw-solid-1 end time: 16.11.2012