https://gist.github.com/noelwelsh/02b9ecf6d21c7b8934e8
Хотя в текущем проекте потенциально null-ы могут придти только из внешних систем (), но писать обработку на всякий случай приходится. Сейчас это только Cassandra и какая-то хреновина для гео-локации по ip (maxmind). Наследие. "В java только дедушки" (с).
null вообще запрещен синтаксически к употреблению в scalaStyle. Приходится в нескольких местах закрывать/открывать проверку стиля.
Вот те две проверки на равенство null теперь можно довольно красиво заменить на (см. ссылку на месте первого абзаца):
> result.?.getOrElse("")
Перфекционизма с возрастом все больше и больше. Это отход от студенчества.
Прошелся по коду. Оказалось, что Option[_] тоже можно глуповато использовать. Очевидно, это лучше чем null. Но и пересолить/переборщить тоже можно. К тому же, если потом в каждом месте match-ить или if-ить. Try[_] там оказался уместнее. Хотя дать волю, то его тоже начнуть match-ить или if-ить, хотя кроме необходимого map/flatMap больше ничего и не надо.
В scala очень нравится то, что через месяц (и каждый месяц в течение нескольких лет) написанный код уже начинает вызывать отторжение, и хочется переписать на чуть более абстрактные абстракции. И это очень клево, хоть какая-то движуха.
Хотя в текущем проекте потенциально null-ы могут придти только из внешних систем (), но писать обработку на всякий случай приходится. Сейчас это только Cassandra и какая-то хреновина для гео-локации по ip (maxmind). Наследие. "В java только дедушки" (с).
null вообще запрещен синтаксически к употреблению в scalaStyle. Приходится в нескольких местах закрывать/открывать проверку стиля.
Вот те две проверки на равенство null теперь можно довольно красиво заменить на (см. ссылку на месте первого абзаца):
> result.?.getOrElse("")
Перфекционизма с возрастом все больше и больше. Это отход от студенчества.
Прошелся по коду. Оказалось, что Option[_] тоже можно глуповато использовать. Очевидно, это лучше чем null. Но и пересолить/переборщить тоже можно. К тому же, если потом в каждом месте match-ить или if-ить. Try[_] там оказался уместнее. Хотя дать волю, то его тоже начнуть match-ить или if-ить, хотя кроме необходимого map/flatMap больше ничего и не надо.
В scala очень нравится то, что через месяц (и каждый месяц в течение нескольких лет) написанный код уже начинает вызывать отторжение, и хочется переписать на чуть более абстрактные абстракции. И это очень клево, хоть какая-то движуха.
Комментариев нет:
Отправить комментарий