Generacja |
|
Technologie
Generacja
Generacja treści serwisu po stronie serwera, przy średnich i dużych
przedsięwzięciach, jest dużo bardziej złożona niż sama
prezentacja u klienta. Najczęściej tworzy się ją w oparciu
o bazy danych. Przy projektowaniu takich systemów stosuje się
taką samą metodykę jak przy tworzeniu każdego innego złożonego
systemu informacyjnego. Są natomiast pewne cechy specyficzne dla
tego rodzaju projektów: przetwarzanie rozproszone, zagadnienia
sieciowe, sposoby zapewnienia bezpieczeństwa, sztuczne tworzenie
stanów poprzez mechanizm sesji oraz wiele innych.
Istnieje wiele technologii wspomagających analityków, projektantów i
programistów w czasie cyklu tworzenia systemu. Jeżeli chodzi o
narzędzia analityczne i projektowe to chyba nie ma jeszcze
narzędzi zorientowanych tylko na tę dziedzinę - istnieją raczej
adaptacje dotychczasowych rozwiązań. Natomiast w części
programistycznej rozwój jest imponujący - w środowiskach
implementacji systemów webowych można przebierać.
Wszystko zaczęło się zaraz po wprowadzeniu standardu WWW. Na pierwszy
ogień poszedł standard CGI, implementowany najczęściej w językach
Perl i C. Na początku była to bardzo niewdzięczna praca, ponieważ
programista musiał robić wszystko sam, ale przez lata stworzono
wiele bibliotek ułatwiających pracę.
Zaczęły powstawać też nowe technologie: ISAPI, ASP, PHP itd. W tej chwili
producentów jest bardzo wielu, lecz pewne rozwiązania dorosły
do rangi standardów. Wybór zależy od złożoności
przedsięwzięcia. Na poniższym wykresie postarałem się
przedstawić pewne tendencje. Rozmieszczenie jest zaproponowane
przeze mnie i subiektywne. Osoby zainteresowane zachęcam do
dyskusji na ten temat.
Oś pozioma przedstawia złożoność projektu: od prostego przetwarzania
formularzy i generowania statystyk, aż do złożonych zagadnień
Business To Business. Oś pionowa przedstawia grupy technologii
wywodzących się od jednego producenta. Przy opisie każdej
technologii starałem się podać powody powyższego usytuowania.
Złożone projekty wymagają pracy całych zespołów, w których są tworzone
specjalizacje. Projektanci systemowi tworzą platformę systemu,
projektanci aplikacji tworzą projekt aplikacji, programiści
tworzą kod logiki biznesowej, kolejni programiści tworzą kod
logiki prezentacji, html'owcy tworzą kod HTML, który korzysta z
interfejsów udostępnionych przez programistów, graficy tworzą
wygląd (ang. layout) strony którą widzi użytkownik. Wydaje mi
się, że ta wyliczanka przekonuje, że złożone projekty nie mogą
być wykonane przy pomocy prostych narzędzi. Stąd na wykresie
dla technologii ASP i PHP biorą się przerwy. Jest to ten moment,
w którym należy odseparować pracę poszczególnych zespołów.
Doprowadzenie do sytuacji, w której kilku grafików, htmlowców i
programistów pracuje na tych samych plikach jest
niedopuszczalne. Rozwiązaniem wydaje się być stosowanie szablonów.
Więcej informacji na ten temat podam przy opisie niektórych
technologii.
|