LINUX.ORG.RU

История изменений

Исправление Legioner, (текущая версия) :

Стандартные аргументы — ты «завтра» захочешь усложнить логику присваивания или получения значения свойств и тебе придётся переписывать клиентов класса, а если сразу сделаешь с геттерами-сеттерами, то не придётся; так принято, так все делают, не выёживайся, самый умный что ли; разнообразные библиотеки работают со свойствами в виде геттеров-сеттеров, а с полями могут быть проблемы.

Моё имхо — нет никаких проблем, но с геттерами-сеттерами точно так же нет никаких проблем, поэтому чтобы не вызывать лишних вопросов — лучше сделать через них. Ну и, имхо, когда таки придётся добавлять геттеры-сеттеры (ибо захочется сделать проверки значений или автовычисляемые значения или кешируемые значения), то код клиента будет выглядеть стрёмно, там поле, тут геттер, там присваивание, тут сеттер. Уж лучше всё в одном стиле.

Правильным является поддержка свойств на уровне языка, но в Java до такого почему то за 20 лет не доросли.

Исходная версия Legioner, :

Стандартные аргументы — ты «завтра» захочешь усложнить логику присваивания или получения значения свойств и тебе придётся переписывать клиентов класса, а если сразу сделаешь с геттерами-сеттерами, то не придётся; так принято, так все делают, не выёживайся, самый умный что ли; разнообразные библиотеки работают со свойствами в виде геттеров-сеттеров, а с полями могут быть проблемы.

Моё имхо — нет никаких проблем, но с геттерами-сеттерами точно так же нет никаких проблем, поэтому чтобы не вызывать лишних вопросов — лучше сделать через них.