кода должно быть достаточно для реализации заложенной в класс логики, выполнение к-рой будет делегировано исключительно ему/объекту данного класса
важно разграничивать функционал, который вы хотите реализовать в рамках того или иного класса. отделять мухи от котлет, как любят говорить
остальное - вопрос архитектуры ПО, как уже было ранее озвучено