Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Blog w OOP
Bent
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 24.12.2009

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


Witam,

Po intensywnej lekturze zabieram się za praktykę. Chciałbym stworzyć prostego bloga w OOP korzystając z wzorca MVC. I zastanawiam się, jak taką aplikację zaprojektować.

Jak rozumiem muszę mieć klasę Router. Spotkałem się z dwoma odmianami - statyczną i normalną. W tym drugim wypadku wszystkie operacje wykonywane były w konstruktorze, w tym pierwszym np. w taki sposób: Roter::init(); Która jest lepsza?

Router uruchamia kontroler i odpowiednie metody. I tutaj robi się problem. Otóż nie wiem, jak powinny wyglądać kontrolery. Jak rozumiem, powinienem stworzyć jeden kontroler, od którego pozostałe będą dziedziczyć. Ale co powinno zawierać się w takim kontrolerze?

Jak rozplanować modele? Czy stworzyć jedną klasę model z różnymi metodami (wydaje się prostsze, ale pewnie ma wady - jakie?)

Słyszałem, że zwykle jest jedna klasa widok. Czy to prawda?

Czy w Internecie są dostępne warte uwagi implementacje wzorca MVC? Nie chodzi mi o banały, ale o taką w miarę porządną stronę.

Aha, jeszcze plik konfiguracyjny. Czy może to być zwykły plik (np. ze stałymi) czy musi być klasa?

Sorry, że tyle pytań, ale chcę mieć ogólne rozeznanie (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
masahuku
post
Post #2





Grupa: Zarejestrowani
Postów: 42
Pomógł: 4
Dołączył: 11.12.2009

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


Jest taki skrót z angielskiego... RT*M (gdzie ostatnia litera to Manual). Ale skoro już zadałeś to pytanie tzn. że albo nie wiesz gdzie szukać albo Ci się nie chce więc:

1. Kontroler zawiera w sobie "silnik" aplikacji - on przetwarza dane z modelu i przekazuje do widoku
2. Widok służy teoretycznie tylko do prezentacji (praktycznie i tak musisz weń wrzucić pehapa do przetwarzania jakiś foreachów)
3. Model to "źródło" w którym definiujesz dane i metody pobierania tych danych.

http://learn.kohanaphp.com/2008/03/26/blog...comment-page-1/ -> tu masz jak napisać bloga w kohanie

Oczywiście można samemu sobie napisać taki silnik... Ale po Twoim pytaniu myślę, że musisz się dowiedzieć co to MVC, a potem myśleć o własnej implementacji. No i nie ma czegoś takiego jak "powinien być jeden widok" - MVC to idea, a już implementacja to Twoja wyobraźnia - najczęściej spotyka się jeden widok "główny" (jako templatka strony) a inne widoki to tzw. podwidoki, które są umieszczane jako zmienna w widoku nadrzędnym.
W gotowych silnikach MVC (jw.) masz już gotowe klasy Model, Controller i View i to z nich dziedziczysz swoje kontrolery/modele/widoki. Routing dzieje się automagicznie o ile masz apacza z mod rewritem. A jak to dokładnie działa ... RT*M (IMG:style_emoticons/default/smile.gif) .

Pozdr.

Ten post edytował masahuku 6.03.2010, 19:48:29
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: 15.10.2025 - 11:36