![]() |
Tematy na forum Pro mogą zakładać jedynie moderatorzy. W otwartych tematach może pisać każdy, kto ma coś fachowego do powiedzenia. Wszystkie posty nie wnoszące nic do tematu będą natychmiast usuwane, a ich autorzy dostaną ostrzeżenie.
Jeśli uważasz, że jakiś temat jest warty dyskusji na tym forum, zgłoś go w temacie Propozycje.
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 14.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Witam, ostatnio zastanawiam sie w jaki sposob napisac jadro systemu webowego w php - doszedlem do wniosku, ze najlepiej uzyc singletonow do tworzenia instancji klas (db, io, klasa sesji, szablonow itp.) czy jednak lepiej aby jadro bylo rozproszone (wiele klas, kazda posiadajaca metode instance() ) czy raczej napisac jeszcze jednak klase Kernela, ktora to klasa przechowywala by w sobie metody tworzenia instancji i instancje wszystkich podsystemow, oraz kontrolowala wszelkie proby uzyskania takiej instancji ?
Jestem ciekaw jak wy to widzicie ? w jaki sposob wy pisaliscie rdzen systemu ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 521 Pomógł: 0 Dołączył: 3.11.2003 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
Cytat Ano wlasnie, wiec jak ta tablice parametrow odnajdujesz w urlu ?
Zalozmy ze chce miec: index.php/news/15 gdzie news to nazwa akcji a 15 to id newsa. No to załóżmy że pierwsza rzecz po slashu to nazwa akcji, a druga to parametr. Routera nie obchodzi co ten parametr oznacza, to sprawa akcji. Nie mówię że jest to super elastyczne, ale działa. Poza tym, pamiętaj że router tak naprawdę powinien działać w obie strony. Znajdywanie parametrów w URLu to jedno, ale tworzenie URLa mając nazwę akcji i parametry też jest potrzebne. Inaczej i tak będziesz musiał zakodować na sztywno jakiś schemat w aplikacji, chociażby w linkach rozsianych po szablonach. A w przypadku, gdy każda akcja może kodować swoje parametry w inny sposób, router ma ciężkie zadanie. W routerze właśnie chodzi mi o to, że jak dochodzisz do wniosku że jakiś schemat URLi ci nie odpowiada, a ktoś wymyslił coś bardziej eleganckiego, zamieniasz jedną klasę i cała aplikacja chodzi na nowym schemacie, bez zmiany ani jednej linijki. Taka przynajmniej jest teoria :wink: . |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 07:01 |