Witaj, Gościu O nas | Kontakt | Mapa
Wortal Forum PHPEdia.pl Planeta Kubek IRC Przetestuj się!

Przewodnik po projektowaniu klas w PHP

Warstwowa Aplikacja

Dobrze jest myśleć kategoriami warstw, kiedy budujemy aplikacje (zobacz A Quick Intro to N-Tier). Chociaż N-Tier nie jest tematem bezpośrednio powiązanym ze specyfikacją klas, to jednak pomaga, kiedy próbujemy zdecydować jaką rolę spełnia klasa (szczególnie gdy unikamy klas "BOGÓW"). Pomaga mieć całość "frameworku" w głowie, podczas myślenia co dana klasa będzie robić.

Jest wiele open sourcowych projektów PHP wartych pochwały, ale popularnym problemem wydaje się być wiązanie warstwy Logiki Prezentacyjnej (Presentation Logic) z warstwą Dostępu Danych (Data Access) - co sprawia, że stają się trudne do zastosowania poza projektem, dla którego zostały zaprojektowane.

I co jeśli forum używa z rozproszonego uwierzytelniania? Kiedy weźmiesz pod uwagę tylko liczbę osób używających vBulletina lub phpBB w całym internecie, wyzwaniem jest budowa systemu uwierzytelniania, który zapewniłby możliwość logowania się użytkownikom z jakiejś strony na konta for stworzone w innych serwisach. Jeśli został użyty rozproszony formularz (tzn. wiele stron "posiada" wszystkie konta) i jakiś rodzaj "wiarygodnego" systemu ewoluował, możemy mówić o czymś, co całkowicie rozwiązuje potrzebę podejścia "korporacyjnego", takiego jak Password czy Liberty.

Ilość możliwości jest nieskończona. Na marginesie, pierwszym prawdziwym pionierem aplikacji tego typu, na którego się natknąłem, jest Phuse - PHP Unified Search Engine (Jednolity Mechanizm Wyszukiwawczy PHP).

Ogólnie rzecz ujmując ideą warstwowej aplikacji jest możliwość łatwej wymiany warstw, tak aby dołączyć nowe do istniejącej już aplikacji. Dla przykładu umieszczenie usług sieciowych pomiędzy logiką biznesową a prezentacyjną, pozwala nam uruchomić tą ostatnią zarówno na lokalnej jak i na zdalnej stronie.

Informacje na podobny temat:
Wasze opinie
Wszystkie opinie użytkowników: (0)
Mentax.pl    NQ.pl- serwery z dodatkiem świętego spokoju...   
O nas | Kontakt | Mapa serwisu
Copyright (c) 2003-2022 php.pl    Wszystkie prawa zastrzeżone    Powered by eZ publish Content Management System eZ publish Content Management System