Size: a a a

Software Design/Architecture/Zen

2021 July 20

СП

Сергей Предводителев... in Software Design/Architecture/Zen
а что будет в основной таблице?
источник

RL

Romka Los in Software Design/Architecture/Zen
В паттернк состояние есть сам стейт и контекст. Взаимодействие клиентского кода осуществляется через контекст(сам агрегат)
источник

HH

Human Human in Software Design/Architecture/Zen
Айдишники проджекта и проджектинфы
источник

СП

Сергей Предводителев... in Software Design/Architecture/Zen
то есть в агрегате будут методы для взатмодействия со всеми стейтами? Тогда нет смысла в стейты выносить
источник

СП

Сергей Предводителев... in Software Design/Architecture/Zen
а смысл тогда этой таблицы?
источник

RL

Romka Los in Software Design/Architecture/Zen
Стейты нужны, чтобы if-ов не было в методах.
источник

СП

Сергей Предводителев... in Software Design/Architecture/Zen
так они все равно будут, так как нужна проверка, что у нас нужный статус
источник

RL

Romka Los in Software Design/Architecture/Zen
В одном месте, когда стейт внедрять в агрегат.
источник

HH

Human Human in Software Design/Architecture/Zen
Ну это сейчас у тебя там ничего кроме ProjectInfo нет
источник

RL

Romka Los in Software Design/Architecture/Zen
А там полиморфизм в деле, и if’ы не нужны
источник

СП

Сергей Предводителев... in Software Design/Architecture/Zen
в каждом методе нажо проверять же, чтобы понимать к какому стейту обращаться
источник

СП

Сергей Предводителев... in Software Design/Architecture/Zen
не пойму как это решит проблему сохранения агрегатов( Может есть пример?
источник

RL

Romka Los in Software Design/Architecture/Zen
У агрегата будет свойство _state. При изменении одного стейта на другой будет подменяться объект стейта на иной. Правила перехода от стейта к стейту можно внутри самих стейтов инкапсулировать.
источник

RL

Romka Los in Software Design/Architecture/Zen
источник

СП

Сергей Предводителев... in Software Design/Architecture/Zen
да, но чтобы обращаться к стейтам мне нужно все методы со всех стейтов продублировать в агрегат, так как по другому я не смогу их вызывать
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Да
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Надо выписать все этапы жизненного цикла, общие вещи можно вообще в свои агрегаты вынести. Так проверки вида "если статус такой-то" заменяются на "если такой агрегат вообще есть". Переходы статусов - одни агрегаты поражают другие
источник

RL

Romka Los in Software Design/Architecture/Zen
Часто методы новые будут появляться? Если да, то можно паттерн Визитор.
источник

HH

Human Human in Software Design/Architecture/Zen
Что за проблема? Я не понимаю)
источник

СП

Сергей Предводителев... in Software Design/Architecture/Zen
что делать со старым агрегатом, когда он новый породил?
источник