Ich bin mir nicht sicher, ob ich damit einverstanden bin, also würde ich gerne den Buch- oder Zeitschriftenartikel hinter dieser Idee finden, damit ich überprüfen kann, ob ich genau verstehe, was sie sagen und in welchem Zusammenhang sie es verstehen / p>
Ich denke, ich verstehe die Idee - ich möchte nur die Quelle kennen, damit ich überprüfen kann, woher die Idee kommt.
warum ich frage:
Der Begriff "do one thing" ist vage und könnte viele Dinge bedeuten, darunter "nur eine Methode pro Klasse" (lächerlich) ... Ich denke, es könnte eine einzelne Verantwortung (dh viele Methoden) bedeuten. Es ist auch nicht besonders nützlich, weil man beurteilen muss, wann eine einzelne Verantwortung kompliziert genug wird, um sich in mehrere Verantwortlichkeiten mit irgendeiner Art von Delegation umstrukturieren zu müssen ...
SOLID-Prinzipien von Bob Martin .
Prinzip der einfachen Verantwortlichkeit um genau zu sein.
Obwohl auf der ersten Seite des Kapitels zum Grundsatz der einfachen Verantwortung heißt es:
Dieses Prinzip wurde in den Arbeiten von Tom DeMarco und Meilir Page-Jones beschrieben. Sie nannte es Zusammenhalt.
Die Referenzen für die von ihm erwähnte Arbeit sind:
Andere Quellen (von S.Lott in Kommentaren) beinhalten:
Der Mann, der die Idee der Modularität in Software erfand, war Dr. David Parnas. Das klassische Papier ist Zu den Kriterien, die bei der Zerlegung von Systemen in Module verwendet werden
Obwohl er im Allgemeinen nicht über OO spricht (wie es noch nicht der Fall war), gehen die Ideen von OO natürlich von Dr. Parnas 'Arbeit aus. Und ein Teil dieser Arbeit ist eine Analyse, wie Sie Ihre Software in Module zerlegen können und dass Module nur einen Zweck haben sollten.
Prinzip der einheitlichen Verantwortung - Überprüfen Sie hier , um Informationen zu diesem Thema zu erhalten.
Das Single-Responsibility-Prinzip (SRP) ist in der Java-Welt ziemlich verbreitet. Die hier genannten Referenzen sind gut.
Das Prinzip kann sowohl auf Klassen als auch auf Methoden angewendet werden, da es für beide eine gute Idee ist.
Die Ergebnisse, wenn man sich der SRP bewusst ist und sie wenn möglich anwenden, sind normalerweise sauberer, einfacherer Code, aber auf Kosten von mehr Klassen / Methoden. Dies kann für die Wiederverwendung, das Testen und den nächsten Programmierer von großem Wert sein.
Tags und Links oop