はじめに
Java meets Python。そして、Jythonが産まれました。この連載では、Java/PythonのDNAを備えたJythonを紹介します。Javaのアプリケーション開発に携わる皆さんの苦痛を和らげ、より快適なアジャイル開発への道標となるなら幸いです。
対象読者
こんな症状を抱えているなら……。
- Javaの開発効率の悪さにストレスが溜まる。
- 要求仕様の変更に柔軟かつ迅速に対処できない。
- 体力(単純な肉体労働)に自信がない。頭脳労働に専念したい。
- 既存の資産(Javaで構築されたレガシーシステム)は今後も運用したい。
どこかで見たようなサンプルプログラム
まず、添付されているプログラムを実行してみてください。左側のボタンを押すと、左から右へと転がる円とその軌跡がアニメーションを使って表現されます。どこかで見たようなJavaのアプリケーションです。と言いたいところですが、実はPythonで記述されています。つまり、Pythonを使ってSwingのアプリケーションを作成できるのです。
この連載で、Swingを採用した理由の一つは「百聞は一見にしかず」との言葉にあるように、OOP(Object Oriented Programming;オブジェクト指向プログラミング)を体感するのに、視覚的な効果を活用したいからです。もう一つの理由は、JavaBeansに準拠しているからです。Swingに限らずJavaBeansに準拠するなら、PythonにはないJythonに固有の支援機能を活用できます。
Jythonとの遭遇:お名前は?
まず、注意をしておきたいのはJythonを「ジェイソン」と読まないでくださいね。『13日の金曜日』シリーズに登場する主人公なら、Jason Voorheesですから…。
JythonはPythonのリファレンス実装の一つで、Javaで記述されています。Pythonは1991年にGuido van Rossumさんによって開発されました。PythonはC言語で記述され、Cとのコラボレーションが可能です。JythonはそのJava版で、C言語版をCPythonと呼ぶのに対してJPythonとも呼ばれていました。
Jythonとの遭遇:どこから来たの?
PythonにはないJythonの特徴の一つに、Javaとの融合が挙げられます。コマンドjythoncを使うと、Jythonのソースコードから.classファイルを生成できます。例えば、Pythonのソースファイル「B.py」から、Javaのソースファイル「B.java」に変換して、それをもとにJavaVM用のバイトコードを含む「B.class」を生成します。こうして、Java/Pythonの融合した世界が実現できます。
ここから先、Jythonはインストール済と仮定して話を進めます。最新情報は、公式サイトを参照してください。また、開発環境としてEclipse Pluginsが提供されているので、下記も参照してください。