Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zasady pisania na forum Pro

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.

7 Stron V  « < 2 3 4 5 6 > »   
Reply to this topicStart new topic
> jak pisac jadro ?
hawk
post 15.04.2004, 23:12:39
Post #61





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Cytat
Hmm no i nasunelo mi sie kolejne pytanie :] Jak nazwac aplikacje ktora jest zarowno frameworkiem, enginem, zbiorem bibliotek ? API ? Juz sam nie wiem jak to moje cos nazwac winksmiley.jpg

phiend :mrgreen:
Na resztę odpowiem jutro, time to get some sleep
Go to the top of the page
+Quote Post
e-Gandalf
post 15.04.2004, 23:56:48
Post #62





Grupa: Przyjaciele php.pl
Postów: 195
Pomógł: 0
Dołączył: 7.07.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Doleje troche oliwy do ognia, a co smile.gif

Cytat
Tutaj jestem bardzo przeciwny. Wiem że jest taka tendencja (eclipse, phrame), ale to bez sensu. php już ma HashMapy - tablice asocjacyjne. I klasa HashMapy nic nowego ci nie zaoferuje.


Ding - dong. To ja Cie bardzo poprosze o wygodna implementacje containsValue w tym "PHPowym hasmapie" - oczywiscie bedziesz mi iterowal algorytmem o zlozonosci liniowej element po elemencie. HasMap znany nam np. z Javy posiada liste poindeksowanych wartosci tak samo jak posiada liste poindeksowanych kluczy. "Dobranie sie" do odpowiedniej wartosci i do odpowiedniego klucza daje ten sam narzut czasowy.
Po drugie kazdy szanujacy sie HasMap posiada wlasciwosc LoadFactor majaca niebagadelny wplyw na wygode dzialania tablic. LoadFactor dopasowany dobrze do przechowywanych wartosci potrafi czasem dwukrotnie nawet przyspieszyc dzialanie.
Indeksowane tablice w php to bardzo mala namiastka i zastepowanie ich powaznym hasmapem uwazam za jak najbardziej na miejscu!

Cytat
Podobnie wiedziałem w php klasy ArrayList (to już szczyt głupoty), Iterator (w PHP5 równie wielka głupota) itd. To tylko balast, bezużyteczny kod i dodatkowe ułamki sekund przy każdym żądaniu.


Znowu niekoniecznie.
Iterator z Javy daje mi mozliwosc latwego kasowania elementow, bez niebezpieczenstwa utraty plynnosci iteracji. W php jesli sie nie myle nie jest to takie "fajne".

Cytat
A swoją drogą, ja skłaniam się do włożenia sesji do kontekstu. To chyba pomysł z ASP.NET - klasa Context, która łączy Request i Response, czyli zbiera do kupy wszystko, co związane jest z komunikacją klient - serwer.


Apage winksmiley.jpg To pomysl Tomcata zdaje sie, albo Resina - juz nie jestem pewien smile.gif

Cytat
Wracając do pytania - gdzie to wcisnąć? Odpowiedź jest prosta i znowu żywcem wzięta z phiend2 - Intercepting Filter. Piękny wzorzec, wrzucasz do kontrolera obsługę filtrów (wczytywanie z pliku konfiguracyjnego i odpalanie). O samym wzorcu poszukaj na MSDN (narawdę mają bardzo dobry dział dot. wzorców dla aplikacji internetowych) i Sunie - zresztą w J2EE Intercepting Filter jest wbudowany.


Zgadzam sie, ale wykorzystanie IF nie zawsze wydaje mi sie konieczne, natomiast wszelkie metody autoryzacji wykonywalbym tuz po czesci inicjujacej dzialanie silnika. W momencie kiedy srodowisko "klienckie" dziala, a "administracyjne" nie jest jeszcze zainicjowane.
Go to the top of the page
+Quote Post
hawk
post 16.04.2004, 08:21:09
Post #63





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Cytat
Hmmm ciekawe to co piszesz smile.gif A wracajac do routera. Jakie wg ciebie zadanie powinien on spelniac ? U mnie generalnie router sluzy do a) walidacji url'a cool.gif jego sparsowaniu

