Sięgnę znowu do języka Java, aby jeszcze bardziej oddalić się choć na chwilę od tworzenia gier. Pisało się w nim dostatecznie dużo, żeby przedstawić Wam wady i zalety, których każdy z Was powinien być świadom, jeszcze przed rozpoczęciem nauki. Nie będę zagłębiał się w szczegóły czy jakieś zaawansowane wątki, tu są tylko same konkrety.

KRÓTKA CHARAKTERYSTYKA JĘZYKA JAVA

Java jaka jest, każdy widzi. Rok 1995 przyjmuje się za jej "narodziny". James Gosling chciał stworzyć język podobny do C++, ale żeby jednocześnie "ukrywał" wszystkie trudne tematy dotyczące manualnego alokowania pamięci przez programistę. Ponadto jego postulatem było zapewnienie, żeby ta sama aplikacja była w stanie się uruchomić bez żadnych modyfikacji na innej platformie, czyli słynne hasło "napisz raz, uruchom wszędzie". Udało się. Z biegiem lat język bardzo szybko zyskiwał nowych miłośników języka Java posiadającego składnię C++ tylko bez konieczności zarządzania pamięcią, które to sprawiało wielu osobom horrendalne problemy. Obecnie jest to jeden z najczęściej wykorzystywanych języków zarówno przez "domowych" majsterkowiczów, jak również potężne firmy i korporacje wykonujące aplikacje biznesowe dla klientów. W kręgach gier jest również dość często wykorzystywany, nie zapominajmy o popularnej produkcji "Minecraft". Jeśli ktoś chce samemu tworzyć gry w języku Java i rozważa taką opcję, zapraszam tutaj.

Java

Java powstała w 1995 roku z inicjatywy Jamesa Goslinga jako język podobny do C++ bez konieczności ręcznego zarządzania pamięcią.

JĘZYK JAVA. WADY I ZALETY

Jak wszystko na tym świecie, to też ma drugą stronę medalu. Najpierw wypiszę najważniejsze wady, aby najpierw zacząć od tej negatywnej strony.

WADY

  • niezależność platformowa jest możliwa tylko poprzez interpretację tzw. kodu bajtowego (pośredniego), przez co przekłada się to na większą ilość rozkazów dla procesora i spadek wydajności przetwarzania operacji
  • od 2019 roku wymagana jest płatna subskrypcja dla wydawania komercyjnego (należy skorzystać z otwartoźródłowych alternatyw Javy np. "AdoptOpenJDK", aby to obejść)
  • język jest zaopatrzony we wbudowany "odśmiecacz pamięci", który odpowiedzialny jest za usuwanie zbędnej już pamięci wykorzystywanej przez obiekty. W wyjątkowych sytuacjach może nie zareagować jak należy i doprowadzić do wycieku pamięci
  • aby móc uruchomić program napisany w tym języku, stanowisko komputerowe musi mieć zainstalowane środowisko uruchomieniowe. Jedynym sposobem na zniesienie tej zależności jest konwersja aplikacji na plik wykonywalny

Teraz czas na zalety języka Java!

ZALETY

  • Java ze względu na połączenie kompilacji i interpretacji nie traci zupełnie na wydajności, tak jak w przypadku "czystego" interpretera i w związku z tym, jest w stanie uruchomić program na dowolnej innej platformie wspierającej Javę poprzez wirtualną maszynę
  • nie jest wymagana znajomość obsługi manualnego zarządzania pamięcią, tak jak ma to miejsce w językach C i C++
  • posiada mnóstwo bibliotek i wiele sprawdzonych metod pozwalających na uniknięcie "wynajdywania koła na nowo"
  • język wspiera programowanie współbieżne polegające na wykonywaniu wielu wątków naraz przy użyciu procesora wielordzeniowego (nawet jeśli nie dysponujemy takim procesorem, wirtualna maszyna jest w stanie "symulować" takie możliwości)

Takie krótkie podsumowanie powinno pomóc każdemu z Was w podjęciu decyzji czy jest sens sobie zawracać sobie głowę językiem Java, czy też zabrać się za naukę jakiegoś innego. Tym zdaniem kończę na dzisiaj i widzimy się jutro!