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
200
2
Share
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
56
clean code
gwilczynski
0
140
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
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
400
PHPでローカル環境用のSSL/TLS証明書を発行することはできるのか? #phpconkagawa
akase244
0
380
20年以上続くプロダクトでも使い続けられる静的解析ツールを求めて
matsuo_atsushi
0
160
inferと仲良くなる10分間
ryokatsuse
1
140
iOS26時代の新規アプリ開発
yuukiw00w
0
160
Swiftのレキシカルスコープ管理
kntkymt
0
160
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
290
tsserverとは何だったのか_これからどうなるのか
nowaki28
1
270
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
350
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
250
サークル参加から学ぶ、小さな事業の回し方
yuzneri
0
210
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
1
660
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
AI: The stuff that nobody shows you
jnunemaker
PRO
7
650
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
550
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
570
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
530
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
190
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
How to Talk to Developers About Accessibility
jct
2
200
The Curious Case for Waylosing
cassininazir
1
350
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
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