Страница 2 из 2

Re: ActiveRecord vs DataMapper

Добавлено: 2020.01.09, 18:58
samdark
А можно поподробнее, это где я такое советую?
Парой постов выше, но, видно, я не так прочитал вот это:
Не обязательно, может быть и только одна таблица companies для сущности Company и наследующих ее Buyer и Seller.

Re: ActiveRecord vs DataMapper

Добавлено: 2020.01.09, 20:11
ElisDN
yiiliveext писал(а): 2020.01.09, 17:12 Подход, скажем так, сомнительный. Если еще для интеграции чужих модулей с натяжкой можно использовать, то для создания своей системы независимых модулей я бы его не советовал. Гораздо лучше получается через интерфейсы, внедрение зависимостей и композицию.
Может и сомнительный, но однозначный и на любом масштабе к лапшекоду не приводит.

А нюансы обсуждали на примере в viewtopic.php?f=19&t=51084

Re: ActiveRecord vs DataMapper

Добавлено: 2020.01.13, 01:45
uEhlO4a
моя практика показывает, что у DataMapper есть 2 мнимых преимущества

1. защита от утечки памяти если приложение работает с консоли как служба. Мнимое, потому что у меня было 2 проекта на Symfony и утечки памяти были в самом Doctrine (gc_collect_cycles() работает только если утечка была устранена), как пример SQL Logger, можешь сам поискать
orm memory leaks
dbal memory leaks


2. отсутствие зависимости от фреймворка - это вообще чистая религия, т.к. проект который подсел на Doctrine ORM никогда в жизни с него не слезет.

после выхода 7.4 (https://www.php.net/manual/en/class.weakreference.php) преимуществ нет никаких, только одни костыли - делаем гибкий язык НЕгибким, добавляем еще strict_type=1 и исправляем то, что не требовало исправлений до этого (ограничения при наследовании, типизация, явное проксирование всего и вся, усложнение использования транзакций и т.д.), то есть идем по пути "если бы у рыбы была шерсть, то были бы блохи, а блохи - это...", то есть, делаем с языка С++, а данные в С++ мы получаем через DataMapper.. примерно так и работает.


п.с.
и да, я из секты свидетелей ActiveRecord, т.к. считаю это верной веткой в эволюции преобразования данных с базы в обьекты кода. А когда у меня база noSQL, то это вообще для меня очевидно.

п.п.с.
норм текст https://github.com/codedokode/pasta/blo ... rns-oop.md

Re: ActiveRecord vs DataMapper

Добавлено: 2020.01.14, 14:37
samdark
uEhlO4a

1. Это просто Doctrine. У Cycle такого нет.

Re: ActiveRecord vs DataMapper

Добавлено: 2020.03.17, 09:03
anton_z
samdark писал(а): 2020.01.14, 14:37 uEhlO4a

1. Это просто Doctrine. У Cycle такого нет.
У Cycle нет много того, что есть в doctrine и даже в Yii AR.