Найдено 540 результатов

BrusSENS
2019.10.01, 16:52
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

Ну его на какой то конференции по RoR (как бы под сайты) кто то спросил как натянуть все это красивое на ActiveRecord, он ответил: "натягивайте, что мешает :lol: " У меня в городе тут есть человек, который в жигули запихал 2JZ-GTE двигатель, мощностью около 700лс. Ему вроде тоже ничего не...
BrusSENS
2019.10.01, 16:46
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

Кто такой дядя Петя я не знаю, будет он весомым специалистом в ООП, как дядя Боб(или не в курсе кто это?), тогда о нем и поговорим. Чего попытка у меня, указано в первом посте темы. Вы прежде чем читать труды Мартина посмотрели бы с каким он языком работает. Многое реализуемое на крестах будет очен...
BrusSENS
2019.10.01, 16:16
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

chungachguk писал(а): 2019.10.01, 14:52 Хм, а может не стоит смешивать? Если UUid, то параметр в конструкторе нужен, если AutoInc, то нет?
И будем плодить тонну реализаций сущности для каждого случая? Проще чутка начать играть "по своим правилам".
BrusSENS
2019.10.01, 16:15
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

maleks писал(а): 2019.10.01, 14:38 Будут какие то аргументы для этого утверждения?
Вам аргумента о том, что у Вас сущность сама себя сохраняет просто в объекте-обёртке, называемой "репозиторием" мало? Вы просто сделали вызова метода save() изнутри другого объекта.
BrusSENS
2019.10.01, 13:27
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

maleks писал(а): 2019.10.01, 13:14 а потом все измененное состояние уже через репозиторий сохранить.
Вы правда не понимаете того, что у Вас репозиторий ничего не сохраняет и он бесполезный объект?
BrusSENS
2019.10.01, 13:25
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

Видимо, я не до конца понимаю тогда. При чём здесь гидратор? Это же сущность? У неё ведь должен быть ID, иначе этого не сущность? В данном случае, оказывается, что ID может не быть, но есть второстепенные свойства, которые почему-то обязательны. Дело в том, что идеального ничего не бывает. В теории...
BrusSENS
2019.09.30, 17:02
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

chungachguk писал(а): 2019.09.30, 14:17 Как в таком случае задаётся ID?
А гидраторы нам на что? :)
BrusSENS
2019.09.30, 17:01
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

1) Я руководствуюсь подходом что у дяди Боба. Там слои ui - use cases - domain - infrastructure Хоть дяди Боба, хоть дяди Пети :) У Вас просто попытка изощрённо заюзать AR, не более. 2) Репозитории будут из в одном классе инкапсулировать выборки всех сущностей. Понадобится, будет и не только по ID....
BrusSENS
2019.09.30, 12:04
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

interface EventableInterface { public function triggerEventDeferred(string $name, Event $event = null): void; public function releaseDeferredEvents(): void; public function triggerEvent(string $name, Event $event = null): void; } final class Post implements EventableInterface { use EventableTrait; ...
BrusSENS
2019.09.30, 11:30
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

Давайте снижать накал страстей :) С терминами, кажется, путаница. Когда обсуждение переходит в спор об определениях и в ход идут словари, диалог явно зашёл совсем не туда. Изначально тема была про оценку применения паттернов в учебном проекте и это ок. Замечаний про то, что в реальности надо подума...
BrusSENS
2019.09.30, 11:23
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

Сильный аргумент, конечно. Вы если хотите наезжать на какую то технологию/подход/etc то потрудитесь сначала его изучить, хотя бы азы. А пока создается впечатление что вы "неосилятор" и сидите тут дуетесь на ddd. Это уже обычное "меряние детородными органами". Изучил DDD я на дос...
BrusSENS
2019.09.30, 10:25
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

Иметь десять аккуратных классов по 30-100 строк на 2-4 метода удобнее, чем один нетестируемый мегакласс лапшекода для всего. Так что с ростом числа объектов при разбиении большого куска кода на маленькие сложность каждого уменьшается. Если вам это приносит огромную боль, то это не значит, что у все...
BrusSENS
2019.09.30, 10:05
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

