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 nie pozwolę sobie na ponowne uwzględnianie czynników. Odsunąłem się z powrotem, powołując się na moje wieloletnie doświadczenie programistyczne, że jestem nowym szefem, który został zatrudniony do poznania tych rzeczy itp., Podobnie jak przedstawiciel handlowy firm zagranicznych na zagranicznych kontach, a teraz jest to na poziomie wykonawczym i mojego spotkania jest jutro i chcę skorzystać z dużej ilości amunicji technicznej, aby propagować najlepsze praktyki, ponieważ uważam, że w dłuższej perspektywie będzie to tańsze (i osobiście uważam, że to właśnie martwi trzecia strona) dla firmy.
Mój problem dotyczy poziomu technicznego, wiem, że jest dobry w perspektywie długoterminowej, ale mam kłopoty z ultra krótkoterminowym i 6-miesięcznym okresem, a chociaż jest to coś, co „wiem”, nie mogę tego udowodnić za pomocą referencji i cytowanych zasobów poza jednej osoby (Robert C. Martin, alias Wujek Bob), ponieważ właśnie o to mnie proszono, ponieważ powiedziano mi, że posiadanie danych od jednej osoby i tylko jedna osoba (Robert C Martin) nie jest wystarczająco dobrym argumentem .
Pytanie:
Jakie zasoby mogę przytoczyć bezpośrednio (tytuł, rok wydania, numer strony, cytat) przez znanych ekspertów w tej dziedzinie, którzy jednoznacznie twierdzą, że użycie obiektów / klas / systemów „Boga” jest złe (lub dobre, ponieważ szukamy dla najbardziej poprawnego technicznie rozwiązania)?
Badania, które już przeprowadziłem:
- Mam tutaj kilka książek i przeszukałem ich indeksy pod kątem użycia słów „boski przedmiot” i „boska klasa”. Stwierdziłem, że co dziwne, prawie nigdy nie był używany, a kopia książki GoF, którą mam na przykład, nigdy jej nie używa (przynajmniej według indeksu przede mną), ale znalazłem ją w dwóch poniższych książkach, ale chcę więcej Mogę użyć.
- Sprawdziłem stronę Wikipedii pod kątem „God Object” i jest to obecnie skrót z niewielkimi odnośnikami, więc chociaż osobiście się z tym zgadzam, to nie ma wiele, z czego mogę korzystać w środowisku, w którym osobiste doświadczenie nie jest uważane za ważne. Cytowana książka jest również uważana za zbyt starą, aby była ważna dla osób, z którymi debatuję nad tymi kwestiami technicznymi, ponieważ argumentują, że „kiedyś uważano ją za złą, ale nikt nie mógł tego udowodnić, a teraz nowoczesne oprogramowanie mówi„ bóg „obiekty są dobre w użyciu”. Osobiście uważam, że to stwierdzenie jest nieprawidłowe, ale chcę udowodnić prawdę, cokolwiek to jest.
- W „Agile Principles, Patterns and Practices in C #” Roberta C. Martina (ISBN: 0-13-185725-8, twarda okładka), gdzie na stronie 266 jest napisane: „Wszyscy wiedzą, że klasy boskie są złym pomysłem. Nie chcemy aby skoncentrować całą inteligencję systemu w jednym obiekcie lub jednej funkcji. Jednym z celów OOD jest podział i podział zachowań na wiele klas i wiele funkcji. ” - A potem mówi dalej, że czasem lepiej jest używać Boskich klas (podając jako przykład mikrokontrolery).
- W „Czystym kodzie: Podręcznik zwinnego wytwarzania oprogramowania” Roberta C. Martina strona 136 (i tylko ta strona) mówi o „klasie Boga” i przywołuje ją jako doskonały przykład naruszenia zasady „klasy powinny być małe” stosuje w celu promowania zasady jednolitej odpowiedzialności ”od strony 138.
Problem, który mam, polega na tym, że wszystkie moje odniesienia i cytaty pochodzą od tej samej osoby (Robert C. Martin) i pochodzę od tej samej osoby / źródła. Powiedziano mi, że ponieważ jest tylko jednym poglądem, moje pragnienie, aby nie używać „Boskich klas” jest nieważne i nie jest akceptowane jako standardowa najlepsza praktyka w branży oprogramowania. Czy to prawda? Czy robię coś złego z technicznego punktu widzenia, starając się utrzymać naukę wuja Boba?
Boże obiekty i programowanie i projektowanie obiektowe:
Im więcej o tym myślę, tym bardziej myślę, że jest to coś więcej, czego uczysz się podczas studiowania OOP i nigdy nie jest to wyraźnie wzywane; To, co wynika z dobrego projektu, jest moim myśleniem (proszę, popraw mnie, proszę, jak chcę się uczyć), problem polega na tym, że „wiem” to, ale nie wszyscy, więc w tym przypadku nie jest to uważany za ważny argument, ponieważ Skutecznie nazywam to uniwersalną prawdą, kiedy w rzeczywistości większość ludzi jest statystycznie nieświadoma tego, ponieważ statystycznie większość ludzi nie jest programistami.
Wniosek:
Nie wiem, czego szukać, aby uzyskać najlepsze dodatkowe wyniki do cytowania, ponieważ robią one techniczne roszczenia i chcę poznać prawdę i móc to udowodnić cytatami jak prawdziwy inżynier / naukowiec, nawet jeśli Jestem stronniczy w stosunku do obiektów boskich z powodu mojego osobistego doświadczenia z kodem, który ich używał. Każda pomoc lub cytaty byłyby bardzo mile widziane.