2017-04-04 99 views
1

我写过类。 Loader类将通过foreach调用多个类$tasks这是什么设计模式名称(循环到呼叫类)

是否有这种设计模式的名称?

装载机

class Loader 
{ 
    public function handle() 
    { 
     $tasks = [ 
      DoSomethingFirst::class, 
      DoSomethingSecond::class, 
     ]; 

     foreach ($tasks as $task) 
     { 
      (new $task)->handle(); 
     } 
    } 
} 

通过装载机

class DoSomethingFirst 
{ 
    public function handle() { //do something } 
} 

class DoSomethingSecond 
{ 
    public function handle() { //do something } 
} 
+0

多态性...? – maesbn

+0

http://softwareengineering.stackexchange.com/questions/108951/how-do-you-call-a-proxy-that-delegates-to-several-implementations –

回答

1

如果每个$task是独立的,你可以把你的解决方案,命令模式的实现。

this,Command模式有助于解决以下问题:

需要发出请求的对象,无需了解所要求的操作或请求的接收器什么。

因此,在您的使用案例中,Loader创建请求对象并且不知道这些请求是如何在内部执行的。