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
100
WebComponents or shadow side of the Doom
gwilczynski
0
50
clean code
gwilczynski
0
140
git scm in one hour
gwilczynski
0
120
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
Radical Imagining - LIFT 2025-2027 Policy Agenda
lift1998
0
160
AI Assistants for YourAngular Solutions @Angular Graz, March 2026
manfredsteyer
PRO
0
150
Java 21/25 Virtual Threads 소개
debop
0
320
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1.3k
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
590
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
300
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
550
おれのAgentic Coding 2026/03
tsukasagr
1
130
Ruby and LLM Ecosystem 2nd
koic
1
1.4k
KagglerがMixSeekを触ってみた
morim
0
360
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
220
Featured
See All Featured
Leo the Paperboy
mayatellez
6
1.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
How to Think Like a Performance Engineer
csswizardry
28
2.5k
Navigating Team Friction
lara
192
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
The SEO identity crisis: Don't let AI make you average
varn
0
430
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
500
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Prompt Engineering for Job Search
mfonobong
0
250
Agile that works and the tools we love
rasmusluckow
331
21k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
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