Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> MVC budowa widoku
morawcik89
post
Post #1





Grupa: Zarejestrowani
Postów: 56
Pomógł: 1
Dołączył: 15.07.2008

Ostrzeżenie: (0%)
-----


W jednym za artykułów przeczytałem o takim tworzeniu widoku:
Kod
class WebPage{
     private $pageController;
     private $controllerStyle;
     private $page='';
     public function __construct(PageController $pageController){
         $this->pageController=$pageController;
         $this->controllerStyle=$pageController->getStyle();
     }
     public function doHeader(){
         $this->page='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><link rel="stylesheet" href="defaultstyle.css" type="text/css" /><title>Sample Web Page</title></head>';
     }
     public function doBody(){
         $this->page.='<body><div id="header"><h1>Header section</h1></div><div id="navbar"><ul><li><a href="#" title="Link 1">Link 1</a></li><li><a href="#" title="Link 2">Link 2</a></li><li><a href="#" title="Link 3">Link 3</a></li><li><a href="#" title="Link 4">Link 4</a></li><li><a href="#" title="Link 5">Link 5</a></li><li><a href="#" title="Link 6">Link 6</a></li></ul></div><div id="leftcol"><h1>Left column</h1></div><div id="centercol"><h1>Center column</h1></div><div id="rightcol"><h1>Right column</h1></div>';
     }
     public function doFooter(){
         $this->page.='<div id="footer"><h1>Footer section</h1></div></body></html>';
     }
     public function getPage(){
         return $this->page;
     }
     public function getControllerStyle(){
         return $this->controllerStyle;
     }
}


Czy tak powinno się tworzyć klasy widoku czy jest na to może inny lepszy sposób?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
batman
post
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Cytat
@batmanie, spierałbym się (...) Oczywiście to w kontekście bardzo prostej implementacji MVC.
MVC można interpretować na wiele sposobów i każdy z nich będzie dobry (oczywiście w granicach rozsądku). Podejść do jednego problemu może być wiele. Poza tym kod, który podałem, nie jest wyznacznikiem jak klasa widoku powinna wyglądać, a jedynie luźną propozycją. Mimo to, pozostawiłbym w tej klasie takie metody jak dodawanie skryptów, czy stylów.
Go to the top of the page
+Quote Post
Sedziwoj
post
Post #3





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(batman @ 15.07.2008, 23:09:29 ) *
Mimo to, pozostawiłbym w tej klasie takie metody jak dodawanie skryptów, czy stylów.


A wyjaśnij mi po co mi, w CSV, XML czy podobnych, skrypt lub style?
Chyba zbyt się uzależniłeś, że widok, to html.
Do tego nie wiem czy u mnie bym przekonał grafika aby zaglądał do kodu PHP, aby zmienić sobie style... (chyba że inaczej byś to rozwiązał niż wydaje się mi że jest)

EDIT dodałem dwa przecinki dla poprawienia czytelności.

Ten post edytował Sedziwoj 16.07.2008, 12:45:56
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 01:03