Odpowiedzi:
Scala jest również inspirowana Ocaml, który korzysta z Opcji .
Opcje to standardowy typ Ocaml, który może być
None
(niezdefiniowany) lubSome x
gdzie x może mieć dowolną wartość. Opcje są szeroko stosowane w Ocaml do reprezentowania niezdefiniowanych wartości (trochę jak NULL w C, ale w sposób bezpieczny dla pamięci i typu) ...
Myślę, że wybrana nazwa jest kwestią gustu.
Option
tym jest to, że jest to optional
wartość (albo ją rozumiesz, albo nie rozumiesz). Maybe
implikuje pewien stopień niepewności ze strony programisty. Może jest wartość? Nie wiem .. Czy powinienem otrzymać wartość? optional value
Moim zdaniem brzmienie brzmi bardziej celowo.
Lepszym pytaniem byłoby tutaj, dlaczego wywoływany jest typ opcji Haskella Maybe
. Typ opcji ML jest prawdopodobnie dziadkiem wszystkich typów opcji i nazywa się option
.
W każdym razie jest to pytanie terminologiczne, więc nie będzie zawierała zasadniczej odpowiedzi. Ludziom, którzy wybrali imię w Haskell, bardziej się podobało, to wszystko.
option
jest skrótem optional
. W takim przypadku (wielokrotne) wybory są zredukowane do dwóch: albo tam jest, albo nie ma.
Maybe