主にプログラミングに関して。Python, .NET Framework(C#), JavaScript, その他いくらか。
記事にあるサンプルやコードは要検証。使用に際しては責任を負いかねます

スポンサーサイト

                
tags:
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

IronPython入門 GTKでもQtでもなく、WPFを使ったGUIアプリ

                
Pythonの舌先はWindowsにも伸びている

12100701.png


 IronPythonを使うと、容易にWindowsをターゲットとしたGUIアプリを作れる。IronPythonはそもそも実行時に一行ずつコンパイルするスクリプト言語だが、事前コンパイルで実行形式ファイルにして、容易に配布することができる。ドキュメントはMSDNで結構な量が日本語で用意されているので、原文の理解が難しいときに助けになってくれる。IronPythonでつくったアプリは、クライアントに.NET Frameworkがインストールされていれば実行できる。Windows 8では最初から.NET Framework 4.5がインストールされているので、ランタイムライブラリの心配をする必要がない。

 PythonでGUIアプリを作ろうとすると、オープンソースの集合なためか、色々なツールを選んでインストールしなければならない。GTKやQtなどのGUIツールと、実行形式ファイルのビルドのためのPythonモジュールなど。ドキュメントは日本語になっていないものが多く、デバッグになかなか苦労させられた。複雑なのだ。そしてクライアントの環境には、VC++が動くランタイムがインストールされている必要がある。Pythonでアプリを作って実行形式ファイルで配布しようというのは敷居が高い。

 IronPythonでGUIアプリを作るために、WPFを選んだとする。WPFはGTKやQtのようなGUI構築用のライブラリだ。これを実行形式ファイルにするまでには? SharpDevelopという統合開発環境を入れていれば、
1.SharpDevelop上で新しくプロジェクトを作って
2.スクリプトとUIを書く(デザインツールも入っている)
3.VisualStudioを使っているときと同様に、『ビルド』コマンドを開始する
という手順だけで済む。インストールするのはIronPython, SharpDevelop, .NETFrameworkのランタイムライブライぐらいだろうか。とても簡素だ。

 WPFでアプリを構築するなら、C#があると言われる。それは一つの選択肢でしかない。GNOMEの創始者は言っている。
"Cでプログラミングするには人生は短すぎる"

 @ITの記事(参照:http://www.atmarkit.co.jp/fdotnet/special/ironpython01/ironpython01_01.html)では、IronPythonがスクリプト言語であるために、ユーザが煩わしいコンパイル作業から解放されると謳っている。PowerShellよりも高機能で、C#/VB+.NET Frameworkを使うよりも手軽な開発が行えると。そこからPowerShellとC#/VBの中間に位置すると書かれている。この記事は古いのだと思う。.NET Frameworkは開発にIronPythonが使えるようになっている。IronPythonだってコンパイルをして実行形式ファイルにすることもできる。開発において、IronPythonはC#の横にすでに来ており、プログラムのパフォーマンスを重視するか、開発のスピードを重視するかという視点でC#とIronPythonを分けるべきだろう。


 IronPythonでのGUIアプリを作ってみたくなったら、IronPythonSharpDevelopをインストールして以下へ。
IronPythonでHelloWorldのGUIバージョン

作ったアプリの配布用インストーラを作りたくなったら以下へ。
Windowsインストーラを作成する
            

コメントの投稿

非公開コメント

プロフィール

hMatoba

Author:hMatoba
Github

最新記事
リンク
作ったものなど
月別アーカイブ
カテゴリ
タグリスト

検索フォーム
Amazon
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。