U mnie router to obiekt, który dostaje Context i ma wymyśleć nazwę akcji. Interfejs chyba dużo nie mówi:
[php:1:148251ea58]<?php

interface IRouter {
public function translate(HttpContext $context);
}

?>[/php:1:148251ea58]
Fajnie byłoby jeszcze, jakby router mógł robić "w drugą stronę", tzn zamieniać nazwę akcji na URLa. Wtedy mamy automatyczne generowanie URLi, i co najważniejsze, jak zmienimy router (czyli schemat budowy URLi dla całej aplikacji), dotychczasowy kod się nie zmienia, bo nowy router generuje URLe wg nowego schematu.
Poza tym router może sprawdzać, czy przeglądarka obsługuje XHTML (i jakoś to przekazywać do akcji), itd.
Cytat
Kolejne "cos" co mnie meczy jest raportowanie bledow w obrebie akcji. Przykladowo user wypelni zle pole haslo, chcemy wyswietlic komunikat. I teraz czy komunikat ten jest akcja ( FALLBACK ACTION ) czy wywolana z modelu metoda powiedzmy errors::message itp ?

Komunikat to nie akcja, i zapewne jest wyciągany z modelu. Ale obsługa formularzy to inna sprawa, jest tu gdzieś ładny wątek o tym...

Cytat
Czy moglbys rozwinac hawk swoja mysl z CONTEXT'em ?

Context = request (POST, URL, itd) + dane o akcji (jeżeli mamy MVC) + response (do co wypluwają akcje).

Cytat
Moze jeszcze co sadzisz o tym fragmencie kodu, napisany przez mnie przed chwila:

A do czego służy httpServletRequest? Pachnie Javą, ale z J2EE mam mało wspólnego sad.gif .
Go to the top of the page
+Quote Post
hawk
post 16.04.2004, 08:33:28
Post #64





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Cytat
Ding - dong. To ja Cie bardzo poprosze o wygodna implementacje containsValue w tym "PHPowym hasmapie"

Tu mnie zagiąłeś :oops: . Zdarzyło mi się widzieć w php tylko badziewiaste HashMapy które udają że nie są debilną tablicą asocjacyjną. A containsValue() tłumaczy się w php na in_array(), i nie mam pojęcia jak jest w środku implemntowane. Może tablica asocjacyjna potrafi więcej niż tylko liniowe przeszukiwanie? Ktoś wie?

Cytat
Iterator z Javy daje mi mozliwosc latwego kasowania elementow, bez niebezpieczenstwa utraty plynnosci iteracji. W php jesli sie nie myle nie jest to takie "fajne".

Tutaj to nie jest takie proste. Bo ta łatwość jest po stronie klienta, a implementując iterator już tak łatwo nie jest. Ale masz rację: Iterator np. na ArrayList obsługuje usuwanie bardzo przyjemnie, a z foreach(...) już byłoby topornie.

Cytat
Zgadzam sie, ale wykorzystanie IF nie zawsze wydaje mi sie konieczne, natomiast wszelkie metody autoryzacji wykonywalbym tuz po czesci inicjujacej dzialanie silnika. W momencie kiedy srodowisko "klienckie" dziala, a "administracyjne" nie jest jeszcze zainicjowane.

Hmm, tzn kiedy? Nie tak łatwo się porozumieć smile.gif . Jak dla mnie, uwierzytelnianie może być jak najwcześniej, natomiast autoryzacja dopiero wtedy, gdy wiemy, jaką akcję chcemy wykonać (skrzywienie MVC). A to niestety nie jest tak wcześnie - przedtem wstają różne filtry, db, sesje, router, trzeba w ogóle ściągnąć config akcji... A IF podoba mi się dlatego, że nie chcę wrzucać rzeczy takich jak auth na sztywno do silnika, jak w "starym" phiendzie. IF pozwala wywalić dużo rzeczy na zewnątrz, zwiększając tym samym elastyczność i konfigurowalność, a mimo to mogę je wykonać w podobnym momencie, jako część silnika, a nie część akcji.
Go to the top of the page
+Quote Post
e-Gandalf
post 16.04.2004, 11:32:29
Post #65





