У меня возникла дилемма, когда мне нужно выбрать между различными типами наследования для григорианского и юлианского календарей. Я хочу иметь один класс с именем Date в качестве базового класса. Мой вопрос заключается в следующем: Должен ли я иметь класс для григорианского календаря, который наследуется от класса даты, и для юлианского календаря, который делает то же самое? Или только класс Gregorian должен наследоваться от класса Date, а Julian - от класса Gregorian, или наоборот? Или я должен иметь класс под Date, который наследуется от Date, и чтобы Gregorian и Julian наследовались от этого класса?
Date Date Date Date
Gregorian Julian Gregorian Julian New class
Julian Gregorian Gregorian Julian
Я бы лично выбрал первый вариант, где оба наследуются от Date, хороший ли это выбор. Могу ли я получить несколько мнений по этому поводу?