Zasada jednej odpowiedzialności

Z Wikipedii, wolnej encyklopedii

Zasada pojedynczej odpowiedzialności (ang. single responsibility principle) – zasada mówiąca, że nigdy nie powinno być więcej niż jednego powodu do istnienia klasy bądź metody[1].

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].

Zastosowanie zasady[edytuj | edytuj kod]

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 pojedynczej 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ą za pomocą publicznych interfejsów.

Zobacz też[edytuj | edytuj kod]

  • SOLID – S w SOLID oznacza zasadę jednej odpowiedzialności.

Przypisy[edytuj | edytuj kod]

  1. a b 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.
  2. Tom DeMarco: Structured Analysis and System Specification. Yourdon Press Computing Series, 1979.
  3. Meilir Page-Jones: The Practical Guide to Structured System Design. Wyd. 2. Yourdon Press Computing Series, 1988.
  4. Robert C. Martin: The Principles of Object Oriented Design. [dostęp 2010-02-03]. (ang.).

Linki zewnętrzne[edytuj | edytuj kod]