JyConsoleを導入し、Jythonコードをインタラクティブに実行する


インタラクティブ(Interactive)とは
「対話」または「双方向」といった意味で、ユーザーがパソコンの画面を見ながら、対話をするような形式で操作する形態を指す。具体的には、コンピューターからの画像や音声によるメッセージに対して、ユーザーがマウスやキーボードを入力して操作を進めていく。ユーザーが積極的に参加できるため、コンピューターを利用した学習教材にも使われる。インタラクティブの反対の意味としては、コンピューターが自動で処理するバッチ処理、非対話型、一括処理などの概念がある。これらは、処理がスタートすると一気に終了まで実行するので融通がきかない半面、インタラクティブな処理に比べて効率が高く、大量のデータ処理などに用いられる。
デジタル用語辞典より([http://yougo.ascii.jp/caltar/インタラクティブ)

Pythonを使用する上でメリットと言えるのが、やはりこのインタラクティブであるということでしょう。PythonをインストールしIDLEを実行すればPython Shellが起動する。またはターミナルからPythonを実行したりね。プログラムを書くにあたり、対話的コンソールで結果を確認しながら作ればミスも無くなる。複雑な計算も電卓を使うより楽に結果を表示できるだろう。


JythonにもPythonと同じ標準の対話的コンソールはある、他にもサードパーティが開発した対話的コンソールの【JyConsole】がありArtenumという会社がオープンソースで公開している。こちらはJavaで書かれており、私は好んでこちらを選択している。ただQPLライセンスなのでソフトウェアとして公開する場合はコードも配布する必要がある。


1,JyConsoleをダウンロードする

LibreSource - JyConsoleの左メニューのDownloadから一覧を表示する。URLは下に
http://dev.artenum.com/projects/jyconsole

バージョンはJython2.2.xに対応したJyConsole-1.4が良いだろう。とりあえずBINARY版とSOURCES版の両方をダウンロードしておく。たまにリンク先へ行けない場合があるのだが、気長に待てば復旧している。
ただ開発が2007年で止まっている事から分かると思うが、今後Python3.xに対応したJythonが出てきてもJyConsoleがバージョンアップするかは分からない。


2.起動方法
BINARY版を解凍し、WindowsであればJyConsole.batを実行する。その他のOSはJyConsole.shを選択すれば良い。

しかしこのままでは実行権限が無いので、下のコマンドを叩いておく。


chmod 744 JyConsole.sh(JyConsole.bat)
[-rwxr--r--]

5秒程度でJyConsole by Artenumが起動する。下の写真の様になれば大丈夫。


3.簡単なサンプルを書いてみる
swingを使った100*100のフレームを作成


>>> from javax.swing import *
>>> a = JFrame("Jython")
>>> a.setVisible(1)
>>> a.setSize(100,100)


4.JyConsoleはどのようなプログラムに用いるか
今回のサンプルを起動しただけでは、コンソールからJythonの対話的インタプリンタと何も変わらない。JyConsoleを用いた理由としてはプログラムに組み込めるというのが大きい。Javaプログラムを実行しながら値を変更出来たりするわけだ。

組み込み方法については別記事に書く事にする。