W Javie 8 widziałem coraz więcej artykułów na temat korzystania z Option / Optional. Rozumiem, co próbują przedstawić, i widzę wiele przykładów ich wykorzystania jako zwrotów. Jednak nie widzę ich jako argumentów metody / funkcji w językach, które nie mają składni parametrów domyślnych / opcjonalnych.
Czy istnieje jakikolwiek powód, aby nie używać Optional
jako argumentu metody w przypadku, gdy wiadomo, że argument jest czymś, co może lub nie być potrzebne? Oto przykład, o którym mógłbym pomyśleć:
Optional<Customer> lookupCustomer(String firstName, Optional<String> middleName, String lastName)
Optional
jest przeznaczony przede wszystkim do zwracanych wartości, które mogą być nieobecne. Oczywiście możliwe są inne zastosowania, ale są nieporęczne i prawdopodobnie mają kiepski styl.