![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 1 224 Pomógł: 40 Dołączył: 6.07.2004 Skąd: Wuppertal Ostrzeżenie: (0%) ![]() ![]() |
zastanawialem sie ostatnio nad mvc i doszedlem do ciekawyh wniosków... jakis czas temu w php pro, poruszany bardzo często był temat mvc... powiedzial tez ktos ze implementacja strukturalna to jakas pomyłka... tak więc...
zaczne od przykladowej struktury katalogow i plikow: Kod .. /inc /templates init.php index.php forum.php 1. Warstwa kontrolera Jako kontrolera uzywamy apache(lub innego serwera http) i naszych plikow w katalogu głównym(pomijając init.php, ktory powinien byc require only - uruchamiamy w nim rozne badzewia ktorych uzywamy, np db layer) 2. Warstwa modelu Kod inc/*.php no i oto prosze mamy miejsce odpowiedzialne za tą oto warstwe, tam trzymamy all funkcje typu LogInUser() ForumGetPost() lub nawet MakeMyOwnSite($params) jesli tylko mamy inwencje zeby taką napisac. 3. Warstwa widoku przykladowy index.php
i tu oto nasz widok. Smarty inicjalzujemy w init.php, a jesli przyjdzie nam ochota na wygenerowanie np. rssa to nic nie stoi na przeszkodzie zeby nie tworzyc obiektu smarty tylko cokolwiek innego. Wyprowadzi mnie ktos z błędu ?(IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
Po dzisiejszej lekturce (tłumaczenie ang->pl) na temat MVC stwierdzam ze wdrażanie tego nie na klasach, jest po prostu bezczeszczeniem tego wzorca. Uważam też, że nie można zrozumieć do końca jego zalet, jeżeli się ich samemu nie wprowadzi i odczuje na własnej skórze - nie mowie tu chociażby o php, w którym ma on oddzielać poszczególne warstwy aplikacji (warstwa logiczna, interfejs użytkownika, kontroler), gdyż nie da się zastosować w pełni modelu aktywnego, sposób działania php pozwala jedynie model pasywny (przynajmniej nie w pełnym słowa znaczeniu, aktywnym), ale w innych językach z GUI bardzo pięknie stosuje się tą myśl.
Co do poglądu, że można to wykonać na strukturalnie nie przeczę, ale masa tablic i funkcji rozrzuconych po plikach jakoś mnie nie kojarzy się najlepiej (chyba, że chcesz to pisać bez funkcji… ale to przecież nie możliwe, imho…). Celem MVC jest rozdzielenie warstw jak już wyżej wspomniałem. Jeżeli nie chcesz tego stosować to nie musisz nikt Ci nie każe. Ja uważam to za bardzo dobre rozwiązanie pozwalające wprowadzać łatwe modyfikacje. Na razie nie wypisuje, więc wole do końca przestudiować niż głosić jakieś błędne poglądy. :-) ActivePlayer jak chcesz mogę Ci podrzucić to, co mam na razie przetłumaczone na „polski”, kontakt jaki to wiesz (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ps.: mogłem gdzieś popełnić jakiś błąd jak ktoś widzi niech da znać. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 02:47 |