2015-03-11 3 views
0

Я создал покерную игру с графическим интерфейсом; он имеет модели, просмотр, контроллер, пакеты viewController, которые содержат достаточное количество файлов.Упаковка нескольких классов enum

E.g. Модель имеет: CardModel, CardDeckModel и т.д.

Я также создал несколько перечислений классов: CardSuit, CardRank и т.д.

Так что мой вопрос: я должен создать отдельный пакет для этого перечисления классов, или я должен поместить их в модельный пакет?

+2

Они звучат как часть модели для me ... –

+1

как вам нравится, пока он компилируется и запускается. – HuStmpHrrr

ответ

1

Это зависит от использования. Главное, что касается разделов model/view/controller ..., состоит в том, что если по какой-то причине вы создаете еще один проект B, который нуждается в модели из проекта A, но не заботятся о других, вы можете получить чистый пакет модели из A, в свой собственный проект C, а затем использовать этот проект C как зависимость от A и B, повторно используя ваш код, не включая слишком много кода. Чтобы это сделать, семантика состоит в том, что классы (и интерфейсы, перечисления, все) в модели могут относиться только к другим элементам модели; элементы в контроллере могут ссылаться на элементы в контроллере или модели; элементы в поле зрения могут относиться к элементам в контроллере, представлении или модели; и так далее. Если класс вашей модели импортирует класс из контроллера, вы не сможете извлечь свою модель, как описано. Как вы сказали, вы заказываете слои по этому значению зависимости и для каждого вида enum, где находятся классы, которые нужны этому перечислению? Вы должны поместить перечисление в «минимальный» слой, который имеет какую-либо ссылку на это перечисление. Это в общем случае, по твоим именам, по именам этих перечислений, они, кажется, используются в модели (которая была бы самым низким слоем), поэтому, похоже, они там находятся

+0

Спасибо за ваш ответ! – Artyom

Смежные вопросы