Wpis z mikrobloga

9/100 dni z książką

“Idealną liczbą argumentów dla funkcji jest zero (funkcja bezargumentowa). [...] Należy unikać konstruowania funkcji o trzech argumentach. [...] Więcej niż trzy argumenty wymagają specjalnego uzasadnienia - a nawet wtedy takie funkcje nie powinny być stosowane”


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

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

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

[Chcesz być wołany?]
  • 25
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@AnonimoweLwiatko: bo im więcej argumentów tym więcej zależności. Chociaż ja bym nie powiedział że 0 to idealna liczba, bo skads przecież dane trzeba mieć. Oczywiście pomaga DI i korzystanie z tego co wstrzyknieto ale jednak. No ale już co do 3 to się zgadzam, lepiej unikać. No i unikac bool w argumentach bo to prawie na 100% oznacza że w środku jest if który zmusza funkcje do dzialania zupełnie inaczej
  • Odpowiedz
@AnonimoweLwiatko: Jak wskazuje jeden z tagów, chodzi o #czystykod. Argumenty znajdują się na innym poziomie abstrakcji niż funkcja, są kłopotliwe w przypadku testowania (trudność napisania testów obejmujących wszystkie przypadki), parametry wyjściowe są wtedy też trudniejsze do interpretacji (w szczególności, gdy argumenty wejściowe są tak naprawdę tym co zwracamy z funkcji np. 'out'). Dodatkowo, gdy jest więcej argumentów ciężko zazwyczaj sprawić, żeby funkcja robiła jedną rzecz i kod
  • Odpowiedz
@AnonimoweLwiatko: nie. Tzn zalezy od tego jak duze i czy kopiujesz wartoec czy referencje. Ale wplyw na szybkosc to jakies tysieczne pewnie. Imho nadrzedna wartoscia jest czytelność. Malo przypadków wymaga zeby te tysieczne sekunf na tysiace wywolan ratowac bałaganem w kodzie
  • Odpowiedz