Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: pytanie o wzorzec MVP
Forum PHP.pl > Forum > PHP > Object-oriented programming
coolos
Witam,

Mam takie pytanie na temat wzorca MVP, konkretnie rozchodzi mi się o to czy ten wzorzec dopuszcza przesłanie przez prezenter przetworzonej instancji modelu do widoku? czy tylko dopuszcza przesłanie do widoku przez prezenter innych typów danych np. tablic?

wolałbym żeby widok wyglądał np. tak:
  1. class VIEW_NEWS {
  2.  
  3. public function list(MODEL_NEWS $news){
  4. //i teraz wyświetlić dane z przetworzonego modelu np.
  5. $string = "<h1>".$news->get("title")."</h1>"."<p>".$news->get("desc")."</p>";
  6. }
  7. }


niż tak:

  1. class VIEW_NEWS {
  2.  
  3. public function list($news){
  4. $string = "<h1>".$news["title"]."</h1>"."<p>".$news["desc"]."</p>";
  5. }
  6. }



Pozdrawiam
marcio
O ile sie nie myle to to o czym ty mowisz to jest wlasnie MVC a mvp polega wlasnie na tym by warstwa prezentera(czyli tak jakby widoku) pobierala dane od kontrolera, a mvc mowi ze to widok ma sam sobie pobrac dane za pomoca modelu.
Noidea
Różnica w interakcji pomiędzy widokiem a modelem we wzorcach MVP i MVC jest taka, że w MVC widok pobiera potrzebne dane z modelu, a w MVP prezenter pobiera te dane z modelu i ustawia je widokowi. (Dochodzą do tego jeszcze odmiany tych wzorców, np. z lub bez pasywnego widoku, ale najbardziej ogólne rozróżnienie jest właśnie takie)

Oczywiście jeśli wygodniej jest ci te dane przesyłać jako obiekt, zamiast skomplikowanej tablicy, to możesz tak robić. To o co pytasz nazywa się Data Transfer Object (DTO)
http://stackoverflow.com/questions/1051182...transfer-object
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.