Как назвать класс, который имеет доступ к базе данных? Доброго вечера.
В MVC этим часто занимается модель. Но как быть в общем случае? Сейчас использую для этого Репозиторий, а то, что хранилищем выступает БД, остается деталью реализации (что-то мне подсказывает, что это решение притянуто за уши и семантически некорректно). В то же время, в Yii есть ActiveRecord, который привязан к таблице и многими называется моделью.
Так чем обычно является класс, в чьи полномочия входит доступ к базе данных для получения \ сохранения определенных сущностей, например, User? И как правильнее поступать, привязывать такие классы к сущности или к таблице?
Заранее спасибо.

21 Авг 2019 в 06:22
264 +1
0
Ответы
1

Добрый вечер!

Класс, который имеет доступ к базе данных для получения и сохранения определенных сущностей, можно назвать Data Access Object (DAO) или Repository. В общем случае, обычно такой класс является частью слоя доступа к данным (Data Access Layer).

Относительно привязки к сущности или таблице, предпочтительнее всего использовать привязку к сущности. Это позволит создать более абстрактный и гибкий интерфейс для работы с данными, который не будет прямо зависеть от структуры базы данных. В случае привязки к таблице, изменения в структуре базы данных могут повлечь за собой изменения во всех классах, которые к ней привязаны.

Использование ActiveRecord, как в Yii, также является распространенным подходом. ActiveRecord позволяет работать с записями в базе данных, как с объектами, что делает код более читаемым и удобным для разработчиков. Однако, при использовании ActiveRecord важно учитывать его недостатки, такие как меньшая гибкость и возможные проблемы с производительностью при работе с большим объемом данных.

Надеюсь, это поможет вам принять правильное решение по организации доступа к базе данных в вашем проекте. Если у вас есть еще вопросы, не стесняйтесь их задавать. Удачи!

20 Апр в 13:19
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 91 947 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир