Size: a a a

Joker, Java-конференция

2018 October 21

OZ

Oleg Zolotarev in Joker, Java-конференция
Обязывает, вот
источник

S

Sabbath in Joker, Java-конференция
источник

S

Sabbath in Joker, Java-конференция
источник

T

Tagir in Joker, Java-конференция
Sergey Kapralov
Че с ним бодаться. Взять за ассампшен что нуля нет. Настроить анализатор на то чтоб в коде проекта не было константы нулл. Единственное что останется, это ввод-вывод из фреймворков - это уже не так муторно
Угу. Давай, исправь Map.get(), а я посмотрю.
источник

SK

Sergey Kapralov in Joker, Java-конференция
Tagir
Угу. Давай, исправь Map.get(), а я посмотрю.
Где в моем мессаге вы видели слово "исправь"?
источник

T

Tagir in Joker, Java-конференция
Sergey Kapralov
Ну например, из какой такой функциональной парадигмы родилась идея деконструировать класс. Класс, блин, ботва из ооп, которая по логике должна инкапсулировать свои нутря. А ту мы с пмом - а ну вывернись наизнанку. С кейс классами и прочими адт смотрится гармонично. С джава классами - не-пришей-кобыле-хвост
Не "вывернись наизнанку", а "разложись по полочкам тем способом, которым сам считаешь нужным". Как раз сейчас в джаве сериализация всякая (как родная, так и сторонняя) - это выворачивание объекта наизнанку с чтением приватных полей и т. д. Есть грандиозные мысли, что паттерн-матчинг позволит сделать хорошую сериализацию, хотя это совсем далёкий воображаемый друг
источник

SK

Sergey Kapralov in Joker, Java-конференция
Бида прям, мапгет нулл вернёт, все, надо перекочевывать.
источник

T

Tagir in Joker, Java-конференция
Sergey Kapralov
Бида прям, мапгет нулл вернёт, все, надо перекочевывать.
Ну сделал ты анализатор, чтобы в уже не было константы нулл, он тебе все вызовы Map.get подсветил, дальше что?
источник

SK

Sergey Kapralov in Joker, Java-конференция
Tagir
Ну сделал ты анализатор, чтобы в уже не было константы нулл, он тебе все вызовы Map.get подсветил, дальше что?
Не так. Анализатор подсветит все попытки девелопера заюзать явно нулл в собственном коде. Остальное - юзер инпут, либо выхлоп с фреймворков. Незазорно и проверить. Где есть мап гет, есть мапгетордефолт.
источник

T

Tagir in Joker, Java-конференция
Ага и у тебя мэпка, где значения - интерфейсы, а имплементации ни одной под рукой нет. Но ок, попробуй избавить нормальный продакшн-проект от наллов полностью, о результатах расскажи :-)
источник

T

Tagir in Joker, Java-конференция
Ещё, кстати, не забудь про неинициализированные поля, которые тоже источник наллов, хоть слово null и не пишется
источник

SK

Sergey Kapralov in Joker, Java-конференция
Tagir
Ага и у тебя мэпка, где значения - интерфейсы, а имплементации ни одной под рукой нет. Но ок, попробуй избавить нормальный продакшн-проект от наллов полностью, о результатах расскажи :-)
"сперва добейся"? На проде применять не приходилось, но в своих наработках по выше описанному принципу держать нули под контролем получалось проще. Правда там не было нужды в вышеписанной мапке.
источник

SK

Sergey Kapralov in Joker, Java-конференция
Sergey Kapralov
"сперва добейся"? На проде применять не приходилось, но в своих наработках по выше описанному принципу держать нули под контролем получалось проще. Правда там не было нужды в вышеписанной мапке.
Да и откуда вообще взялась такая мапка? Ни одной библиотеки не припомню с таким лютым выхлопом.
источник

T

Tagir in Joker, Java-конференция
Зачем обязательно библиотека? И чего лютого в интерфейсах?
источник

SK

Sergey Kapralov in Joker, Java-конференция
Tagir
Зачем обязательно библиотека? И чего лютого в интерфейсах?
А если не библиотека, но собственный код, то как то неправильно утверждать что ситуация с нулями в мапке не под контролем девелопера.
источник

T

Tagir in Joker, Java-конференция
Ну и скорее не "сперва добейся", а "в теории всё красиво, а на практике обычно куча граблей". А вообще я серьёзно. Если кто-то возьмёт кроваво-ентерпрейзный проект и зарефакторит его так чтобы наллы перестали быть проблемой (скажем, NPE в логах сведётся к нулю), новый опыт был бы весьма интересен
источник

T

Tagir in Joker, Java-конференция
Такое можно и доложить на конфе
источник

J

James Tiberius Kirk in Joker, Java-конференция
Tagir
Ну и скорее не "сперва добейся", а "в теории всё красиво, а на практике обычно куча граблей". А вообще я серьёзно. Если кто-то возьмёт кроваво-ентерпрейзный проект и зарефакторит его так чтобы наллы перестали быть проблемой (скажем, NPE в логах сведётся к нулю), новый опыт был бы весьма интересен
Тагир, а ты прикладывал свою руку в каком-либо виде к Collection API у котлина?
источник

T

Tagir in Joker, Java-конференция
Нет
источник

T

Tagir in Joker, Java-конференция
Один раз засабмитил недоработку в документации только
источник