Przepis na dobrą Javę

Tworzenie aplikacji zgodnie z modelem J2EE powinno stać się łatwiejsze dzięki Blue Print Design Guidelines for J2EE - dokumentowi dostarczanemu przez Sun Microsystems.

Tworzenie aplikacji zgodnie z modelem J2EE powinno stać się łatwiejsze dzięki Blue Print Design Guidelines for J2EE - dokumentowi dostarczanemu przez Sun Microsystems.

Zwykle przewodnik technologiczny (white paper), nawet opublikowany przez dużą firmę, nie jest wydarzeniem rynkowym.

Inaczej jest w przypadku 260-stronicowej publikacji Blue Print Design Guidelines for J2EE. Wprowadzając pod koniec ub.r. implementację platformy odniesienia Java 2 Enterprise Edition (J2EE), Sun dostarczył zapowiadaną funkcjonalność J2EE łącznie z takimi technologiami, jak Enterprise Java Beans (EJB), usługi CORBA, XML, serwlety, aktywne strony Java Server Pages (JSP).

Oprócz bibliotek i przykładów, Sun dostarczył również wspomniany dokument (nazywany dalej w skrócie WP), przedstawiający sposób, w jaki należy projektować i budować aplikacje Java 2. WP jest dostępny pod adresemhttp://java.sun.com/j2ee/ blueprints.

Czym jest middleware?

WP jest kompilacją wielu już istniejących przewodników, specyfikacji i dokumentacji technicznej. Zaczyna się prezentacją na wysokim poziomie ogólności koncepcji rozproszonych systemów wielowarstwowych, a kończy szczegółowymi informacjami dla programisty, np. na temat typów transakcji obsługiwanych przez EJB.

Przyjęło się, że wszystkie aplikacje J2EE są rozproszone i wielowarstwowe. W strukturze trójwarstwowej mamy do czynienia z bazą danych na jednym komputerze, serwerem aplikacyjnym w warstwie pośredniej i "chudymi" lub "grubymi" aplikacjami klienta. Aplikacje wielowarstwowe posługują się wieloma współpracującymi systemami w warstwie pośredniej. WP definiuje w nietypowy sposób warstwę pośrednią (middleware), jako coś, co pozostaje pod pełną kontrolą działu informatyki przedsiębiorstwa.

Minimalizowanie programowania

Ważnym przesłaniem specyfikacji J2EE jest minimalizacja programowania przy tworzeniu aplikacji. J2EE traktuje aplikację jako zbiór niezależnych części (komponentów), rzadko komunikujących się bezpośrednio. Współpracują one za pośrednictwem kontenerów. Komponenty EJB zajmują się obsługą danych za pomocą wbudowanych metod, natomiast obsługą puli połączeń z bazą, transakcji, wielowątkowości czy bezpieczeństwem zajmuje się kontener, stanowiący część serwera aplikacyjnego.

Ta koncepcja została rozszerzona na serwlety. Zamiast uważać je za rozszerzenie właściwości funkcjonalnych Web serwera, WP uznaje Web serwer za "lekki" kontener, przekazujący komunikaty HTTP do odpowiedniego serwletu, zajmującego się jego obsługą. To Web serwer uruchamia odpowiednią liczbę serwletów, obsługuje wątki i połączenia sieciowe.

Parametry opisujące działanie komponentów określa się w chwili ich osadzania, a nie programowania. Zwykle zajmuje się tym "składacz" aplikacji, nie zaś programista tworzący komponenty. Eliminując pewne operacje z komponentów, minimalizujemy programowanie. Praca spada na dostawcę komercyjnych serwerów aplikacyjnych.

W J2EE wykorzystuje się trzy rodzaje komponentów: Enterprise Java Beans, serwlety i aktywne strony serwerowe JSP. Wszystkie one posługują się rozległą infrastrukturą wspomagającą: obsługą komunikacji Java Messaging Service (JMS), obsługą transakcji Java Transaction Services (JTS), usługami CORBA, sterownikami dostępu do baz danych JBDC, językiem XML, usługami katalogowymi Java Naming and Directory Interface (JNDI). Wszystkie te usługi są dostępne w postaci komercyjnych lub bezpłatnych produktów, zrealizowanych zgodnie ze specyfikacją zawartą w J2EE.

Chudy czy gruby klient?

WP zachęca do tworzenia aplikacji dostępnych z przeglądarki Web, pokazując ich zalety w porównaniu z produktami, w których część logiki aplikacji wykonuje się na stacji klienta (gruby klient). Największą zaletą aplikacji z chudym klientem jest nie tylko łatwość dystrybucji nowej wersji (gdyż osadza się ją tylko na serwerach), ale głównie łatwość jej rozprzestrzeniania w intranetach i Internecie oraz wygodna skalowalność - przy wzroście liczby użytkowników na ogół wystarczy zwiększyć ilość serwerów Web.

WP nie wyklucza jednak modelu z grubym klientem, ponieważ ma on zalety, zwłaszcza gdy dokonuje się złożonych obliczeń na danych z bazy.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200