Krytyka i kontrowersje Java
Język Java pomimo swoich wielu zalet, ma wiele wad w tym takie, które wzbudzają liczne kontrowersje: Najczęściej wymienianą wadą języka Java jest to, że programy pisane w Javie wykonują się wolniej niż programy pisane w językach natywnie kompilowanych (np. C++). Zarzut ten odnosi się szczególnie do starych wersji Javy, kiedy zaawansowane mechanizmy takie jak JIT albo współbieżny odśmiecacz nie były dostępne.
Obecnie zdania są mocno podzielone. Można podać przykłady programów zarówno takich, które w Javie będą wykonywały się wolniej niż w C++, jak i takich, które będą wykonywały się szybciej. Javie zarzuca się, że niezbyt dobrze nadaje się do zastosowań czasu rzeczywistego. Głównym problemem jest brak przewidywalności wydajności oraz nieoczekiwane przestoje powodowane działaniem odśmiecacza.
W nowych wersjach Javy ten drugi problem został radykalnie ograniczony, jednak nadal do zastosowań czasu rzeczywistego lepiej stosować języki natywnie kompilowane. Często Javie zarzucane jest to, że ma mniejszą funkcjonalność niż np. C++, co ogranicza programistę. Jako przykład przywołuje się czasami fakt, że aby uruchomić niewielki program trzeba napisać dłuższy kod programu.
Niektórzy jednak zwracają uwagę, że również język C++ nie ma wielu elementów, które można znaleźć w Javie jak np. klasy anonimowe, odśmiecacz pamięci, system pakietów, dynamiczne ładowanie klas czy reflection API.
- Zaloguj się lub utwórz konto, by odpowiadać