Sposób na wyrugowanie nulli z projektu

Posted on Updated on

null to zło: https://www.infoq.com/presentations/Null-References-The-Billion-Dollar-Mistake-Tony-Hoare

A teraz jak sobie z tym radzę:
– nigdzie explicite nie tworzyć null
– uczynić wszystkie obiekty immutable z konstruktorem mającym Guardy przeciw null, zapobiegnie to inicjalizowania nullami gdy nic nie zostało ustawione explicite
– uważać na metody LINQ typu FirstOrDefault(), więc albo unikać “OrDefault”, czyli korzystać z First(), Single(), albo odpowiednio zająć się sytuacjami gdy jednak ten defaultowy null może być przekazany
– Guardy na input z zewnętrz do naszych serwisów, chodzi o wywołania naszego kodu przez kod kliencki (ale gdyby to miał być UI to sytuacja jest analogiczna – nie wpuszczać nulli).

Przeoczyłem coś oczywistego?
Czy może ktoś uważa, że to jest naiwnie zbyt proste i się nie uda.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s