Chciałbym zapytać o wzorzec strategy. Na początku chciałbym zapytać czy ten wzorzec jest poprawnie zaimplementowany, co w nim jest nie tak(cenne są najdrobniejsze uwagi)?
Jako, że strategia definiuje rodzinę algorytmów chciałbym go wykorzystać przy widoku w MVC generując odpowiedni rodzaj widoku(HTML,PDF,XML).
Następnie chciałbym zapytać czy jest to odpowiednie miejsce na wykorzystanie tego wzorca?
interface Render { public function generate(); } class RenderHTML { public function generate(){ } } class RenderXML { public function generate(){ } } class RenderPDF{ public function generate(){ } } class ContextRender{ private $render; public function setRender($obj){ $this->render=$obj; } public function getRender(){ return $this->render; } }
następnie zostanie on użyty w ten sposób
class IndexController extends Controller{ public $view;// jest to obiekt ContextRender public function abcAction() { $this->view->setRender(new RenderPDF()); $this->view->getRender()->generate(); } }
Co myślicie o takiej implementacji? Chciałbym poznać wzorce, więc wymyśliłem sobie o to taki przykład. Cenie sobie każde uwagi