Size: a a a

2018 November 07

SK

Sergey Kapralov in JUG NN
Roman Khlebnov
Ну, как минимум рулы на длину методов можно выкидывать в топку. Я например не понял - было сложно fluent builder сделать?
С fluent builderом будет fluent builder расти вместо метода. Сонар это устроит?
источник

SK

Sergey Kapralov in JUG NN
Я вообще не понимаю - че все так тащатся от этих билдеров
источник

RK

Roman Khlebnov in JUG NN
Не претендую на эксперта по Сонару, но мне было бы приятнее таким образом организовать большую композицию объектов
источник

SK

Sergey Kapralov in JUG NN
Roman Khlebnov
Не претендую на эксперта по Сонару, но мне было бы приятнее таким образом организовать большую композицию объектов
Здесь бы на примере неплохо. Чето у меня плохо коррелируется композиция и fluent builder
источник

RK

Roman Khlebnov in JUG NN
RenderSnake либу можешь глянуть
источник

SK

Sergey Kapralov in JUG NN
Roman Khlebnov
RenderSnake либу можешь глянуть
А, ну вот. Пример прям в точку. https://github.com/emicklei/rendersnake/blob/c2fdf3fb58dc39c4ede983ebf5e27f56d1aca5ad/rendersnake/src/main/java/org/rendersnake/HtmlCanvas.java - классец из 6к строк. Вам как клиенту может и удобно было бы юзать его, но мне как (гипотетичеки) мейнтейнеру было бы муторно такое саппортить.
источник

RM

Roman Makhlin in JUG NN
Daniel
о нет(
Сейчас приходится писать на прологе. Препод говорит, что сам не знает, зачем нам это нужно, но в плане есть, значит, проходим.
Это язык богов, на равне с лиспом. Мозги выправляет в нужном направлении, и заставляет думать в терминах данных и свойств данных
источник

II

Iurii Iurchenko in JUG NN
Егор Чернышов
Прошу прощения за вопрос, если он вдруг оскорбит чьи-то религиозные чувства: объясните пожалуйста, как писать в функциональном стиле на java? Это законно вообще?
https://dzone.com/articles/functional-programming-patterns-with-java-8 - вот тут можно примеры посмотреть. В общем некоторые элементы ФП в язык добавили, но оно так, на костылях.
источник

SS

Sergey Smyshlyaev in JUG NN
Sergey Kapralov
Спорно. Где написано что в ооп не может быть иммутабельности?
Это довольно очевидно. Представь что мы находимся в одном из методов объекта и нам нужно изменить внутреннее состояние объекта. Нам что, в этот момент делать копию себя? И что с этой копией теперь делать?
источник

SS

Sergey Smyshlyaev in JUG NN
Roman Khlebnov
Ну, некоторым людям Sonar не указ, что тут сказать
Сонар иногда такой бред несёт.
источник

RK

Roman Khlebnov in JUG NN
Ну так кто ж его без переделок настроек на дефолтах юзает
источник

SK

Sergey Kapralov in JUG NN
Sergey Smyshlyaev
Это довольно очевидно. Представь что мы находимся в одном из методов объекта и нам нужно изменить внутреннее состояние объекта. Нам что, в этот момент делать копию себя? И что с этой копией теперь делать?
Мы о чем - о мутабельности или об иммутабельности? Зачем нам понадобилось менять аттрибуты объекта?
источник

SS

Sergey Smyshlyaev in JUG NN
Какая разница зачем? Объект имеет внутреннее состояние, иначе зачем он нужен.
источник

SK

Sergey Kapralov in JUG NN
Вообще аттрибуты объекта - это первое что предлагает переосмыслить "Elegant objects". Вместо того чтобы рассматривать их как внутренний стейт, предлагается рассматривать их как identity объекта, и оставлять это identity неизменным.
источник

RM

Roman Makhlin in JUG NN
Тогда объект вырождается в структуру
источник

RM

Roman Makhlin in JUG NN
А структура это привет из процедурщины
источник

С

Сергей in JUG NN
что плохого в том чтобы держать логику и данные раздельно?
источник

С

Сергей in JUG NN
это еще и привет из функцианальщины
источник

SK

Sergey Kapralov in JUG NN
Roman Makhlin
Тогда объект вырождается в структуру
Че это?
источник

RK

Roman Khlebnov in JUG NN
Сергей
это еще и привет из функцианальщины
В функциональщине функции == данные
источник