Naik, а ты работаешь или код читаешь целый день? ![]() Или ты бездельничаешь и решил автокомплит отключить, шоб интереснее было? ![]()
Без иде беда))
Нашли из-за чего сраться
Naik, но я и не говорил про методы, а про самостоятельные функции, без сайд-эффектов, которые оперируют данными и возвращают результат. Превращая их в классы, чтобы передавать меньше аргументов на один вызов, код только усложняется. Мне не будет проще читать лапшу из десятка двухстрочных методов классов, работающих с полями, независимо от их числа аргументов, дебаг остается болью. <дальше могла быть реклама фп, но мне уже надоело> Оверлоадинг вообще легко заабузить, что libgdx и делает. Разделить этот draw на отдельные методы с очевидными названиями было бы лучше, как например в kha (drawImage/drawSubImage/drawScaledImage).
Попробуй заюзать метод zip или merge из RxJava2, офигеешь от количества перегрузок, дженериков и т.п. Только ide и спасает подсказками.
RblSb, не лучше. Попробуй, когда колличество классов пернвалит хотя-бы за 100 поюзать методы, где 4-5 булевых параметра, или почитать такой код. И даже если это разнородные параметры, такой код очень плохо читается. И ты не учел, что билдер или dto обьект ты всегда можешь изменить, и тебе не придется менять сигнатуру методов. Это и упрощает добавление фич и обратная совместимость кода. А попробуй в той же libgdx добавь в часто используемый метод параметр. Не сможешь. Придется перегружать, и оставлять старый. А потом в автокомплите 5 методов с одним названием и разными параметрами, и попробуй выбери подходящий ![]() Изм. Naik (19.09 / 12:02) (1)
То что это не используют в бизнес-логике не значит, что это следует избегать. Доп аргументы для полноценной функции будут явно лучше, чем отдельный класс, делающий тоже самое, только с полями и билдерами.
RblSb, ахах лол. Пример с ректом ![]()
https://m.habr.com/post/423691/ тоже норм описано
RblSb, в libgdx встречаются и такие динозавры, как этот:
![]() ![]() ![]() ![]() |