Python 弾丸ツアー/Java: JavaBeans 準拠 ... step 1: ウィンドウを表示する
Python.use(better); Python 弾丸ツアー /Java: JFC/Swing 編
>>> JavaBeans 準拠
step 1: ウィンドウを表示する
《Python3.1|Jython2.5|IronPython2.6》
《著》小粒ちゃん@湘南組《監修》小泉ひよ子とタマゴ倶楽部
第0版♪2001/03/02 ● 第1版♪2003/05/23 ● 第4版♪2010/03/08
step 1: ウィンドウを表示する
《課題》指定したタイトルを持つウィンドウを表示したい。
《テストケース》 ̄次のコマンドを実行すると、ウィンドウが現われます。ウィンドウを閉じると、アプリケーションが終了します。
$ javac Swing.java $ java Swing
 ̄まず、Java で記述したコードをコンパイル javac して、それを実行 java します。
$ jython swingFrame.py
■ Java
 ̄まず、Java で記述したコードを示します。
import javax.swing.JFrame; import java.awt.Dimension; public class Swing { private static void tips() { JFrame frame = new JFrame("JFC/Swing"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setPreferredSize(new Dimension(150, 50)); frame.pack(); frame.setVisible(true); } public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { tips(); } }); } }
■ Jython
 ̄次に、これと同等のコードを Jython で記述すると、次のようになります。
from javax.swing import JFrame from java.awt import Dimension def tips(): frame = JFrame("Swing") frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) frame.setPreferredSize(Dimension(150, 50)) frame.pack() frame.setVisible(True) tips()
 ̄これらを比較すると、Java と良く似ているものの、Jython ではより簡潔に表現できるのが分かります。それを象徴するのが、main が必要でないことです。また、クラスも必須ではありません。
□
《Point》単純にバイト数だけを比較すると、Jython では Java の約半分のコードで、同等の機能を実現できるのが分かります。
Java 535 1.92 1 Jython 279 1 0.52□
Java 449 1.86 1 Jython 241 1 0.54 Jython *228 0.95 0.51
↑TOP
》作業中です《