Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mvc]poraz kolejny..., Pytanie o teorie
MadHatter
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 1
Dołączył: 15.02.2007

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


Witam,

Mam pytanie czysto teoretyczne. Buduje strone i chce ja oprzec na wzorcu MVC. Wspieram sie Smarty i Pear przy tym. I teraz moje pytania.
1. Czy za widok maja byc odpowiedzialne tylko szblony smarty czy tworzyc do niego osobna klase?
2. Poza przypisaniem danych ktore uzyskuje z modelu, podstrony roznia sie tez wygladem(dokladnie tlami glownej tresci), jaka czesc MVC powinna byc odpowiedzialna za ustwienie przykladowego tla? Rozwazam dwa przypadki, nie wiem jednak ktory bylby "najczystrzy" jesli chodzi o zalozenia ww wzorca. Pierwszy to to ze poszczegolne metody kontrolera przypisauja do szablonu smarty, dane z modelu oraz w kazdje metodzie jest deklarowana zmienna odpowiadajaca za tlo strony i tak tez przypisywana do szablonow. Drugie rozwiazanie to takie, ze w akcjach kontrolera wogole nie zajmu je sie ustawianiem tla a tylko wyborem widokow. W takim przypadku jednak ilosc szablonow musialbym odpowiednio rozmnozyc.

Czytam dosc spro na temat mvc, moje doswiadczenie z frameworkiem cakePHP wcale nie rozwialo wszelkich watpliwosci jednak, przynajmniej tych teoretycznych. Rozumiem ze wzorzec jest raczej czyms abstrakcyjnym i elastycznym niemniej na forum znalazlem taka definicje widoku:

Cytat
Główna zasasda MVC jest to aby w modelu byl tylko kod php a w VIEW tylko html


Natomiast w jednym z rtykulow na wortalu opis brzmi juz tak:

Cytat
Widok powinien wykorzystywać model do pobrania danych, które będą wyświetlone. Typowo, widok powinien utworzyć instancje klas modelu i wywołać metody odpowiedzialne za pobranie odpowiednich danych. Tym, czego należy się wystrzegać w widoku, jest modyfikacja danych. Widok nie powinien zmieniać w żaden sposób stanu aplikacji. Powinien np. wyświetlać listę użytkowników, ale nie powinien ich dodawać ani usuwać.


Rozbieznosc jest wiec dosc spora...

Jak najlepiej wedug Was zarac sie za to, w przypadku niewielkiej aplikacji?

Z gory dzieki i pozdrawiam!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sedziwoj
post
Post #2





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

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


@sanchoo
No i co za różnica że model nie pobiera danych z DB tylko z katalogów?
Zwraca listę, a skąd ją bierze to nie ważne, umie ją posortować. A pole w każdym rekordzie powinno mieć ten sam typ, co w tym przypadku wielkość ale tez jednostkę.
Więc nadal to model powinien umieć posortować dane podstawowe. Czy je przefiltrować.

@bim2
Czy mi się wydaje, czy możesz tylko z jednego modelu na raz korzystać?
A do tego model musi wiedzieć jak przekazać dane do widoku, co powoduje że zmieniając widok, czy model musisz zmienić ten drugi.
Aby zmienić model musisz zmienić akcję, więc jeszcze dodatkowo musisz ingerować w model, zamiast ustawić tylko odpowiednie przypisanie danych do widoku.
Ciągle jest zależność między modelem a widokiem, a obaj zależą też od akcji, czyli masz wszędzie zależności, gdzie tu rozbicie gdzie MVC? Przecież ten wzorzec ma właśnie służyć do jak najmniejszej zależności i przenikania się warstw odpowiedzialnych za różne rzeczy.
Go to the top of the page
+Quote Post

