Проектирование командных объектов - PullRequest
0 голосов
/ 07 марта 2012

У меня есть два командных класса, которые идентичны, за исключением событий, которые они запускают, когда заканчивают выполнение. Мне интересно, есть ли элегантный способ иметь один класс, который выполняет работу и запускает соответствующее событие. Я не хочу помещать в код условие if, поскольку у меня может быть еще одна команда с аналогичным требованием в будущем. Каков наилучший способ сделать это?

Ответы [ 2 ]

2 голосов
/ 07 марта 2012

Сделайте Событие, которое вы запускаете параметром вашего класса.Или, так сказать, сделайте ваш класс команд универсальным.Таким образом, когда вы должны запустить событие, просто запустите тот, который вы указали.

0 голосов
/ 07 марта 2012

DDD влияет на ваши команды как на упакованную информацию о действиях - они содержат только данные.CommandHandler, с другой стороны, содержат всю необходимую логику для выполнения «Команды», включая список вызванных событий.

Может быть, это стоит изучить.

...