У меня есть базовый класс и производный класс на стадии разработки. Базовый класс останется одним, но многие производные классы будут наследоваться от него. Поэтому очень дорого вносить изменения в производные классы в будущем, и я ищу лучший дизайн для предотвращения этого.
На самом деле производному классу требуется только несколько методов для переопределения (если необходимо), но заманчиво раскрыть для него больше деталей.
Мой вопрос касается политики, которая будет расширяться в будущем.
Могу ли я свести к минимуму унаследованные методы / свойства для производного класса и, если необходимо, показать больше в следующих версиях без каких-либо изменений в производных классах?
Или я должен раскрыть что-нибудь, что может быть использовано производными классами в будущем, и позволить им выбирать, нужны они им или нет?
Спасибо