Zasada jednej odpowiedzialności
W programowaniu obiektowym zasada jednej odpowiedzialności (ang. Single responsibility principle) mówi, że:
Zasada została sformułowana po raz pierwszy przez Toma DeMarco[2] oraz Meilir Page-Jonesa[3] pod nazwą zasady spójności, a spopularyzowana i podana w obecnym brzmieniu przez Roberta C. Martina w artykule "Principles of Object Oriented Design"[4] oraz książce "Agile Software Development: Principles, Patterns, and Practices"[1].
[edytuj] Zastosowanie zasady
Martin utożsamia odpowiedzialność klasy z powodem do jej modyfikacji. Możemy rozważyć moduł, który generuje i drukuje raport. Odpowiada on za dwa procesy, a tym samym mogą wystąpić dwa powody do jego modyfikacji. Po pierwsze, może zmienić się treść generowanego raportu, po drugie – format, w jakim jest on drukowany. Zasada jednej odpowiedzialności mówi, że oba te procesy powinny być niezależne i zaimplementowane w postaci dwóch oddzielnych klas lub modułów, które komunikują się ze sobą przy pomocy publicznych interfejsów.
[edytuj] Zobacz też
Przypisy
- ↑ 1,0 1,1 Robert C. Martin, Micah Martin: Agile. Programowanie zwinne: zasady, wzorce i praktyki zwinnego wytwarzania oprogramowania w C#. Wyd. Helion, 2008. ISBN 978-83-246-1177-5.
- ↑ Tom DeMarco: Structured Analysis and System Specification. Yourdon Press Computing Series, 1979.
- ↑ Meilir Page-Jones: The Practical Guide to Structured System Design. Wyd. 2. Yourdon Press Computing Series, 1988.
- ↑ Robert C. Martin: The Principles of Object Oriented Design (ang.). [dostęp 2010-02-03].