Grupa: Przyjaciele php.pl
Postów: 195
Pomógł: 0
Dołączył: 7.07.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat
OT: php5 pociaga mnie bardziej chyba niz moja dziewczyna laugh.gif ale boje sie go uzywac bo nie mam pojecia kiedy wejdzie do powszechnego uzycia. I co z tym fantem zrobic ?


Skontaktuj sie z lekarzem... To naprawde niebezpieczne - mi musial pomagac po pierwszym spotkaniu z Tomcatem smile.gif

Cytat
Hmm, tzn kiedy? Nie tak łatwo się porozumieć . Jak dla mnie, uwierzytelnianie może być jak najwcześniej, natomiast autoryzacja dopiero wtedy, gdy wiemy, jaką akcję chcemy wykonać (skrzywienie MVC). A to niestety nie jest tak wcześnie - przedtem wstają różne filtry, db, sesje, router, trzeba w ogóle ściągnąć config akcji... A IF podoba mi się dlatego, że nie chcę wrzucać rzeczy takich jak auth na sztywno do silnika, jak w "starym" phiendzie. IF pozwala wywalić dużo rzeczy na zewnątrz, zwiększając tym samym elastyczność i konfigurowalność, a mimo to mogę je wykonać w podobnym momencie, jako część silnika, a nie część akcji.


Mhm, masz racje, pomysl jest bardzo "czysty" i logicznie spojny - jak zreszta wiekszosc z Javy. Naprawde, uwazam, ze implementacja server-side w wykonaniu Javy jest praktycznie wzorcowa i jedyne co mozemy robic to ja emulowac w php smile.gif

A co do auth - wiesz, to tak jak z wysylaniem zapytan do bazy. Bardzo trudno to robic w jednym miejscu. Auth musi moc byc odpalony w czasie trwania calej akcji, poniewaz autoryzacja czegos co ty nazywasz akcja (zakladajac, ze dobrze zrozumialem ja to nazywam generacja szablonu) to poczatek. Potem w trakcie wykonywania akcji nalezaloby jeszcze sprawdzic czy uzytkownik ktory ma prawo do obejrzenia tego dokumentu powinien tez zobaczyc przecisk 'edit' umieszczony pod nim, nie?
Go to the top of the page
+Quote Post
hawk
post 16.04.2004, 16:54:25
Post #66





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Cytat
A tak btw. hawk skad sciagnac phiend2 snitch.gif ?

Znikąd. phiend2 powstaje w bólach i nie zanosi się na szybki przełom.
Cytat
A co do auth - wiesz, to tak jak z wysylaniem zapytan do bazy. Bardzo trudno to robic w jednym miejscu. Auth musi moc byc odpalony w czasie trwania calej akcji, poniewaz autoryzacja czegos co ty nazywasz akcja (zakladajac, ze dobrze zrozumialem ja to nazywam generacja szablonu) to poczatek. Potem w trakcie wykonywania akcji nalezaloby jeszcze sprawdzic czy uzytkownik ktory ma prawo do obejrzenia tego dokumentu powinien tez zobaczyc przecisk 'edit' umieszczony pod nim, nie?

Prawda. IMHO ważne jest żeby pierwsze odpalenie auth było przed akcją - może w ogóle nie trzeba ładować akcji. I to jest ta część od której zależy bezpieczeństwo systemu - np. czy user może usuwać artykuły. Potem, w trakcie wykonywania akcji, nie ma rady, trzeba znowu sprawdzać. Ale jak tutaj się zapomni to będzie bezużyteczny przycisk, a nie włamanie do systemu.

