![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 12.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Wcześniej pisałem strukturalnie, teraz doszedłem do wniosku, że mój kod jest tak zabałaganiony iż każda zmiana trwa długooo a wszystkie inne osoby modyfikujące kod z pewnośćia kierują w moją strone różne niemiłe epitety ![]() Wcześniej uważałem że OO to przerost formy nad treścią ale teraz gdy serwis staje się coraz bardziej rozbudowany a OO taakkiee modne ![]() Poniżej przedstawiam liste pytań, które mnie nurtują, jeśli możecie odpowiadajcie jak najbardziej lopatologicznie, podajcie linki z ciekawymi wiadomościami lub chociaż słowa które mogę przegooglowac. Nie wszystkie dotyczą OO ale jak już sie brać za przepiswyanie kodu to w całości i ładnie( i po co zaśmiecać forum ![]() ![]() 1. Postanowiłem podzielić struktóre mojej strony na 3 główne klasy: a ) DB - czyli baza danych - pobieranie z MySql informacji i zwracanie ich w postaci klasy Danetowa - zapisywanie do bazy - kasowanie z bazy - updatowanie bazy b ) Dane - wszystkie które sa pobierane z DB (artykuly, newsy itp...) - opcje do wyswietlania - modyfikowania wewnatrz ( by nastenie przekazac do DB i updatowac) c ) Users - rozszerzenie Dane o mechanizmy sesji Czy takie "rozplanowanie" jest dobre? Czego brakuje? Co zmienić? 2. Klasa DB (w tej chwili tylko do wyciagania rekordow):
Jak łatwo się domyślacie nie działa. Raz, że nie zwraca rekordów a 2 że while ($baza->pobierz()) trwa w nieskończoność. Wiem, że istenieją gotowe klasy do obsługi az danych ale ja upieram sie przy swojej. 3. Bezpieczeństwo: Czy tablice $get, $post, $session są wystarczająco bezpieczne? Czy istnieją jeszcze jakieś inne metody pozwalające jeszcze podnieść stopień bezpieczeństwa? Jakie? 4. Szablony: Który system wybrać? Swojego nei będę pisał (na razie ![]() 5. Adres: Najlepszy sposob zamiany adresu np. index.php?imie=Adam&nazwisko=Kowalski na index.php/Adam/Kowalski To chyba jak na razie wszystko, jeśli mi się coś przypomni to będę dopisywał ![]() Może warto przykleić gdzieś topic z wybranymi zagadnieniami ładnie omówionymi bo myślę, że wiele osób boryka się z podobnymi problemami. Pozdrawiami P.S. Jesteś wyjątkowo wytrwały, że przeczytałeś moje brednie do końca ![]() |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarząd Postów: 2 277 Pomógł: 6 Dołączył: 27.12.2002 Skąd: Wołów/Wrocław ![]() |
1. jeśli chcesz aplikacje zaprojektowac w sposóbn ciekawy i przejżysty - zapoznaj się z ostatnio modnym u nas tematem MVC . W tej chwili nie znam lepszego sposobu na zorientowanie budowy aplikacji webowej.
2. nie rozumiem do czego dążysz. Uważąm, że jakaś warstwa pośrednia, pozwalajaca na uniknięcie pisania mysql_ * jest potrzebna 3. jeśli masz register_globals =off i używasz tablic superglobals do tego, do czego są przeznaczone, to wszystko będzie OK, jeśli nie zapomnisz o walidacji wszystkich danych pochodzących od usera. 4. Ja lubię smarty, choć są szybsze rozwiazania 5. jest art na wortalu ps. czytywałem gorsze ![]() -------------------- "Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 12.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Dzieki za odpowiedzi
ad 1 Tez o tym czytałem ale przyznam sie szczerze nie nie wiem jak "oddielic" te trzy warstwy? I w jaki sposob to ma byc porozkładane ad 2. To jak to mam rozwiazac? Chcialem to napisac w ten sposob zeby mozna bylo wyciagac dowolna ilosc rekordow, np tak:
ad 4 Jakie? Mozesz podac jakies www na ktorym moglbym poczyta o smarty? Jak to sie je? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 31.07.2003 Ostrzeżenie: (0%) ![]() ![]() |
Arkon: na forum jest bardzo duzo postow na temat Smarty. http://smarty.php.net/ - dokumentacja + forum z cala masa informacji.
-------------------- Yamaha YZF R1 |
|
|
![]()
Post
#5
|
|
Administrator PHPedia.pl Grupa: Developerzy Postów: 1 102 Pomógł: 2 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Ad ad 1
to proste ![]() ja rozdzielam przez katalogi ( actions, models, views ![]() -------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 12.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
bela_666 : Ok wszystko ladnie pieknie ale jak to zrobic? Moge prosic jakis banalny przyklad obrazujacy co i jak?
![]() |
|
|
![]()
Post
#7
|
|
Administrator PHPedia.pl Grupa: Developerzy Postów: 1 102 Pomógł: 2 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
dostaniesz pseudokod :]
very simple mvc app ![]() Controller : 1. pobierz dane o widokach i akcji z ConfigParsera 2. pobierz dane o widoku i akcji z Routera 3. uruchom akcje albo wyrzuc wyjatek ( blad ) Akcja: 1. pobierz dane z modelu 2. zrob cos z nimi 3. zwroc je do kontrolera // end action 4. pobierz dane z akcji 5. utworz widok 6. wrzuc do niego dane Widok 1. pobierz dane z kontrolera 2. uruchom np. Smarty albo OPT ( najnowsza wersja na cvs, ale chyba na stronce tez jest aktualna ) 3. wyrzuc output proste ![]() ![]() Ten post edytował bela_666 23.12.2004, 23:33:08 -------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 12.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Ok wielkie dzieki. Tylko o ile reszta wydaje się w miare OK to dzialanie kontrolera a dokladnie pierwszych 2 punktow jest jakos dla mnie zagmatwane. Cos mi podpowiada ze nie jest to trudne ale hmm.. Mozesz to jakos rozwinac?
|
|
|
![]()
Post
#9
|
|
Administrator PHPedia.pl Grupa: Developerzy Postów: 1 102 Pomógł: 2 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
tu masz moj parser http://forum.php.pl/index.php?showtopic=24090
a Router to cos takiego co parsuje adres, czyli wspomaga Przyjazne URLe ( na wortalu art scannera ) i nie musisz jak tam bawic sie z tablicą tylko dajesz getAction, getView getParam(1) i dostajesz co chcesz ![]() aha, ten model mvc jest baaaaaardzo ![]() -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 04:55 |