Java 9

Osoby nie przepadające za Javą często zarzucają jej, że stworzenie nawet bardzo prostej aplikacji wymaga w niej sporego nakładu pracy. Zasadniczo ciężko się z tym stwierdzeniem nie zgodzić, bo nawet do wyświetlenia Hello World nie ominie nas napisanie kilku linii kodu związanego z definicją klasy i wywołaniem metody main(). Jest to szczególnie uciążliwe, jeśli chcemy zademonstrować konkretną funkcjonalność - np. działanie wyrażań lambda z Javy 8 lub też wykorzystać podstawowe klasy z API do prostych operacji. W Javie 9, której premiera planowana jest na wrzesień 2016 roku, planowane jest wprowadzenie kilku sporych modyfikacji, ale jednym z najbardziej oczekiwanych dodatków jest wprowadzenie interpretera REPL(read-eval-print loop), który znany jest zapewne każdemu, kto miał przynajmniej niewielką styczność z językami takimi jak Python, czy Ruby. Jego główne założenie to możliwość wpisywania komend i otrzymywanie wyniku bez konieczności definiowania typowego dla Javy, wspomnianego wcześniej kodu typu boilerplate. Jeżeli więc będziemy chcieli wyliczyć wynik działania 2+2 nie będzie konieczne tworzenie klasy, metody main(), wywołanie metody System.out.println(2+2) - wystarczy wykonanie samej istotnej operacji. Ucieszą się więc z pewnością wszyscy, który prowadzą prelekcje, warsztaty, szkolenia, czy też wykładowcy i w zasadzie każdy kto Javę wykorzystuje na co dzień niekoniecznie do super skomplikowanych projektów.

powershell

REPL w Javie rozwijany jest w ramach projektu Kulla, który ostatecznie ma przybrać nazwę JShell. W internecie można znaleźć kilka anglojęzycznych artykułów na jego temat, niestety część z nich jest już nieaktualna. W większości przypadków pokazane jest jak pobrać kod projektu z repozytorium, jak go później zbudować i na końcu uruchomić. Problem w tym, że cały proces trwa stosunkowo długo, a tak naprawdę nie jest to konieczne. Dużo wygodniejsze będzie pobranie już skompilowanej i spakowanej wczesnej wersji projektu.

1. Instalacja

Java 9 pojawi się dopiero za ponad rok, jednak już teraz można skorzystać z niektórych jej elementów we wczesnej fazie rozwoju. Żeby to zrobić, musimy pobrać i zainstalować Javę(najlepiej JDK) 9. Jedyna uwaga z mojej strony jest taka, że Eclipse może mieć po tej operacji problemy z uruchomieniem z powodu reorganizacji niektórych elementów, dlatego na końcu warto wrócić do podstawowej konfiguracji i ustawić zmienne Path, czy JAVA_HOME z powrotem na JDK 8. Aktualną wersję Javy 9 można pobrać z tej strony, instalacja odbywa się standardowo. Skompilowaną wersję projektu kulla można z kolei znaleźć tutaj, co też czynimy. Zmienną środowiskową musimy chwilowo przestawić na Javę 9, więc najprawdopodobniej musisz podmienić w zmiennej Path JDK z 8 na 9.

java 9 path

 

java version

2. Uruchomienie i testy

Pobrany plik uruchamiamy wywołując komendę:

java -jar kulla.jar

(uwzględniając oczywiście nazwę pliku jar) Na Windowsie pojawi się co prawda pewien problem, jednak nie ma on znaczenia w kontekście działania interpretera.

kulla run

Poniżej można zobaczyć film z kilkoma prostymi rzeczami, które możemy zrobić w takim interaktywnym interpreterze. Bardzo dobre narzędzie do nauki np. programowania funkcyjnego i pracy ze strumieniami.

Dyskusja i komentarze

Masz pytania do tego wpisu? Może chcesz się podzieliś spostrzeżeniami? Zapraszamy dyskusji na naszej grupe na Facebooku.