Pełzająca rewolucja Javy

Nadchodzi era języka Java, ale nie w tak szybkim tempie, jak pierwotnie przewidywano.

Nadchodzi era języka Java, ale nie w tak szybkim tempie, jak pierwotnie przewidywano.

Według obietnic twórców Javy i przepowiedni jego pierwszych entuzjastów, za sprawą tego języka programowania miała się odmienić nie tylko sieć globalna, ale cała informatyka. Być może na początku nadmiernie rozbudzono oczekiwania użytkowników. Spełnienie założeń, poczynionych w stosunku do Javy, wymagało rozwiązania wielu problemów technicznych, z którymi nie poradzono sobie do tej pory. Internet i pajęczyna World Wide Web pozwoliły co prawda na szybką ekspansję Javy w sieci, jednak dzisiejsze zastosowania appletów (programów napisanych w Javie, które zazwyczaj dołączone do stron WWW do swego działania potrzebują przeglądarki), bynajmniej nie są i nie powinny być najważniejszym obszarem wykorzystania tego języka programowania. Głównym przeznaczeniem Javy ma być tworzenie aplikacji, oprogramowania dla przedsiębiorstw (ze szczególnym uwzględnieniem komputerów sieciowych) i systemów operacyjnych nowych generacji.

W początkowej fazie rozwoju informatyki w przedsiębiorstwach, w latach 70., niemal wszystkie aplikacje były dostępne w firmach dla wszystkich zainteresowanych. Był to czas aplikacji horyzontalnych. Z upływem lat stawały się one coraz bardziej wyszukane, ale powoli traciły walor uniwersalności - budowano je bowiem na bazie innych narzędzi. Uwzględniając zróżnicowane wymogi poszczególnych elementów prowadzonej przez firmę działalności, aplikacje korzystały z różnych baz danych i odmiennych formatów plików. Z poszczególnych programów mógł korzystać jedynie określony dział, komórka lub pojedynczy pracownik. W efekcie coraz trudniejszy był dostęp do danych, zgromadzonych w różnych miejscach przedsiębiorstwa. W ten sposób zrodziła się potrzeba posiadania dynamicznego oprogramowania, które może przemieszczać się po sieci korporacyjnej, nie będąc związane z konkretnym miejscem ani komputerem. Możliwości budowy takich aplikacji stwarza właśnie Java.

Wówczas w pewnej mierze komputery byłyby podobne do telewizorów - program telewizyjny można odbierać na dowolnym z nich, niezależnie od daty produkcji czy wytwórcy. Dlaczegóż by wszystkie aplikacje nie mogły działać na każdym komputerze i urządzeniu podłączonym do sieci korporacyjnej?

Pierwsze trudności

Przedstawiciele firm tworzących oprogramowanie użytkowe narzekają wciąż na wydajność Javy. Ich zdaniem pełnowymiarowe aplikacje nadal będą tworzone za pomocą innych języków - takich jak C czy C++. Napisane w nich programy działają zdecydowanie szybciej niż te stworzone w Javie (nawet kompilatory działające 'w locie' tzw. just-in -time, nie generują odpowiednio szybkiego kodu). Sytuację radykalnie mogłoby odmienić wprowadzenie interpreterów Javy do układów sprzętowych. Są one dostępne już dzisiaj, jednak na ich upowszechnienie trzeba będzie poczekać. Obietnicę wdrożenia tej technologii niesie komputer sieciowy. Implementacje Javy zawierają wciąż wiele błędów i minie trochę czasu nim będzie to technologia stabilna.

Niektórzy specjaliści obawiają się, że największym zagrożeniem dla Javy jest rysująca się obecnie perspektywa powstania niezgodnych implementacji tego języka. Szczególny niepokój budzą działania firmy Microsoft, której maszyna wirtualna Javy jest uznawana za zbyt mocno związaną z systemem operacyjnym MS Windows. Microsoft, który niedawno przedstawił zbiór bibliotek Application Foundation Classes (AFC) dla Javy, nie zamierza poddać tego produktu testowi zgodności z inicjatywą "100% Pure Java" (stuprocentowo czysta Java), promowaną przez firmę Sun Microsystems, która opracowała ten język. Rzeczywisty problem pojawi się w chwili, gdy wirtualna maszyna Javy na platformę MS Windows będzie pozwalała wykonywać prace niedostępne w innych systemach (albo interfejs API będzie np. wspierał wywołania bibliotek Win32). Wówczas mógłby pojawić się 'windowsowy' dialekt Javy i podstawowa zaleta tego języka - zdolność do działania programów bez rekompilacji w różnych środowiskach programowo-sprzętowych - byłaby raz na zawsze utracona.

Sun przeciwdziała temu, oferując rozwiązania coraz bardziej izolujące wykonanie programów Javy od konkretnego sprzętu (jak Java RunTime Environment czy Java Native Interface). Firma wprowadziła niedawno Java Development Kit w nowej wersji 1.1 (tym samym, definiując tę wersję Javy). Jednak w żadnej popularnej przeglądarce nie ma na razie wsparcia dla nowej specyfikacji języka. Niemniej w ciągu trzech tygodni, które upłynęły od premiery JDK 1.1, ściągnięto niemal ćwierć miliona kopii tego oprogramowania. Zawiera ono prawie 700 klas, a wśród nich m.in. zapewniające autentyfikację i bezpieczeństwo danych.

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

TOP 200