Здравствуйте, vsb, Вы писали:
vsb>>>Это не мелочи. В общем случае на уровне IDE не решается (к примеру из 40 методов 38 автосгенерированные, а 2 — нет и это хорошо бы видеть). И код часто смотрится не только в IDE. vsb>·>Во-первых, неясно зачем их видеть? vsb>Что значит "зачем их видеть"?
"2 — нет и это хорошо бы видеть" — зачем видеть отсутствующий геттер-сеттер?
vsb>Глаза закрывать? У меня есть файл, описывающий АПИ. В нём 5 строк кода, вызывающего что-то. В запросе/ответе по 30 полей, к примеру. Итого 65 строк осмысленного кода. И к этим 65 строкам прилагается 480 строк геттеров-сеттеров. И таких запросов, скажем, 20 штук. Лёгким движением руки из 1200 строк получаем 10 000.
Обычно получается так, что API описывается каким-то внешним способом (FIX, swagger, avro, protobuf, етс) и код таких классов генерируется.
vsb>·>Во-вторых, если поле приватное и никак не используется, то будет warning в idea. vsb>Не понял, при чём тут приватное поле.
Ну обычно объявляется приватное поле и публичные геттер-сеттер для него.
vsb>·>Ну и вообще, есть record и даже всякие любительские штуки типа lombok. vsb>record пока не готов, хотя я тоже жду, пока они добавят withers. Для Hibernate он вряд ли когда-нибудь будет готов, поэтому полностью он проблему не решит, но ничего другого от разработчиков языка мы видимо не дождёмся.
Не, record вполне готов. Туда пихать ничего лучше не надо. Если что-то добавлять для билдеров, то это пусть лучше будет какая-то другая фича.
В c# {get;set;} — это встроенная фича языка, а в java это реализуется библиотечно с помощью Annotation Processor, как частный случай. Поэтому нет смысла пихать какой-то новый синтаксис.
vsb>lombok это да, это единственное, что хоть как-то спасает. Но надо понимать, что lombok это ещё один язык, похожий на Java. Я бы предпочёл писать на Java, а не на lombok.
Согласен. Впрочем создать dto+builder+withers+toString можно при отсутствии альтернатив.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай