W wielu językach programowania, słowo kluczowe null
jest używane do oznaczenia braku wartości. Jednym z problemów związanych z takim podejściem jest sytuacja, w której nasz program może niespodziewanie zakończyć działanie kiedy próbujemy wejść w interakcję ze zmienną która akurat jest niczym.
W Ruscie nie istnieje koncepcja null
. Nie oznacza to jednak braku możliwości reprezentacji niczego w tym języku!
Po prawej stronie mamy przykładową implementację wykorzystującą znane nam już narzędzie.
Taki wzorzec, polegający na reprezentacji niczego opcją None
dla jednej lub więcej wartości, jest bardzo częstym widokiem w Ruscie. Powodem jest właśnie możliwość zastąpienia w ten sposów niewygodnego null
.
Typy generyczne pomogą nam definiować uniwersalne rozwiązania z wykorzystaniem None
zamiast null
.