2015-01-11 2 views
0

В то время как рефакторинг мой Пользователь класс, я создал новый класс UserService. После некоторой работы я решил переместить все связанные с пользователем операции в новый микросервис, который находится в пространстве имен «Пользователь».Имя модуля в пределах имени класса

Мой первый шаг был бы быть с пользователя :: UserService, который кажется немного излишним, но как-то User :: Service также звучит тусклый или просто ленивый печатать.

Что общего соглашения об именовании на популярных драгоценных камней Руби для этого случая

ответ

0

После некоторых испытаний мой текущий выбор является приличным избыточными User :: UserService

Причина заключается в том, что UserService является первый естественный ход рефакторинга и введение слишком рано 0 namespace может быть признаком чрезмерного дизайна.

Поскольку код созревает при переименовании UserService в User :: Service повсюду, это лишняя боль, особенно потому, что можно создать псевдоним в глобальном пространстве имен.

Внутри пользователя имен, используя только Service является немного неоднозначным, и необходимость набирать длинный избыточные имена из других пространств имен может быть сигналом о связи модуля.

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

  • Нет связанных вопросов^_^