Niezmienny element

Darmowy fenomen

PHP to język, który od początku był przeznaczony jako rozwiązanie dla programistów WWW. Początkowo powstawał jako projekt open source. Dzisiaj to bardzo wygodny język, łatwy do opanowania i wyposażony w niemal wszystkie potrzebne usługi.

PHP, podobnie jak ColdFusion, może korzystać z obiektów COM i komponentów pisanych w Javie. Jednak PHP opiera się przede wszystkim na własnych modułach i bibliotekach API, które udostępniają konkretny motor bazodanowy, pozwalają dynamicznie tworzyć rysunki itp.

PHP najlepiej współpracuje z serwerem WWW Apache, ale tak jak w przypadku każdego rozwiązania interpretowanego, można sprawić, by działało szybciej także w innych konfiguracjach. Firma Zend dostarcza rozwiązania, w których gotowe do uruchomienia strony PHP są przechowywane w pamięci podręcznej i mogą być znacznie szybciej przetwarzane. Z wykorzystaniem PHP powstało wiele gotowych "schematów" witryn. Prosty PHP Nuke pozwala na tworzenie wortali tematycznych. Dostępne są także, zwykle bezpłatnie, bardziej złożone rozwiązania, np. sklepy czy systemy do zarządzania witrynami.

Wydawać by się mogło, że aplikacje internetowe będą potrzebowały rozbudowanych serwerów bazodanowych czy wyrafinowanych metod programowania. Tymczasem niesłabnącą popularnością cieszy się motor bazy Open Source MySQL, dysponujący ubogimi możliwościami programowania. Częściowo tylko obsługuje transakcje bazodanowe, nie pozwala na stosowanie zagnieżdżonych kwerend, ale działa szybko, ma małe wymagania i nawet słaby komputer może obsłużyć wielu użytkowników. Rozbudowane wsparcie API sprawia, iż do bazy MySQL można odwołać się z niemal dowolnego języka skryptowego czy PHP.

Usługi Web

Dzięki językowi XML powstały tzw. usługi Web. Za pośrednictwem protokołów HTTP i SOAP przekazywane są żądania zdalnego wywołania procedur. To sposób na tworzenie aplikacji rozproszonych.

W przypadku Microsoftu usługi Web i komponenty .NET mają w dużym stopniu zastąpić obiekty COM. Dla programisty używającego Visual Studio.NET nie będzie miało znaczenia, gdzie dany komponent jest zlokalizowany. Microsoft pragnie zatrzeć różnicę między pisaniem dla Windows a "pisaniem na potrzeby Internetu".

Ciekawie została rozwiązana obsługa usług Web w serwerze Apache. Moduł obsługujący protokół SOAP może być częścią serwera WWW. Istnieje więc możliwość pisania usług Web za pomocą dowolnego języka, umożliwiającego tworzenie skryptów CGI. Może nawet powstać usługa Web w PHP.

Obsługa protokołu SOAP jest dostępna także w Delphi 6.0 Borlanda. Powstało już kilka usług Web stworzonych w tym języku. Także Sun niedawno zainteresował się usługami Web. Są już biblioteki dla Javy, które zapewniają obsługę XML, protokołów SOAP czy WDSL (do opisu usług). Co ciekawe, obiekty realizujące usługi Web są tak naprawdę dodatkowym "typem" komponentu w Javie. Oprócz tego Sun nadal promuje obiekty w standardzie J2EE.

Przyglądając się rozwojowi aplikacji internetowych, można zauważyć jeden, niezmienny element - architekturę. Po erze rozwiązań klient/serwer, wszystkie aplikacje powstają w architekturze trójwarstwowej (warstwa prezentacji, serwera aplikacji i serwera bazodanowego). Jednak z uwagi na coraz większe obciążenie aplikacji częściej mówi się o architekturze n-warstwowej, gdzie każdy element rozbity jest na wiele serwerów i każdy realizuje coraz to bardziej wyspecjalizowaną czynność. Dzisiaj trudno sobie wyobrazić konkurencyjną architekturę.


TOP 200