エンジニア的なネタを毎週書くブログ

東京でWebサービスの開発をしています 【英語版やってみました】http://taichiw-e.hatenablog.com/

jshellを使ってみた

ちょっとしたプログラミングに、jshellを使ってみました。

jshellとは、Java9から導入される、簡易実行環境。REPLっていうらしい。Rubyでいうirbに相当します。


jshell JDK 9 quick peek

 

使ってみた感想。

良いところ

・ワンラインサクッと書いて動かせるのは便利。自分は未だにJava8のStreamAPIとかLocalDateとかうまく書けないので、一行単位でいろいろ試せるのはよかった

・/openコマンドで、ファイルに書き出してあるスクリプトが読み込めるので、スクリプト言語のような実行の仕方ができる。

 

使いにくいと思ったところ

・importが大変。IDEじゃなくて適当なテキストエディタで書いていたのだけど、いちいちパッケージを調べないといけない。

・/openコマンドで100行くらいのものを読むと、エラーがどこで起こっているのかわかりにくい。エラーの行番号が出ない。クラスを作り始めるともうわけわからん。

・jshellに限らず他のREPLもそうみたいなんだけど、メソッドチェーンを書きたければ改行前にドットを打たないとシンタックスエラーになる

 

などなどありまして、1-2行を試すのはいいけれど、100行くらいのものを動かしたかったら、おとなしくIDE使って書いて、junitでキックするなり、普通にmainメソッド作るなりして動かしたほうがいいのかなぁと思いました。

 

全然いいコードじゃないけどこんな感じ

https://github.com/taichiw/baseball/blob/master/201603pitcher/makecalendar.java