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

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
  • SOLID – S w SOLID oznacza zasadę jednej odpowiedzialności.

Przypisy

edytuj
  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

📚 Artikel Terkait di Wikipedia

Clive Sinclair

roku przerwał naukę w St George's College i rozpoczął pracę redaktora w „Practical Wireless”, brytyjskim piśmie zajmującym się zagadnieniami techniki radiowej

Memrystor

neuromorphic devices, and collaborates with CEA and Tohoku University to achieve practical application of neuromorphic devices able to reduce power consumption of

ZX Microdrive

Win an ICL. „Practical Computing”. 8 (10), s. 89, 1985-10.  Ogłoszenie Sinclair Research «The ZX Spectrum Expansion System». „Home Computing Weekly Magazine”

Współbieżność (informatyka)

Coordinated Computing - Tools and Techniques for Distributed Software. McGraw-Hill, 1984. ISBN 978-0-07-022439-1. Jörg Keller, Christoph Keßler: Practical PRAM

Istotność statystyczna

Statistics with R. New York: Springer, 2008, s. 155–56, seria: Statistics and Computing. DOI: 10.1007/978-0-387-79054-1_9. ISBN 978-0-387-79053-4. Statistical

Lista skrótów i skrótowców używanych w informatyce

System DBPSK – Differential Binary Phase Shift Keying DCE – Distributed Computing Environment DCE – Data Circuit-Termination Equipment DCL – Data Control

Acorn Electron

is 30. he Register. [dostęp 2024-03-01]. Chris Curry of Acorn. „Practical Computing”, s. 62-63, 69, 71, 1982-10. (ang.).  Acorn slashes price of Electron

Edgar Frank Codd

(makkartyzm) i przeprowadził się do Ottawy w Kanadzie. Pracował tam dla Computing Devices of Canada Limited. Prowadził dział przetwarzania danych na potrzeby