доменный дизайн — PHP DDD, как назвать метод точки входа?

Что должно быть лучшей практикой в ​​php, чтобы называть метод точки входа в сервисе, следуя принципам разработки DDD.

То же, что и класс:

class GetSinglePerson {
...

public function getSinglePerson($personId)
{
}
}

Шаблон команды:

class GetSinglePerson {
...

public function execute($personId)
{
}
}

Адаптер шаблон:

class GetSinglePerson {
...

public function handle($personId)
{
}
}

3

Решение

Некоторые замечания, которые не помещаются в комментарии;)

  • DDD это не архитектура

  • Называя класс глаголом (GetSinglePerson) вместо существительного редко встречается в ОО, включая DDD.

  • Execute это командная терминология — GetX обычно это не команда, а запрос — см. CQRS.

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

4

Другие решения

Это действительно зависит от вас. Я бы перечитал PSR-1 Базовый стандарт кодирования у него есть руководящие принципы, которые я хотел бы, чтобы мы все следовали. 🙂

Пока вы последовательны, это главное.

Этот пункт в особенности торчит мне и применяется в этом вопросе / ситуации.

4.2. свойства

Это руководство намеренно избегает любых рекомендаций относительно использования
имен $ StudlyCaps, $ camelCase или $ under_score.

Какое бы соглашение об именовании ни использовалось, СЛЕДУЕТ применять последовательно
в разумных пределах. Эта область может быть на уровне поставщика,
уровень пакета, уровень класса или уровень метода.

4,3. методы

Имена методов ДОЛЖНЫ быть объявлены в camelCase ().

0

Я бы использовал индекс. Если вы используете что-то вроде laravel или codeigniter, оно должно выполнять маршрутизацию как / GetSinglePerson / {personId}

class GetSinglePerson {
...

public function index($personId)
{
}
}
0