Dzisiejszy wpis został poświęcony niezbędnym narzędziom, które potrzebne będą do rozpoczęcia swojej przygody z programowaniem w Javie. Java stoi dziś w bardzo ciekawym miejscu, dlatego niektóre z wyborów nie są do końca takie oczywiste 😊 Omówię również znaczenie podstawowych skrótów językowych ze świata programowania. Zaczynamy!
01. JDK
JDK – Czyli Java Development Kit, jest podstawowym narzędziem które musi znaleźć się na komputerze każdego programisty, bez tego ani rusz. W skrócie jest to narzędzie dzięki któremu możemy tworzyć programy w Javie.
Jednak sprawa ostatnio się trochę pokomplikowała, ze względu na nową politykę firmę Oracle.
Java posiada swoje wersje. Pierwsza oficjalna wersja Javy została wydana w styczniu 1996 roku. Od tamtego momentu Java jest ciągle aktualizowana.
W marcu 2014 roku została wydana Java 8 która została oznaczona jako LTS – Long time support. Oznaczało to że Java 8 przez długi okres czasu będzie dostawać aktualizacje – będą poprawiane w niej błędy.
Jednak cykl życia Javy 8 dobiega właśnie końca, kończy się ono z końcem tego miesiąca (Styczeń 2019), chyba że wykupiło się przedłużone komercyjne wsparcie (Które zakończy się w Marcu 2025).

Począwszy od Javy 9, która została wypuszczona we wrześniu 2017, nowa wersja Javy jest wydawana co pół roku. Jest to dość duży problem dla firm które opierają swoje rozwiązania na Javie, nowe wersje Javy mogą różnic się nieco od siebie i mogą wymagać zmian w oprogramowaniu aby wszystko działało jak należy. Dlatego bardzo ważnymi wersjami Javy są wersje oznaczone jako LTS (Long Time Support).
Kolejną wersją Javy oznaczoną jako LTS jest Java 11 (link do źródła). Jednak Oracle postanowiło podjąć decyzję o tym że począwszy od Javy 11, java przestaje być darmowa. Dodatkowo wersja LTS w przypadku Javy 11 od Oracla będzie obejmować tylko dwie aktualizacje (11.01 oraz 11.02), po drugiej aktualizacji wsparcie dla Javy 11 przejmie prawdopodobnie firma RedHat (ta informacja nie jest potwierdzona, jednak istnieją pewne plotki na ten temat) która jest jednym z członków społeczności Javy.

Decyzja ta wywołała całkiem spore zamieszanie w środowisku developerów. Jednak tak naprawdę, nie ma tego złego 😉 Oracle jest tylko jednym z wydawców Javy. Po ogłoszeniu tej kontrowersyjnej decyzji inni duzi gracze (np. RedHat, Azul czy Amazon – link do wpisu o jdk od firmy Amazon) zapowiedzieli wydanie własnej implementacji Javy.
Istnieje projekt o nazwie OpenJDK na którym bazują wszystkie wydania Javy (tak, Oracle tak jak i inni wydawcy korzystają z OpenJDK!).
Jednym z wydawców który cieszy się bardzo dużym poparciem społeczeństwa Javy jest AdoptOpenJDK (w jednym ze swoich wpisów Allegro poinformowało że to właśnie AdoptOpenJDK zostało główną dystrybucją Javy na ich platformach! – (wpis na blogu allegro)
W naszym kursie również wykorzystamy AdoptOpenJDK 11 😊 To znaczy że nasz kurs będzie bazować na najnowszych dostępnych technologiach.
Podsumowując: Java jest i będzie darmowa. Decyzja jednego wydawcy nie świadczy o całej społeczności Javy. Warto jednak pamiętać o tym że wydanie Oracle jest płatne, i należy wybrać innego dostawecę np. AdoptOpenJDK (no chyba że chcemy płacić grubą kasę do Oracla za korzystanie z Javy 😉 )
/*
Podczas pisania tego artykułu okazało się że jest on bardziej obszerny niż mi się początkowo wydawało. Został on więc podzielony na dwie części. Część pierwsza została poświęcona JDK natomiast część druga opowiada o IDE, znaczenie tego skrótu zostanie omówione w drugiej części 😉
*/