Вы не совсем внимательно читаете или малость не в теме вопроса. Эта тема не о DDD , а о наборе идей слоистых архитектур. То что DDD выстраивается поверх слоистых архитектур еще не делает последние DDD, а просто следствие важности разделения на слои, которое как раз улучшает: Никаких идей слоистых а...
BrusSENS
2019.09.30, 07:25
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

Вам не надоело бегать по темам и нести дичь? РТФМ как говорится. Дичь тут только Вы несёте. DDD в PHP - бестолковая затея. Некоторая часть паттернов тупо имитируется в силу специфики работы самого PHP. Модульность в DDD достигается с огромной болью и некоторым количеством дополнительных объектов, к...
BrusSENS
2019.09.29, 14:14
Форум: Архитектура, дизайн, ООП
Тема: Пример чистой архитектуры на оценку
Ответы: 143
Просмотры: 49591

Re: Пример чистой архитектуры на оценку

О Боги... Прочитал, что тут всплывает - смеяться и плакать охота. Видно, как человеки, увидевшие DDD начинают с головой туда вливаться, применяя даже при создании блога. Совершенное непонимание того, для чего нужны паттерны и вообще сами разговоры о том, как "правильно приготовить архитектуру&q...
BrusSENS
2019.08.17, 01:10
Форум: Обо всем
Тема: QueryBuilder и AR в отдельном пакете?
Ответы: 94
Просмотры: 37926

Re: QueryBuilder и AR в отдельном пакете?

Называйте как угодно. Хоть валидацией, хоть прекондишенами, хоть ещё как-нибудь. Но всё равно это реализация бизнес-правил. Но тогда кто вам сказал, что в объекте такой валидации быть не должно? А кто Вам сказал, что должна быть? Сущность, по своему определению не должна валидировать данные, разве ...
BrusSENS
2019.08.15, 19:15
Форум: Обо всем
Тема: QueryBuilder и AR в отдельном пакете?
Ответы: 94
Просмотры: 37926

Re: QueryBuilder и AR в отдельном пакете?

Это не валидация ввода из формы, а инкапсулированное поведение с контролем инварианта жизненного цикла объекта. Называть можно как угодно, но у вас производится валидация (проверка данных на соответствие и допустимость их дальнейшего использования). Давайте вместо того, чтобы придумывать свои извра...
BrusSENS
2019.08.15, 12:57
Форум: Обо всем
Тема: QueryBuilder и AR в отдельном пакете?
Ответы: 94
Просмотры: 37926

Re: QueryBuilder и AR в отдельном пакете?

class Request { /** * @param RequestLiftSchedule $schedule * * @throws \Throwable */ public function lift(RequestLiftSchedule $schedule) { self::getDb()->transaction(function () use ($schedule) { $lifted_at = date('Y-m-d H:i:s'); if (in_array($this->internal_status, [ self::INTERNAL_STATUS_OPENED, ...
BrusSENS
2019.08.14, 22:07
Форум: Обо всем
Тема: QueryBuilder и AR в отдельном пакете?
Ответы: 94
Просмотры: 37926

Re: QueryBuilder и AR в отдельном пакете?

ООП как раз и придумано, чтобы пихать логику со стейтом в слабосвязанные объекты. А те самые паттерны и принципы придуманы, чтоб внешнюю связанность модулей уменьшить для более осознанного контроля сложности. Ни о какой "слабосвязаности" про ооп не говорится, не нужно выдумывать. ООП - вс...
BrusSENS
2019.08.14, 19:34
Форум: Обо всем
Тема: QueryBuilder и AR в отдельном пакете?
Ответы: 94
Просмотры: 37926

Re: QueryBuilder и AR в отдельном пакете?

Здесь не соглашусь. AR обычно содержит бизнес-логику, в том числе код для генерации SQL-запросов. Это уже очень много и это нужно тестировать, в частности необходимо проверять правильно ли поменялись данные в нужных таблицах. сгенерировались ли события и т.д. и т.п. Пример можно? Не совсем понимаю,...