О том, как опасно бежать впереди паровоза Прогресса

Dec 13, 2022 22:17

В давние времена, ещё до Java 1.8, один руководитель джавового проекта увидел однажды, что в языке Scala для работы со значениями, которые могут быть null, используется Option. И так ему понравилась эта идея, что он написал на Java свою собственную библиотеку c Option, и внедрил на своём проекте, яко полезную. Шли годы, Java обзавелась собственным аналогичным классом, Optional, и теперь в кодбазе примерно в двух третях случаев используется самописный Option, а в оставшейся трети - стандартный Optional. Есть и утилита, которая конвертирует одно в другое.

Но это пол-беды. Хуже то, что в те времена, когда самописный Option в кодбазу широко внедрялся, использовался он примерно так:

Option valueOption = Option.option(nullableValue);

if (valueOption.isDefined()) {

ValueClass value = valueOption.get();

...

} else {

...

}

из-под асфальтоукладчика

Previous post Next post
Up