command Pattern and template pattern