Взломать башню, взломать OpenJDK
Hack the Tower — это ежемесячная встреча разработчиков в Heron Tower на 26-м этаже с потрясающим видом на Лондон. За этим хакатоном стоят два сообщества:
Лондонская группа пользователей Scala
Принять команду OpenJDK является постоянным участником хакатона под руководством Мани .
У меня была возможность поиграть с JShell, предстоящим Java REPL.
Первые шаги с JShell
Вот хорошо написанное введение, как вы можете установить JShell, в настоящее время это Kulla Project, но я считаю, что это будет команда из папки bin JDK, которая называется jshell. Быстрый обход: я исследовал JShell и нашел несколько существующих реализаций этого. Geophil, например, является реализацией оболочки, которая использовалась с JDK 1.1.
Одним из основных моментов разработки JShell является уменьшение кривой обучения, устранение шаблонных кодов и сосредоточение на точном решении. Вам не нужен главный класс для распечатки чего-либо, вы можете сделать это только с помощью System.out.println («Hello JShell»). Если вы пишете команду, точка с запятой необязательна. Было бы неплохо и в реальном Java-коде.
Мой список любимых функций
1. устранение проверенных исключений
Вам не нужно беспокоиться о блоках try-catch, JShell помещает проверенные исключения за кулисы, чтобы вы могли просто написать код, подобный этому:
-> Integer testInt = Integer.parseInt("1")
2. сохранение рабочей области в файл
Вы можете создать свои собственные методы:
1.
-> Integer myIntegerParser(String number){
return
Integer.parseInt(
"1"
); }
Будьте осторожны, точка с запятой не является обязательной в функции!
Теперь вы можете использовать свою функцию:
1.
-> Integer testTwo = myIntegerParser(
"2"
)
Без точки с запятой, конечно, потому что REPL — это делать вещи быстро.
Теперь вы можете сохранить ваше рабочее пространство как workspace1:
1.
-> /save workspace1
Если вы посмотрите в файл workspace1, там есть все ваши команды, вы можете в любое время перезагрузить его с / open workspace1 или просто отредактировать этот файл вручную и осторожно.
Недостающие функции
Это выходит за рамки, но брак с Maven и Gradle был бы действительно полезным. Представьте, что вы запускаете jshell в корне вашего проекта, jshell анализирует pom.xml, автоматически обрабатывает зависимости и загружает классы. Вау, это было бы очень мило.