Java jedzie do przodu

Zestaw narzędzi

Od czasu pojawienia się zestawu narzędziowego JDK 1.4 Sun wyeliminował już ponad 300 błędów.

Maszynę wirtualną w najnowszej wersji JDK 1.4.1 opracowano także dla 64-bitowych procesorów Itanium (Windows XP 64 i Linux Red Hat 7.2). Wśród nowych elementów dostępnych dla programistów na szczególną uwagę zasługują dwa. Pierwszy to Java Naming and Directory Interface, który automatycznie wyszukuje serwery LDAP za pośrednictwem specjalnych rekordów DNS (określających dostępne usługi). Drugi to mechanizm wykrywania zakleszczeń (deadlock) w aplikacji, dodany do maszyny wirtualnej. W momencie przerwania działania programu jest generowany raport blokad (który obiekt czekał na konkretny zasób). Ułatwia to śledzenie aplikacji.

Nie określono nawet przybli- żonego terminu zakończenia prac nad kolejną, główną aktualizacją JDK - 1.5. Wiadomo natomiast, jakich zmian można oczekiwać. Podstawowe modyfikacje idą w kierunku zwiększenia wydajności aplikacji w Javie, a także uproszczenia zarządzania złożonymi systemami. Na przykład spore zmiany obejmą Garbage Collector, mechanizm odpowiedzialny za automatyczne zwalnianie pamięci używanej przez program w Javie. Ma być lepiej skalowalny i dostosowany do systemów wieloprocesorowych.

Prawdopodobnie pojawi się specjalne API do definiowania klastrów i szybkiej komunikacji w obrębie klastra. Sun planuje intensywne wspieranie rozwiązań przenośnych, dlatego powstanie specjalne API do zarządzania zasilaniem. Kolejne wersje maszyn wirtualnych mają mieć różne tryby pracy, np. ma być dostępny specjalny tryb diagnostyczny, pozwalający na łatwe uzyskanie informacji o stanie aplikacji (ułatwi to testowanie i profilowanie programu). Ma się także pojawić specjalne API do monitorowania kodu działającego w ramach maszyny wirtualnej, np. dostarczającego podstawowych statystyk o wątkach czy ostrzegającego o braku pamięci.

Prawdopodobnie do języka Java zostanie wprowadzony znany z C++ mechanizm wzorców, czyli ogólnych klas parametryzowanych określonym typem. W C++ jest to wykorzystywane m.in. w wielu miejscach w bibliotece STL. Nie wiadomo jednak czy pojawi się jej odpowiednik w Javie.

Specyfikacja J2EE

Za

  • Uruchamianie pod dowolnym systemem operacyjnym i na serwerze aplikacyjnym (choć może to wymagać modyfikacji w kodzie rozwiązania)

  • Duża liczba rozwiązań o znacznej skalowalności

  • Wiele funkcji związanych z zarządzaniem sesjami, awariami, rozkładaniem obciążenia i integracją aplikacji

  • Preferowana przez IBM, BEA, SAP czy Oracle

  • Bogactwo interfejsów

  • Łatwość komunikacji ze starszymi narzędziami Enterprise

    Przeciw

  • Skomplikowane środowiska programistyczne

  • Ograniczone możliwości budowania bogatego graficznego interfejsu użytkownika

  • Wysokie koszty tworzenia, uruchamiania i zarządzania aplikacjami

  • Niezależnie od typu rozwiązania możliwe jest wykorzystanie tylko jednego języka

  • Powolna adaptacja standardów


  • TOP 200