devastation_kvlt
@devastation_kvlt

Зачем дублируют неймспейс в наименовании класса?

В популярных фреймворках принято называть классы так:
App\Repositories\UserRepository
App\Controllers\UserController


Почему не так?
App\Repositories\User
App\Controllers\User

Ведь это лаконичнее. Какие есть доводы в пользу такого наименования?
  • Вопрос задан
  • 203 просмотра
Пригласить эксперта
Ответы на вопрос 3
miraage
@miraage
Старый прогер
А при импорте обоих классов, что будете делать? На то и называют уникальными именами, чтобы можно было сразу отличить один класс от другого. Более того, такая архитектура (App\Repositories, App\Controllers) используется далеко не во всех проектах. Поэтому логично указать как функциональную составляющую (сервис, контроллер), так и доменную (user, app, article).
Ответ написан
inoise
@inoise Куратор тега PHP
Solution Architect, AWS Certified, Serverless
Фреймворки пишутся не 1, не 2, а большим числом людей. Поэтому создается универсальный naming convention. Кроме того - в одной директории под одним namespace могут лежать разные файлы, как, например, UserRepository и UserModel.
Ответ написан
@Kirill-Gorelov
С ума с IT
Хабр рекомендую. Должно ответить на твой вопрос. Это хорошо, что интересуешься.
Мне свое время помогла эта статья.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы