Я создаю регистратор инвентаризации торговых карточек для своей второй половинки, и у меня возникают трудности с пониманием того, как лучше всего подходить к этой проблеме:
У многих карточек есть 11 атрибутов, которые являются общими для всех. Ни одна карта не имеет этих атрибутов.
Существует 7 типов карточек с общими 6 атрибутами, которых нет в других классификациях карточек.
Что у меня есть сейчас:
- У меня есть абстрактный класс, который используется для размещения 11 общедоступных атрибутов.
- Я включил остальные 6 атрибутов в отдельные конкретные классы.
Что я собирался сделать:
- Создание абстрактного класса, содержащего основы всех карт
- Создание еще одного абстрактного класса, который содержит 6 атрибутов, используемых 7 типами карт, как обсуждалось выше.
- Создание меньших классов для граничных случаев, например, один тип карты имеет два атрибута, которых нет ни в одной из других карт.
Есть ли что-то еще, что я мог бы сделать? Это просто класс данных, в котором хранится информация о каждой карте, и мне не нужно беспокоиться об обработке нулей, если я помещу все это в один и тот же класс. При необходимости я могу предоставить ссылку на GitHub, но я бы предпочел этого не делать, потому что многие люди, увлеченные игрой, для которой я создаю приложение для инвентаризации, отчитывали меня на Reddit.