Wpis z mikrobloga

12/100 dni z książką

“W wielu przypadkach kod mógłby zupełnie obejść się bez komentarzy [...] Co wolelibyśmy zobaczyć? To:

if((employee.flags & HOURLY_FLAG) && (employee.age > 65))
czy to:

if(employee.isEligibleForFullBenefits())


#feaoftruss #czystykod #programowanie #programista15k #webdev #gamedev

Podobało się? To zaplusuj i zapisz się do wołania (link w stopce)

************

[Chcesz być wołany?]
  • 30
Wołam zainteresowanych (15) z listy FEAofTruss
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
Wołam przez MirkoListy plusujących i komentujących ten wpis (48)

Sponsor: Grupa Facebookowa z promocjami z chińskich sklepów

Nie chcesz być wołany/a jako plusujący/a? Włącz blokadę na https://mirkolisty.pvu.pl/call lub odezwij się do @IrvinTalvanen

Uważasz, że wołający nadużywa MirkoList? Daj znać @IrvinTalvanen

! @AnonimoweLwiatko @daray89 @Shaunee @niexus @TfujpszyjacielRAK @RusXBlack @kaziu12 @horsehead @janusz-lece @Maro2 @nyszom @PiotrasSNK @arczi_awaryjny @Adaslaw @Misora @reqq @Test43213 @Cockatrice @Jdoejhdi @hurrdurr221 @rzezol @iksdede @Kierman @mikasjp @martinlubpl @eFieN @migutek @Kondz @
@wykop_hejter: kluczowe jest chyba to co napisałeś "większość osób tak nie robi"( ͡° ͜ʖ ͡°) Wydaje mi się, że ten przykład przedstawia pewną dobrą praktykę, której często nie widziałem w swoim jak i czyimś kodzie
@FEAofTruss: A mi się wydaje, że to:

if((employee.flags & HOURLY_FLAG) && (employee.age > 65))

może być ciałem metody employee.isEligibleForFullBenefits()

Można też nie bawić się w takie rzeczy, że klasa employee która przechowuje zapewne informacje o pracownikach jest odpowiedzialna też za sprawdzanie ich, a napisać zgrabny interfejs który będzie się zajmował takimi rzeczami ( ͡º ͜ʖ͡º)
@bi-tek: te prefixy to zlo. Lepiej już chyba wtedy intelisense wylaczyc...

Z długością bym tez nie przeszadzal ;-) a inna sprawa że wolał bym zwrocic tutaj flage Benefits. ALL która by w sobie wszystko miała. Łatwiej wtedy sprawdzac czy dany obiekt ma prawo do jednej rzeczy. Bo nie będzie if konkretna lub if all
@FEAofTruss. Jesli chodzi o mnie to zalezy czy potrzebujesz takiego warunku w aplikacji raz czy wiecej razy jak jest potrzebny tylko raz to nie tworzylbym ekstra metody na takie fanaberie. W moich apkach czesto potrzebuje globalne booleany i wtedy robienie metod to bardziej obowiązek. Trzeba sobie zawsze zadac k.rewsko wazne pytanie. Czy jest potrzebna jest lokalna zmenna czy wyzszego levelu. Moim zdaniem to nie kwestia elegancji tylko potrzeb.
@ameliniummm: Globalne booleany to raczej nie jest potrzeba =] No i przykład jest taki mało życiowy, ale chodzi o przekaz pewnej idei - taka nazwa metody nie wymaga dokumentacji ani znajomości 'reguł biznesowych' tak naprawdę. Wchodzisz w taki kod i już to rozumiesz, a jak jesteś ciekawy tych reguł to możesz wejść w środek - tam będzi to co było pokazane jako 'mniej czytelne' - Zresztą, zapomnij o tym jak nazwano
@nilphilus jaj juz wczesniej napisalem. Wszystko zalezy od potrzeb a nie milosci do konkretnego rodzaju rozwiazania. Dobra..inaczej ( ͡ ͜ʖ ͡)Jak potrzebuje globalny boolean to robie interfejs wywolywany metoda w stylu jak wyzej. IsSomethingOn. I tak..nie trzeba sie produkowac opisow wtedy. Globalne zmienne sa fuj( ͡° ͜ʖ ͡°)-