@FEAofTruss: ale mógł byś odrazu napisać własnymi słowami dlaczego uważamy to za dobrą praktykę :) bo początkujący coder napewno będzie miał problemy z interpretacją powyższych metod :)
@FEAofTruss: no ksiazka już od dawna nie potrzebuje placic za reklamy w portalach społecznościowych =]
@krasnoludkolo: chyba lepiej zrobić GetUser(); SendMail(user) ; niz zablokowac sobie latwa zmiane modelu usera, czy calego modulu do wysyłki maili poprzez zlaczenie tego w GetUserAndSandMail ;-)
@nilphilus nie chodzi mi o sytuację jak mówisz że jeden moduł pobiera sobie z drugiego coś (tak jak mowisz) tylko o to gdzie z obiektu dobierasz do obiektu gdzie dobierasz się do obiektu na którym potem coś robisz, jeśli te gety nie są jakimiś operacjami biznesowymi, a tylko getterami na pola
@krasnoludkolo: no dobra, sam getter na pole jest czasami dziwny, ale jak już tak to robisz to potem łatwo możesz wprowadzic tam jakas prosta operacje. Jak operujesz na polu to potem jesteś uwalony, kiedyś trochę tym oberwalem właśnie. A inna sprawa ze C# property robi przez proste get; set; to nie widzę z tym problemu
@krasnoludkolo: jakim? Poza prosta operacja typu null check, czy np stan zalezny od pola za duzo logiki w gettera, a tym bardziej settera nie powinno sie pchac
@krasnoludkolo: jak nie? Powinno, a raczej powinno obchodzić jaki to daje temu obiektowi stan. Np. Takie Entity przy setterach może mieć swój wewnętrzny stan isDirty żeby wiedział że ma się zapisać przy nastepnym Save(); Jakbyś tutaj np. Zaczął od zwykłych pól mogłoby się okazać że coś wykonuje na tym polu operacje której wykonać na setterze nie wolno i kicha.
Ogólnie te zasady czasami są upierdliwe ale mają swój sens. Ale też
Aktywne Wpisy
18+
Zawiera treści 18+
Ta treść została oznaczona jako materiał kontrowersyjny lub dla dorosłych.
“Dobrze znana zasada, nazywana prawem Demeter, mówi, że moduł powinien nie wiedzieć nic o wnętrzu obiektów, którymi manipuluje.”
#feaoftruss #czystykod #programowanie #programista15k #webdev #gamedev
Podobało się? To zaplusuj i zapisz się do wołania (link w stopce)
************
[Chcesz być wołany?]
Możesz zapisać/wypisać się klikając na nazwę listy.
Sponsor: Grupa Facebookowa z promocjami z chińskich sklepów
Masz problem z działaniem listy? A może pytanie? Pisz do IrvinTalvanen
! @FEAofTruss @mikasjp @vorio @MAT3N @Trustm3 @wszystkiefajnenickisazajete @avangarda @mozetenbedziewolny @PhatFarm05 @owocbananowca @pan_cziken @Tojtek @dotnetboy @Anon95 @kMarek @JachuPL @maykel @ugotowany_kamien @dyktek @Movet @se_czytam @MaNiEk1 @pieczony_ziemniaczek @ogib @adish24 @denis-szwarc @krypsi @nonsplit @krasnoludkolo @Gigantyczny_Bebech @legitAccount @hit_malinowy @Efilnikufesin @kafapre @skim @udips @paganek @emaq @
@krasnoludkolo: chyba lepiej zrobić GetUser(); SendMail(user) ; niz zablokowac sobie latwa zmiane modelu usera, czy calego modulu do wysyłki maili poprzez zlaczenie tego w GetUserAndSandMail ;-)
1. To trochę słabo ze im łapiesz kupców a oni sie z tobą nie dzielą :)
2. No w sumie ja też nie mam takiego zamiaru ale jeśli kogoś wkręcił temat na początek zapraszam na wiki https://pl.m.wikipedia.org/wiki/Prawo_Demeter
@krasnoludkolo oj tam grunt ze działa ¯\_(ツ)_/¯
Ogólnie te zasady czasami są upierdliwe ale mają swój sens. Ale też