Как определить, как вызвать класс XHelper или XUtils?
На мой взгляд :
Вспомогательный класс - это класс, который может быть создан и выполнять некоторую бизнес-работу.
Класс Utils - это статический класс, который выполняет небольшие и повторяющиеся операции над экземпляром определенного типа (пример классов utils ArrayUtils или IOUtils от Apache)
Utils
для статического класса, который можно использовать где угодно в организации или в другой организации. УHelper
класса есть общий код, который можно повторно использовать в проекте, и он имеет зависимости внутри проекта. Конечно, общепринятого правила нет, но я считаю это полезным.Ответы:
Есть много стилей именования. Я бы предложил Utils только потому, что он более распространен.
Подразумевается, что служебный класс имеет только статические методы и не имеет состояния. Вы бы не стали создавать экземпляр такого класса.
Помощник может быть служебным классом, иметь состояние или требовать создания экземпляра. Я бы по возможности избегал этого.
Если можете, уточните название. например, если у него есть методы сортировки, сделайте его XSorter
Для массивов вы можете найти вспомогательные классы, такие как
Кстати, сокращение для служебного класса - это перечисление без экземпляров
Если вам нужно реализовать интерфейс, я бы использовал синглтон без сохранения состояния.
источник
В основном? Это совершенно произвольно. Для этого нет никаких правил.
источник
Утилита - это класс общего использования "листовой узел". То есть он не имеет никаких зависимостей в вашем проекте и может быть перенесен из проекта в проект, не ломаясь и не становясь бесполезным. Примеры:
Vector3
,RandomNumberGenerator
,StringMatcher
, и т.д. ...«Помощником» может быть любой класс, созданный для помощи другому классу. Это может зависеть или не зависеть от вашего проекта. Если вы создаете
GameNetworkClient
класс, вы можете сказать, что онGameNetworkConnection
является «помощником», потому что он «помогает» классуGameNetworkClient
.То, как разработчики относятся к инструментам, отражает обычное употребление этих слов. Если вы можете вспомнить слуховые аппараты, описанные как «полезные» и «полезные», полезный инструмент имеет некоторый контекст (терка для сыра помогает натирать сыр, устройство для зачистки кукурузы помогает снимать кукурузу, скорострельный погрузчик помогает перезарядить огнестрельное оружие). Ожидается, что "утилита" будет работать в самых разных контекстах (WD-40, клейкая лента, армейские ножи, клей, фонарик и т. Д.).
источник
Как сказал Джеспер, это совершенно произвольно . Вы можете подумать о том, что работает для вашей организации, и сделать это условием.
Для меня это примерно так:
Выполнение общих задач, которые могут быть полезны в разных модулях. Как сказал Питер Лоури, полезны более конкретные имена .
Задачи, которые используются только в том модуле, в котором они размещены, и не имеют смысла для импорта в другое место. Следовательно, имя может быть более конкретным - ModuleName Helper (например, AdministrationHelper , LoginHelper )
источник
На это нет окончательного ответа. Придумайте одну схему именования и придерживайтесь ее. Присвоение имен вашим пакетам и классам - важная часть архитектуры программного обеспечения, и никто не может лишить вас этого решения.
Мне лично больше нравится XHelper, но я чаще вижу XUtils в чужом коде.
Мне также нравится схема именования во множественном числе, которую вы найдете как в JDK, так и в Guava :
если класс имеет дело с
Collection
объектами, он называетсяCollections
Массив> Массивы (jdk)
Список> Списки (гуава)
Карта> Карты (гуава)
и т.п.
источник