BTW, z tym związany jest problem. Jeżeli będzie gdzieś zapisane że do akcji "DeleteArticle" mają dostęp grupy "Administrators" i "Moderators", to przy wyświetlaniu przyciski "Delete article" można albo sprawdzać przynależność do tych grup (wtedy trzeba pilnować żeby nie rozjechało się z wpisami przy akcji "DeleteArticle", albo sprawdzać config samej akcji, co kosztuje znacznie więcej.
Go to the top of the page
+Quote Post
Ace
post 16.04.2004, 16:58:20
Post #67





Grupa: Zarejestrowani
Postów: 216
Pomógł: 0
Dołączył: 9.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Mam pytanie z innej beczki, lecz tez dotyczy jadra .

Mianowicie ile ? Jak dlugo wykonuje sie skrypt strony waszej, ktory analizuje dane, przetwarza je i wypluwa do przegladarki. Wlasnie dobiegl koncu pisanie mojego systemu i nie wiem czy sie cieszyc czy nie, ale jeszcze tak dlugo stworzone przeze mnie skrypty sie nie wykonywaly. Do rzeczy:

Kod
strona wygenerowana w : 0.0348260 sekund


czy to duzo ? Moze podacie jakies swoje wyniki dla porownania. Moj system narazie zawiera automatycznie ladowane moduly, prosta administracje strony - tzn, administracja uzytkownikow, oraz edycjia pozycji w menu. W kazdym badz razie ten wynik wydaje sie jak dla mnie duzy. Ciekawi mnie w jakim czasie generuje sie np: to forum, lub vortal php.pl ...

pozdrawiam
Go to the top of the page
+Quote Post
e-Gandalf
post 16.04.2004, 17:55:37
Post #68





Grupa: Przyjaciele php.pl
Postów: 195
Pomógł: 0
Dołączył: 7.07.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


zalezy tez od procesora oczywiscie...

hawk: ja bym sprawdzal tablice uprawnien aktualnego uzytkownika. taka tablice tworzylbym na poczatku i potem nie obchdozi mnie czy on moze to zrobic bo nalezy do tej grupy czy dlkatego ze ma solowe uprawnienia


--------------------
"(...)Zrozumienie wymagaloby od Ciebie odrobiny pokory. A dzis, w dobie
obalania autorytetu i udowadniania, ze doswiadczenie jest niepotrzebnym
balastem, to jest niemodne.(...)"
Go to the top of the page
+Quote Post
hawk
post 16.04.2004, 18:48:17
Post #69





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Hmm, ale to nie jest takie proste. Bo ja widzę system uprawnień trochę jak system plików. Są sobie obiekty (u mnie: akcje), do których można nadawać prawa. System nie definiuje z góry ile takich obiektów może być, i w ogóle jakie są. Czyli nie definiujemy na sztywno praw "usuwanie artykułów" itd (całe mnóstwo), tylko jest obiekt "usuwanie artykułów" do którego można nadawać prawa.

No i teraz znalezienie wszystkich obiektów do których użytkownik ma dostęp nie jest proste. Raz że użytkownik należy do wielu grup. A dwa że ja bym chciał te obiekty mieć zagnieżdżane. Tzn jest sobie taki pseudo-katalog "artykuły", w nim "usuń artykuł", "dodaj artykuł" itd. I jak nadam prawa do "artykuły" to za jednym zamachem przenosi się to niżej. Czyli analogia z systemem plików, zwłaszcza tym z WinNT, jest bardzo trafna.

Ale "ja mam" oznacza tutaj "ja bym chciał żeby było w jądrze THOTa i czekam aż ktoś to napisze" biggrin.gif
Go to the top of the page
+Quote Post
e-Gandalf
post 16.04.2004, 18:55:37
Post #70





Grupa: Przyjaciele php.pl
Postów: 195
Pomógł: 0
Dołączył: 7.07.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Ok, ok. ale to nie koliduje z elastycznoscia. Ja tylko mowie, ze na poczatku tablica uprawnien (zagniezdzona, czy nie, wielowymiarowa czy nie) zostaje wypelniona dla tego usera i do konca wykonywania strony uyzwam tej tablicy.


--------------------
"(...)Zrozumienie wymagaloby od Ciebie odrobiny pokory. A dzis, w dobie
obalania autorytetu i udowadniania, ze doswiadczenie jest niepotrzebnym
balastem, to jest niemodne.(...)"
Go to the top of the page
+Quote Post
hawk
post 17.04.2004, 16:59:08
Post #71





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


No cóż, fanatyczne trzymanie się MVC jest tak samo złe jak każdy inny rodzaj fanatyzmu...
W momencie, gdy chcemy, żeby framework robił coś inteligentnego, a nie tylko uruchamiał akcje (bo to można zrobić w kilku linijkach nawet), robi się pewien konflikt na styku Model - Kontroler. Ja bym powiedział tak: akcje SĄ częścią Kontrolera (nie kontrolera jako klasy, ale jako logiczna część aplikacji), więc skoro akcje mogą odwoływać się do Modelu, to kontroler (już jako obiekt) też może, więc sprawdzanie uprawnień przed wykonaniem akcji nie jest zbrodnią.

A poza tym - to nie jest problem tylko php. Ten Intercepting Filter, który chwalę, pochodzi z J2EE. A przecież to jest właśnie nasz problem - jest sobie "coś", co nie jest akcją, ale może grzebać w Modelu. Skoro oni mogą, to my też laugh.gif .

A pomysł z Model3 bardzo mi się podoba. Gdyby to nagłośnić, rozreklamować, i koniecznie opatentować, to wtedy żyć nie umierać.
Go to the top of the page
+Quote Post
bela
post 22.04.2004, 20:58:41
Post #72


Administrator PHPedia.pl


Grupa: Developerzy
Postów: 1 102
Pomógł: 2
Dołączył: 14.09.2003

Ostrzeżenie: (0%)
-----


mam pytanko

mozecie podac jakies materialy o pisnaiu jadra?

przeczytalem to co jest na webcity ale jakos za bardzo nie kumam :?
Go to the top of the page
+Quote Post
michaloo
post 23.04.2004, 16:19:06
Post #73





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 15.05.2003
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


pytanie numer 2:
Przeglądając tak te wszystkie strony nie znalazłem nic na temat przekazywania informacji o modulach i operacjach jakie one maja wykonac. Bo zacząłem tworzyć system, w którym główna klasa pobiera (własnie, skąd?) informacje jakie modoly maja byc uruchomione i wysyla zapytanie do bazy (gdzie znajduje sie rejestr modolow i wymaganych uprawnien) skad otrzymuje informacje o wymaganych uprawnieniach usera i sprawdza czy takie ma jezeli nie to wyswietla stosowna informacje. Poczatkowo myslalem ze trzeba bedzie przesylac tylko dane dotyczace modolu glownego (biorac pod uwage ze wyglad bedzie standardowy czyli php-nuke'owy to modol glowny to bedzie "ten-na-środku") jednak pozniej stwierdzilem ze musze rowniez przekazywac dane dla innych modolow (tych wyswietlanych "po-bokach") i tutaj klops nie wiem w jaki sposob sie za to wziąć. Wiec chciałbym poznać jak Wy rozwiazujecie tą kwestie.


--------------------
Warsztat: PLD | GphpEdit | PHP4
Go to the top of the page
+Quote Post
hawk
post 11.05.2004, 23:15:45
Post #74





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


OT: router naprawdę zrobił karierę biggrin.gif
Go to the top of the page
+Quote Post
jaco
post 12.05.2004, 08:21:33
Post #75





Grupa: Zarejestrowani
Postów: 115
Pomógł: 1
Dołączył: 15.01.2003

Ostrzeżenie: (0%)
-----


Cytat
Sprawa 1. rejestr obiektow ? co o tym sadzicie... ? U mnie wyglada to mniejwiejcej tak:


Ju dawno o tym wspominalem, u mnie wyglada to troszke inaczej:

[php:1:5756255a0d]<?php
$cos_tam = $reg->get('comments/tbl_name', 'news');
?>[/php:1:5756255a0d]

Gdzie news to nazwa drzewa glownego, dalej mozna tworzyc strukture bez ograniczenia poziomu zaglebienia. Jest tez przegladarka, ktora nazwalem... regedit biggrin.gif

Jest jeszcze oczywscie $reg->set ktory update'uje jezeli klucz jest, w przeciwnym wypadku dodaje nowy - a teraz zastanawiam sie jak przyjemnie zrobic usuwanie...
Go to the top of the page
+Quote Post
hawk
post 13.05.2004, 10:20:50
Post #76





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Cytat
Hawk: wg mnie router jesli chcemy jakis "latwy" url do wywolywania akcji jest niezbedny.

Wiem że jest niezbędny smile.gif . Moja uwaga spowodowana była tym, że ja w różnych oficjalnych materiałach dot. MVC z routerem się nie spotkałem. Pewnego razu chyba wymyśleliśmy z Sethem na GG i daleki jestem od przypisywania nam/sobie jakiś zasług czy odkryć, ale koncepcja routera mocno się trzyma.

Chociaż ja widzę router inaczej niż ty. Bo piszesz o wzorcach URLi, przypisanych do akcji. A dla mnie podstawowym zadaniem routera jest podanie nazwy akcji -> więc musi zrobić swoje przed wykonaniem akcji. Potrzebujesz różne wzorce dla różnych akcji (czyli zapewne różne schematy URLi)? Bo tak jak ja to teraz mam, router zwraca właśnie nazwę akcji + tablicę parametrów które znalazł w URLu.
Go to the top of the page
+Quote Post
Seth
post 13.05.2004, 11:56:27
Post #77





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Co prawda nie robilem tego do modelu MVC, a do drzewek ale wykombinowalem to w ten spsob, ze skrypt sprawdza po kolei czy pierwsze elementy znajduja si ew sciezce - czy istnieje wogole taki element - i tak w gore szedlem do momentu az danego elementu nie bylo. W tedy reszte ze sciezki przekazywalem jako parametry.

Czyli gdy mamy np /cos/cos2/test/12 sprawdzamy po kolei czy mamy modul/akcje cos, a w nim pod modul/akcje cos2, a w nim podmodul/akcje test itd. Jezeli nie nie bedziemy mieli takiego modulu/akcji to uznajemy, ze ostatnio znaleziony element jest akacja i przekazujemy mu pozostale dane.

Malo to wydajne ale cos... winksmiley.jpg
Go to the top of the page
+Quote Post
hawk
post 13.05.2004, 12:23:28
Post #78





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: .
Go to the top of the page
+Quote Post
e-Gandalf
post 15.05.2004, 16:38:59
Post #79





Grupa: Przyjaciele php.pl
Postów: 195
Pomógł: 0
Dołączył: 7.07.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


do tego o czym mowicie wykorzystuje sie standard. xlinks. Po co wymyslac cos na nowo?


--------------------
"(...)Zrozumienie wymagaloby od Ciebie odrobiny pokory. A dzis, w dobie
obalania autorytetu i udowadniania, ze doswiadczenie jest niepotrzebnym
balastem, to jest niemodne.(...)"
Go to the top of the page
+Quote Post
hawk
post 15.05.2004, 20:03:29
Post #80





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


Cytat
Hawk a myslales moze nad alternatywnym przekazywaniem parametrow w urlach ? Za pomoca sesji czy bo ja wiem smile.gif. Tak by w urlu znajdowala sie wylacznei nazwa akcji. ?

A po co?
Skoro stawiam na router to mam pewność że engine będzie współpracować z czymkolwiek co ktoś sobie wymyśli. Mam ten komfort że mogę sobie to zupełnie ignorować i wiem że aplikacji mi nie zepsuje. :wink:
Go to the top of the page
+Quote Post

7 Stron V  « < 2 3 4 5 6 > » 
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.04.2024 - 11:27