Pytania otagowane jako single-responsibility

Zasada pojedynczej odpowiedzialności stanowi, że każdy moduł w systemie powinien być odpowiedzialny za pojedynczą cechę lub funkcjonalność albo za agregację spójnej funkcjonalności. Innym powszechnym sposobem wyrażenia tego jest stwierdzenie, że każdy moduł powinien mieć tylko jeden powód do zmiany.

16
Kiedy stosuje się zasadę pojedynczej odpowiedzialności, co stanowi „odpowiedzialność?”
Wydaje się całkiem jasne, że „zasada pojedynczej odpowiedzialności” nie oznacza „tylko jednej rzeczy”. Po to są metody. public Interface CustomerCRUD { public void Create(Customer customer); public Customer Read(int CustomerID); public void Update(Customer customer); public void Delete(int CustomerID); } Bob Martin mówi, że „klasy powinny mieć tylko jeden powód do zmiany”. …


8
Jak klasa może mieć wiele metod bez naruszania zasady pojedynczej odpowiedzialności
Zasada pojedynczej odpowiedzialności jest zdefiniowana w Wikipedii jako Zasada pojedynczej odpowiedzialności jest zasadą programowania komputerowego, która stwierdza, że ​​każdy moduł, klasa lub funkcja powinna ponosić odpowiedzialność za jedną część funkcjonalności zapewnianej przez oprogramowanie, a odpowiedzialność powinna być całkowicie zamknięta w klasie Jeśli klasa powinna ponosić tylko jedną odpowiedzialność, jak może …


8
Jak udowodnić lub obalić, że „Boskie przedmioty” są błędne?
Podsumowanie problemu: Krótko mówiąc, odziedziczyłem bazę kodu i zespół programistów, których nie wolno mi zastępować, a korzystanie z God Objects to duży problem. Idąc dalej, chcę, abyśmy ponownie zmienili czynniki, ale dostaję odepchnięcie od zespołów, które chcą robić wszystko z Boskimi Przedmiotami „ponieważ jest to łatwiejsze”, a to oznacza, że …

7
Zasada pojedynczej odpowiedzialności - jak uniknąć fragmentacji kodu?
Pracuję w zespole, w którym kierownik zespołu jest zjadliwym orędownikiem zasad rozwoju SOLID. Brakuje mu jednak dużego doświadczenia w uzyskiwaniu skomplikowanego oprogramowania. Mamy sytuację, w której zastosował SRP do tego, co było już dość złożoną bazą kodu, która stała się teraz bardzo rozdrobniona, trudna do zrozumienia i debugowania. Mamy teraz …

7
Zarządzanie i organizacja znacznie większej liczby klas po przejściu na SOLID?
W ciągu ostatnich kilku lat powoli przechodziliśmy na stopniowo coraz lepszy kod, kilka kroków naraz. W końcu zaczynamy przestawiać się na coś, co przynajmniej przypomina SOLID, ale jeszcze tam nie jesteśmy. Od czasu dokonania zmiany, jednym z największych zarzutów ze strony programistów jest to, że nie mogą znieść recenzowania i …

8
Jaka jest prawdziwa odpowiedzialność klasy?
Wciąż zastanawiam się, czy uzasadnione jest używanie czasowników opartych na rzeczownikach w OOP. Natknąłem się na ten genialny artykuł , choć nadal nie zgadzam się z jego racją. Aby wyjaśnić problem bardziej szczegółowo, artykuł stwierdza, że ​​nie powinno być na przykład FileWriterklasy, ale ponieważ pisanie jest akcją , powinna być …

10
Zastosowanie zasady pojedynczej odpowiedzialności
Ostatnio natrafiłem na pozornie trywialny problem architektoniczny. Miałem proste repozytorium w moim kodzie, które zostało tak nazwane (kod jest w C #): var user = /* create user somehow */; _userRepository.Add(user); /* do some other stuff*/ _userRepository.SaveChanges(); SaveChanges był prostym opakowaniem, które zatwierdza zmiany w bazie danych: void SaveChanges() { …

8
Czy dodanie typu zwrotu do metody aktualizacji narusza „zasadę pojedynczej odpowiedzialności”?
Mam metodę, która aktualizuje dane pracowników w bazie danych. EmployeeKlasa jest niezmienna, więc „aktualizowanie” środki obiekt rzeczywiście instancji nowego obiektu. Chcę, aby Updatemetoda zwróciła nowe wystąpienie Employeez zaktualizowanymi danymi, ale ponieważ teraz mogę powiedzieć, że odpowiedzialnością metody jest aktualizacja danych pracowników i pobranie z bazy danych nowego Employeeobiektu , czy …

11
Upewnij się, że każda klasa ma tylko jedną odpowiedzialność, dlaczego?
Zgodnie z dokumentacją Microsoft, artykułem Wikipedia SOLID lub większością architektów IT musimy upewnić się, że każda klasa ma tylko jedną odpowiedzialność. Chciałbym wiedzieć, dlaczego, ponieważ jeśli wszyscy wydają się zgadzać z tą zasadą, nikt nie wydaje się zgadzać co do przyczyn tej reguły. Niektórzy wskazują na lepszą konserwację, inni twierdzą, …

8
Jak ustalić, czy klasa spełnia zasadę jednej odpowiedzialności?
Zasada jednolitej odpowiedzialności oparta jest na zasadzie wysokiej spójności. Różnica między nimi polega na tym, że bardzo spójne klasy zawierają zestaw ściśle powiązanych ze sobą obowiązków, podczas gdy klasy przestrzegające SRP mają tylko jedną odpowiedzialność. Ale w jaki sposób ustalamy, czy dana klasa ma zestaw obowiązków i dlatego jest po …

12
Kiedy paradygmat „Do One Thing” staje się szkodliwy?
Chcesz poprawić ten post? Podaj szczegółowe odpowiedzi na to pytanie, w tym cytaty i wyjaśnienie, dlaczego Twoja odpowiedź jest poprawna. Odpowiedzi bez wystarczającej ilości szczegółów mogą być edytowane lub usuwane. To pytanie zostało przeniesione z przepełnienia stosu, ponieważ można na nie odpowiedzieć w programie Software Engineering Stack Exchange. Migrował 8 …



Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.