All streams
Search
Write a publication
Pull to refresh
64
0
Адель Файзрахманов @Adelf

Пользователь

Send message
Используйте Блокнот. Ему нужно очень мало памяти.
Разработчикам плагинов легко дают опенсорс лицензию на ультимейт. С этим нет проблем.
Дневной с 8 до 23. Ночной с 23 до 8. Все работает.
Правда, промокоды для первой конфы как бы намекают…
Самое вероятное. А то ни автора, ни блога компании :)
>> Мы часто отправляем сотрудников на разные ИТ-ивенты,

Кто мы? Пост максимально анонимный :)
Я подготовился еще хуже :)
Записалось норм. На неделе выложу. Но наверняка многое упустил ) Я поспевал за твоей мыслью, но с некоторым трудом иногда :)
На доклады, скорее всего, не успеете, но вероятно сможете пообщаться. Такие вещи затягиваются с последующими перемещениями в бары.
Я сейчас пробую организовать сносную запись видео. Надеюсь, получится.
Это не призыв отказаться от скоупов. Предложенные Queries и скоупы можно использовать вместе как раз для кейсов описанных вами. Эти Queries позволяют приложению абстрагиваться от метода доставания Eloquent сущностей. Как следствие, мы может организовать кеширование без изменения всего приложения, а только лишь добавлением новых реализаций интерфейсов и конфигурирования контейнера. Это сродни Open-Close принципу, но немного в другом масштабе.
Если не лезем в логику приложения, то она и не сломается каким-нибудь неудачным копипастом.
Ну read-модели по определению анемичны. А write-модели… да. Сложно команду научить и заставить делать write-сущности без геттеров и сеттеров. У меня не получилось.
Не задели. Написал большое добавление к статье. Может как-то обьяснит мою мысль :)
Написал большое добавление к статье. Спасибо что подтолкнули.
Про ключи per user ничего сказать не могу. Не делал такое. У меня ключ формировался довольно четко и эвент листенер и декоратор спокойно их использовали. Но нужно их генерацию вынести в отдельные классы. А то бывали у нас… несовпадения ключей тех, которые юзали декораторы и тех которые «инвалидировали»
Декоратор никак не связан с инвалидацией. Самое простое — генерить нормальные доменные эвенты(PostPublished, PostDeleted) и сбрасывать нужные кеши. Но это не всегда просто. Особенно если закешированы прям целые коллекции сущностей. Поэтому, вероятно лучше для например last posts хранить только id записей и потом делать multi-get к кешу.
Полностью согласен. И даже коротко примерно описал:
Если же бизнес-логика так сложна, что очень хочется покрыть ее тестами, то лучше взять data mapper библиотеку вроде Doctrine и полностью отделить бизнес-логику от остального приложения. Юнит-тестирование станет раз в 10 проще.
Полностью отделенная логика предполагает абстракции вроде Репозиториев. По крайней мере, для write моделей.
Посыл верный. На моем проекте по многим причинам мы перешли к POPO классам для read моделей. В статье же посыл немного иной — «если хочется поиграться с паттернами — то лучше так, а не бесполезный Репозиторий». Не стал статью перегружать ещё и этим. Возможно, зря.
Пожалуй, с этой точки зрения действительно стоило не превращать это в две статьи, а написать все в одной…

Information

Rating
Does not participate
Location
Казань, Татарстан, Россия
Date of birth
Registered
Activity