Какая практика лучше? Protected / getter?

Если у меня есть класс, наследующий от другого, и только этот класс должен использовать определенную переменную, что лучше? Чтобы указанная переменная была «защищенной» в базовом классе, или чтобы она была закрытой и имела защищенный метод получения?

Я слышал противоречивые вещи. Мои учителя говорили мне всегда использовать геттеры, в то время как другие люди говорили мне, что использование геттеров на любом уровне показывает плохой дизайн программы. Каков настоящий ответ? Я чувствую, что оба являются нелогичными крайностями.

Кроме того, если геттеры и сеттеры плохо спроектированы для программы, почему это так?

Есть ли какие-нибудь ресурсы, которые научат меня больше о том, как структурировать мой код?

8
задан soulcheck 20 November 2011 в 12:55
поделиться