Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 14.02.2006 Ostrzeżenie: (0%)
|
Na laborkach z programowania dostaliśmy za zadanie stworzyć stronę internetową oparta o wzorzec MVC, postanowiłem nie korzystać z dostępnych powszechnie frameworków, tylko napisać własny prosty ala framework oparty na idei wzorca MVC (przy okazji ucząc się dogłębniej idei OPP i wzorców projektowych). Ponieważ ten framework nie jest jeszcze kompletny i mimo że będzie dalej rozbudowywany chciałem zapytać Was o pomysły, poprawki odnosie jego rozwoju.
Podstawowe informacje o budowie tego frameworka: - zastosowanie mod_rewrite - przekazywanie przez url modeli i akcji (wzorowane na ZendFramework) - wykorzystanie bibliotek xajax i savant Na razie brak dokładnej implementacji błędów i zabezpieczeń przed XSS, SQLInjection i innymi ...Injection ;] (częściowe są) Kod frameworka wraz z przykładowymi kontrolerami, modelami i widokami możecie ściągnąć z http://rapidshare.com/files/168371642/miko.rar lub http://www.ppiw.ovh.org/miko.rar Ten post edytował kangurmk 29.11.2008, 10:45:11 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 14.02.2006 Ostrzeżenie: (0%)
|
Cytat w większości aplikacji (o ile nie we wszystkich z MVC:) przekazuje się w adresie nazwe kontrolera nie modelu. u mnie początek nazwy kontrolera i modelu są identyczne (tylko ten pierwszy ma na końcu nazwy Controller a ten drugi Model) i oprócz tego że w url wpisanie np index-index.html oznacza że zmienne model=index, action=index, to ta zmienna model oznacza nazwę kontrolera który będzie użyty, ale ponieważ jest to trochę pogmatwane to zmienię jej nazwę z model na controller. Przy okazji kontrolerów i modeli to mój framework wymusza istnienie modelu odpowiadającego konkretnemu kontrolerowi, a mianowicie jeśli istnieje plik np. IndexController.php (a w nim klasa IndexController) to musi istnieć IndexModel.php (a w nim klasa IndexModel, która może być pusta). Czy jak na mała złożoność tego framwerok zostawić ten wymóg, czy jednak dodać kod który pozwoli też tworzyć kontrolery bez potrzeby tworzenia im odpowiadających modeli. Cytat jakie błędy chcesz implementować w szkielecie działania aplikacji? Chodzi mi o implementacje wszystkich możliwych błędów w klasach dostarczonych wraz z frameworkiem, np jeśli użytkownik przekaże parametr który powoduje że aplikacja się wysypie, to wtedy powinien pojawić się stosowny komunikat że aplikacja zawiera błąd (odnośnie wyświetlania błędów i np ich zapisu do logów, albo wysyłania na maila chcę stworzyć jakaś klasę). Co do obsługi błędów w konkretnych kontrolerach i modelach to są one specyficzne dla "kodu jaki został w nich wpisany" więc to osoba która programuje dany kawałek martwi sie o obsługę błędów, ja tylko dostarczam zgrabny sposób ich zapisu, wyświetlenia itp. (wspomniana klasa, którą mam zamiar napisać) |
|
|
|
kangurmk Ala MVC framework 28.11.2008, 23:51:37
AxZx Cytat(kangurmk @ 28.11.2008, 23:51:37... 29.11.2008, 00:51:34 
bim2 Cytat(AxZx @ 29.11.2008, 00:51:34 ) w... 29.11.2008, 12:54:18
pyro wrzuc gdzie indziej niz rapid... 29.11.2008, 10:36:17
kangurmk Proszę bardzo: http://www.ppiw.ovh.org/miko.rar 29.11.2008, 10:44:44
AxZx Cytat(kangurmk @ 29.11.2008, 10:34:30... 29.11.2008, 10:52:19
AxZx ale chyba przyznasz że model i kontroler są główny... 29.11.2008, 13:27:15
Cysiaczek Niewygodne i nieco mylące tworzenie zmiennych w ak... 29.11.2008, 13:38:35 
kangurmk Cytat(Cysiaczek @ 29.11.2008, 13:38:3... 29.11.2008, 14:27:40
Cysiaczek Rozumiem. Zobacz jednak, że nie połapa... 29.11.2008, 14:51:36 
mike Cytat(Cysiaczek @ 29.11.2008, 14:51:3... 29.11.2008, 14:56:22
Cysiaczek Heh, kwestia gustu - ja nie chcę, żeby zlikwidowa... 29.11.2008, 15:00:51
bim2 Hmm, ja jednak byłbym nadal z setVar Pana Mike. Ki... 29.11.2008, 15:36:24
kangurmk Ok, pozostanę przy obecnym rozwiązaniu (jak będę m... 29.11.2008, 15:58:29
erix Magiczne metody __set() i __get() 29.11.2008, 16:01:32
kangurmk Czy ten nowy obiekt MKVarsTransver (wyżej w postac... 29.11.2008, 16:48:34
erix Metoda __get jest wywoływana, gdy zmienna w klasie... 29.11.2008, 20:40:20 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 10:34 |