Posty w temacie
- MadHatter   [mvc]poraz kolejny...   21.07.2007, 18:54:09
- - menic   ech.... Ile razy to jeszcze będzie wałkowane? Jes...   21.07.2007, 20:56:12
- - Cysiaczek   http://forum.php.pl/index.php?showtopic=69281...   21.07.2007, 21:13:17
- - MadHatter   Bardzo dziekuje, tego watku nie wygrzebalem, coz w...   21.07.2007, 23:37:39
- - sanchoo   no to ja ma pytanie ... z klasy [PHP] pobierz, pla...   13.08.2007, 12:12:12
- - Cysiaczek   Przyjrzyj się definicji swojej klasy C, wogóle nap...   13.08.2007, 12:19:38
- - sanchoo   faktycznie zle napsialem.. napsialem to z palca z...   13.08.2007, 13:04:01
- - Sedziwoj   @sanchoo Ty może już nie pisz, albo najpierw spraw...   13.08.2007, 17:25:08
- - sanchoo   hehe tak jak mowilem chodzilo o kokreny przyklad ...   13.08.2007, 20:35:48
- - Sedziwoj   @sanchoo Co ma działać, to że to co piszesz jest n...   13.08.2007, 22:19:17
- - sanchoo   Cytatto ciezko zczaic o co komus chodzi... moze to...   14.08.2007, 07:21:24
- - sanchoo   MVC a walidajca formularzy Chce zamknac walidacje...   24.08.2007, 11:48:35
- - menic   Może TO ci pomoze. Na koncu jest przykład jak u si...   24.08.2007, 11:57:43
- - Speedy   CytatGłówna zasasda MVC jest to aby w modelu byl t...   26.08.2007, 23:43:20
|- - sanchoo   Cytat(Speedy @ 27.08.2007, 00:43:20 )...   27.08.2007, 13:38:18
- - menic   @up: no czekam jaki to to jest wzorzec Bo banialu...   27.08.2007, 14:13:53
- - sanchoo   menic dzieki za info. Zrobilem to mniej weicej tak...   27.08.2007, 14:16:39
- - Cysiaczek   Chcesz powiedzieć, że zrobiłeś Model extends Valid...   27.08.2007, 14:32:17
- - sanchoo   chcialem waldiacje zamnac w jedenj klasie ... tak ...   27.08.2007, 14:42:26
- - Cysiaczek   Nie chodzi mi o to, że umieszczenie walidacji w mo...   27.08.2007, 14:47:03
- - menic   Pomijając kwestie nazewnictwa wzorców... U mnie va...   27.08.2007, 14:50:02
- - sanchoo   .. w tej chwili wydaje mi sie to... na jedno wyjdz...   27.08.2007, 14:51:14
- - menic   Z tego co zauwazyłem to validacja, validacji nie r...   27.08.2007, 14:57:33
- - bim2   CytatOpisów i implementacji MVC jest tyle ilu prog...   27.08.2007, 17:33:21
|- - Sedziwoj   @bim2 Coś chyba masz pokopane... albo źle rozumiem...   27.08.2007, 20:49:01
- - sanchoo   "Kontroler moze pobierac z modelu i przekazyw...   28.08.2007, 07:45:45
- - Sedziwoj   @sanchooPamiętaj, że widokiem może ...   28.08.2007, 08:29:14
- - sanchoo   Wiem ze baza posortuje szybciej... tylko tu jest i...   28.08.2007, 08:49:00
- - bim2   @Sedziwoj Akcja u mnie to nie kontroller... rozdzi...   28.08.2007, 10:20:38
- - Ludvik   CytatTu pojawil mi sie kolejny problem: gosc zarzy...   28.08.2007, 11:33:35
- - sanchoo   No dokładnie tam zrobilem ... Dzieki za artykul pr...   28.08.2007, 13:21:50
- - Sedziwoj   @sanchoo No i co za różnica że model nie pobiera d...   28.08.2007, 13:43:33
|- - sanchoo   Cytat(Sedziwoj @ 28.08.2007, 14:43:33...   28.08.2007, 14:20:19
- - menic   Przy tej dyskusji należy podkreśli...   28.08.2007, 14:36:04
|- - Sedziwoj   @menic Mylisz się da sie to zrobić, bo masz takie ...   28.08.2007, 14:43:44
- - bim2   Mogę korzystać z ilu modeli/widoków chce. I jak zm...   28.08.2007, 14:43:48
- - sanchoo   ... a ja mysle ze warto uslyszec inne opinie Przy...   28.08.2007, 14:50:16
- - menic   @Sedziwoj: do czynienia z propelem 1.3 nie miałem,...   28.08.2007, 15:10:51
|- - Sedziwoj   Cytat(menic @ 28.08.2007, 16:10:51 ) ...   28.08.2007, 15:56:54
- - sanchoo   Mam 2 kolejne problemy ... sa zamienne rozwiazani...   30.08.2007, 07:29:03


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: 27.09.2025 - 01:10