Часто невозможно сказать, что «правильно» или «неправильно», когда дело доходит до дизайна класса. Есть много руководств, шаблонов, рекомендаций и т. Д. По этой теме, но в конце концов, имхо, это много об опыте предыдущих проектов. По моему опыту, лучше не беспокоиться об этом и постепенно улучшать ваш код / структуру небольшими шагами. Поэкспериментируйте и посмотрите, как некоторые идеи / изменения ощущаются / выглядят. И это, конечно, всегда хорошая идея учиться у других. прочитайте много кода и проанализируйте его, попытайтесь понять :).
Если вы хотите прочитать о теории, я могу порекомендовать Крейга Ларманса «Применение UML и шаблонов: введение в объектно-ориентированный анализ, проектирование и итеративную разработку» Amazon . Он охватывает несколько частей вашего вопроса, дает некоторые приблизительные ориентиры и показывает их, используя пример приложения. Мне понравилась книга.
Не могли бы вы загрузить свое приложение куда-нибудь? Возможно, на github или около того, возможно, вы могли бы попросить несколько конкретных советов.