jak pisac jadro ? |
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.
jak pisac jadro ? |
20.03.2004, 16:54:29
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 ? |
|
|
21.03.2004, 10:46:57
Post
#2
|
|
Grupa: Zarejestrowani Postów: 114 Pomógł: 1 Dołączył: 17.07.2003 Ostrzeżenie: (0%) |
W tym zastosowaniu, to chyba kazdy ma swoj sposob i swoje pomysly.
Cytat | |-Error Co u Ciebie robi ta klasa? Czy jest sens? Ja nie widze. Zwracam odpowiednie wartosci bool w kazdej metodzie swoich klas i dla funkcji/klas obslugujacych wygladu okreslam komunikaty.
Cytat | |-DB (ja napisałem włąsną klase ale z składnią podobną do adodb) Hm... adodb i tak jest szybkie... i tylko przy na prawde obciazonych systemach jest sesns ja modyfikowac (to dla innych).
Cytat | |-Smarty
Proponuje klase dziedziczaca - chocby po to, zeby ulatwic sobie wyswietlanie. Do wyswietlenia malej tabelki z komunikatem wystarczy wtedy $mySmarty->Komunikat("Tytul","Tresc") i nie trzeba wszedzie kojarzyc zmiennych Cytat | |-Page (includje moduł dzięki temu że ina klasa niż kernel dane są w pewnym stopniu bezpieczne) Nie wiem co to
Cytat |--Moduły (inicjowane przez engine) Ja mam takie sposob wywolania modulu, ze ustawiam go na podstwie adresu (jak podales nizej) - pierwszy parametr po okreslonym jest nazwa modulu, pozniej nazwa funkcji itd itp. (dodatkowo jest ograniczenie na metody ktore moga byc wywolywane).
Cytat |--Templates (przyjąłem zasade że domyślny plik ma taką samą nazwe jak moduł) Ja zas zasade, ze jest domyslna funkcja, a nie plik szablonu. Jest to wygodniejsze, bo ona juz sobie zadecyduje co robic.
Cytat |--lang (łądowany domyślnie główny + z możiwością zainocjownaiania przez kernel pliku do modułu) Jezeli korzystasz ze smarty to mozna wykorzystac .conf do robienia wersji jezykowych. Szybko latwo i skutecznie. Wiem, ze mozna by to przyspieszyc... ale tak mozna mowic o wszystkim. Kiedys optymalizowalismy na zajeciach petle for!!! /i nie zartuje z ta petla /
Cytat Engine inicjuje wszystkie moduły przed zainicjowaniem sprawdza tylko uprawneinia.
A czemu wszystkie? Proponuje inne rozwiazanie. Iniciuje tylko ten wykorzystywan, a do wspolpracy z innymi proponuje system zdarzen. Moduly podlaczaja sie do zdarzen, ktore wywoluja (uwalniaja, powoduja) inne moduly - tak wspolpracuja tylko te, ktore sa potrzebne w danej stronie. Cytat Wszelkie dane wysyąłnie do przeglądark (POST GET SESSION COOKIE) są przerabiaje przez odpowiedną klase dzięki czemu moge formuowac wąłsne linki np (index.php/modul/news/nr/1).
Troche innaczej to zrobilem (mod_rewrite). Wywolania wszystkich nieistniejeacych plikow sa przekierowywane do index.php, on sprawdza to tak jak u Ciebie. Czemu nieistniejace? Musze jakos wyslac do przegladarki obrazki i CSS'y Pozdrawiam! |
|
|
Wersja Lo-Fi | Aktualny czas: 30.05.2024 - 12:47 |