«Процедурный» шаблон проектирования для DoThis-> ThenThis-> AndThenThis - PullRequest
0 голосов
/ 09 сентября 2010

Я пытаюсь найти полезный шаблон проектирования, который имитирует что-то вроде этого:

DoThis()->ThenThis()->FinallyDoThis() then print "Hello world"

ThenThis() не запускается, пока не пройдет DoThis()FinallyDoThis() не будет работать, если ThenThis() и DoThis() оба не пройдут.Если все методы методов проходят, то выводится «Hello world».

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

Ответы [ 2 ]

4 голосов
/ 09 сентября 2010

, если вы ищете дизайн шаблона.Я думаю, что это шаблон цепочки ответственности

4 голосов
/ 09 сентября 2010

Не зная вашего языка, вы можете поместить его в оператор if, если оператор языка if замкнется. Затем пусть каждая функция вернет true или false:

if( foo() && bar() && baz() ){
    System.out.println( "hello world" );
}
...