@victordeleco2: obniża czytelność kodu, a przede wszystkim dodanie każdego nowego przypadku wymaga ingerencji w istniejący kod. Polecam poczytać o open/closed principle (SOLID)
@kszych: to teraz pokaż jeden projekt które takie zasady stosuje, wydajność i czas dostarczenia produktu prawie zawsze są ważniejsze
jeżeli przyglądniesz kod źródłowy czegokolwiek, nawet od Google, Microsoft itd. to żadnego SOLIDa ani niczego takiego tam nie zobaczysz w większości. Chyba że masz znasz jakiś nietrywialny projekt open source który to rzeczywiście stosuje naprawdę.
@8478e37fa256bd7240fe50b0cbf227d5: mój aktualny, w którym pracuję. Drabiny ifów na pewno nie przejdą w code review, jeśli można to zrobić zgrabniej. To jest takie właśnie błędne myślenie - nie ma czasu, bo trzeba dostarczyć... szkoda że potem taki dług techniczny rośnie i spędzasz 2x więcej czasu na łataniu bugów i gaszeniu pożarów na produkcji.
@victordeleco2: Bo *może* to prowadzić do dużo gorszej czytelności kodu. O co chodzi? Często ifologia jest tworzona na potrzeby wprowadzenia jakiegoś dziwnego odstępstwa od logiki *typowego procesu*. I wtedy łatwo jednego ifa dodać jak występuje jakąś wyjątkowa sytuacja. Jednak łatwo też dodać drugiego ifa, trzeciego ifa w drugim ifie i tak dalej... i się robi bagno, którego każdy boi się dotknąć bo nie wiadomo co się stanie. Nie chodzi o to
@8478e37fa256bd7240fe50b0cbf227d5: w fintechu jest bardzo duże nastawienie na pisanie zgodnie z jak najlepszymi praktykami kiedy firma wie, że pisany kod będzie u nich działał przez kolejne 50 lat niczym COBOL ( ͡°͜ʖ͡°)
(W ogóle z COBOLa ludzie się śmieją, ale jak na wiedzę dot. praktyk z czasów kiedy był popularny to dużo mainframe'ów finansowych w nim pisanych wygląda zacnie - oczywiście jest kiepsko patrząc przez
Otwieram dyskusję.
Dlaczego ifologia (if/else) jest zła? Proszę o argumenty.
Ludzie tak #!$%@?ą o tym, że ify złe, ale jak mają switcha z 30 kejsami, to już luz :D
jeżeli przyglądniesz kod źródłowy czegokolwiek, nawet od Google, Microsoft itd. to żadnego SOLIDa ani niczego takiego tam nie zobaczysz w większości. Chyba że masz znasz jakiś nietrywialny projekt open source który to rzeczywiście stosuje naprawdę.
(W ogóle z COBOLa ludzie się śmieją, ale jak na wiedzę dot. praktyk z czasów kiedy był popularny to dużo mainframe'ów finansowych w nim pisanych wygląda zacnie - oczywiście jest kiepsko patrząc przez