Wpis z mikrobloga

@RobieInteres: Ponad 10 lat robię jako koder, kilka jako architek, a ty mi wyjeżdzsz, że świeżakiem jestem xD Allman jest dużo bardziej estetyczny i czytelny. No ale jak się klepie CRUDy w JS, to co na ten temat można wiedzieć :)
  • Odpowiedz
@slepiec: Wypraszam sobie z tym JS, to tylko przykład z neta. Natomiast z allmanem spotkałem się tylko na prezentacjach starych doktorków i w gąszczu kiepskiego kodu napisanego przez początkujących studentów piszących w C wzorujących się na tych prezentacjach ( ͡° ͜ʖ ͡°)
  • Odpowiedz
@FedoraTyrone: Optional panie Ferdku, słyszał pan o nim kiedyś? W przeciwieństwie do nulla nie jest niewidzialny dla type systemu i nie da sie go "przeoczyć", bo programista musi zdecydować co z nim zrobić. Zwracasz sobie optionala z takiej metody i każdy od razu widzi że ta wartość może być pusta i trzeba tą sytuacje obsłużyć w kodzie. Nullpointery znikają jak renkom odjoł ( ͡° ͜ʖ ͡°)
  • Odpowiedz
@RobieInteres: Mają luksusy w postaci resharpera który analizuje kod w locie i wywala luja ogłuszacza jak coś nie tak kombinujesz z null pointerami xD
Poza tym wszedł ostatnio pattern matching który mocno upraszcza sprawę i c# cegiełka po cegielce przepoczwarza się w f# XD
  • Odpowiedz
@FedoraTyrone:

Speaking at a software conference in 2009, Tony Hoare apologized for inventing the null reference:

I call it my billion-dollar mistake. It was the invention of the null reference in 1965. At that time, I was designing the first comprehensive type system for references in an object oriented language (ALGOL W). My goal was to ensure that all use of references should be absolutely safe, with checking performed automatically by the compiler. But I couldn't resist the temptation to put in a null reference, simply because it was so easy to implement. This has led to innumerable errors, vulnerabilities, and system crashes, which have probably caused a billion dollars of pain and damage in the last forty years.


Niektóre języki jak np. Kotlin (i chyba Swift) mają specjalne typy na nullowe zmienne i nie użyjesz takiej zmiennej, jeżeli jej wcześniej nie sprawdzisz. Oczywiście można zrobić sobie krzywdę i wymusić, ale po co? Zawsze trzeba starać się coś zwrócić, może pustą listę, może Optional, a może miotnąć wyjątkiem. Null powinien
  • Odpowiedz
@RobieInteres: Luz mordo, moim zdaniem Allman jest bardziej spójny, ale to kwestia gustu. Jedni lubi jak mu cyganie grają, drudzy, jak mu stopy śmierdzą. W tej dyskusji nawet nie wiem, którym jestem, bo spotkałem wielu utalentowanych programistów, często czuję, że byli byli bardziej utalentowani ode mnie, a prefowali K&R. Kernel preferuje K&R, ale ich narracja jest taka, że K&R, po K&R go używali i c--j. Ile wojen na ten temat
  • Odpowiedz