С точки зрения дизайна, ни один класс не является более или менее важным, чем другой класс. Важно то, насколько точно ваша разработанная система программирования отображает реальную систему. Например, если вы хотите запрограммировать человеческое тело в файтинге, любая часть человеческого тела, которую вы хотите запрограммировать, должна быть отдельным классом (например, не потому, что ноготь никогда не используется в бою, это неважный класс, предположим, Вы хотите иметь класс ногтя). Разумеется, один класс может содержать другой класс (т. Е. Один класс является экземпляром другого класса), и те методы функций, которые предоставляют несанкционированную реализацию, могут быть реализованы в классе Util (т. Е. Класс Debug содержит методы, связанные с отладкой). *
Конструкция, которая точно отображает реальную систему, обеспечивает не только преимущества программирования, но и преимущества архитектуры, такие как гибкость и расширяемость.