![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 11.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam panowie.
Od niedawna piszę własnego framework'a w PHP5. Wiem, że [może] rzucam się z motyką na Słońce itp. Ale jak na razie całkiem nieźle mi to idzie. Mam jednak kilka wątpliwości, więc proszę doświadczonych wyżeraczy o opinię. Pierwsza sprawa to co robi: dispatcher, FrontController, router i bootstrap? Żeby nie było, że nie szukałem i zadaje durne pytania napiszę, jak ja rozumiem filozofię działania frameworka, a wy [jeśli będzie taka potrzeba] sprostujecie moją wypowiedź (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Każde zapytanie kierowane jest przez modrewrite do frontcontrellera, który ustala ścieżki, i ustawia config, na końcu uruchamai Bootstrap. Ten z kolei inicjuje jądro frameworka, includuje najważniejsze klasy, tworzy kontekst. Następnie uruchamia dispacher. Dispatcher wysyła zapytanie do routera, który zwraca kontrolera, metodę i parametry. [...] Czy tak zbudowany framework ma dobrą strukturę? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 6 Dołączył: 26.03.2008 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
U mnie Router na podstawie URL, określa controller, akcję oraz parametry. Link w takim wypadku wygląda tak...
Kod http://www.example.com/news/comment/1/ Wszystkie zmienne get, post, file i cookie obsługuje obiekt HttpRequest. FrontController na podstawie danych z Routera uruchamia controller i jego akcję wraz z parametrami. Akcje to nowe obiekty, nie metody Controllera, ponieważ przy sterowniku z 80 akcjami powstał by zbyt duży chaos. Co do singletonu, może jest to wygodne ale złe. Masz dostęp do obiektu korzystającego z singletonu praktycznie wszędzie ! Ten post edytował Mize 16.11.2008, 09:51:47 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 06:58 |