IronPythonメモ

written by SOU1 on

IronPythonを使ったり調べたりした事をとりあえず雑多にメモっておきます。
自分或いはIronPythonを始めようとする人の指針になればと思います。

・思いの他何でも出来る
割と何でも出来ます。C#.NETで出来ている事ならある程度はサクサクとIronPythonに移植出来る事でしょう。

・古い様式のAPIには弱い
.NETクラスライブラリではないWin32APIを直接扱えません。ぶっちゃけkernel32.dllなんかもデフォじゃ扱えないデス。
基本的な機能は.NET側で吸収されてるので割と問題無いかと思いきや、「DestroyIconはWin32APIでやっといて」とか無茶な事をMSDNに平然と書いてあるので注意が必要です。
統合アーカイバとか扱いたくなるかもしれないし、ctypesを是非使わせて頂きましょう。極めてシームレスにWin32APIが利用出来るようになります。

・GUIアプリ作るならFormsとWPF(Avalon)と両方使える
ただしWindows.FormsはただのWin32APIラッパだとか何とかで、せいぜいGDI+がゴリゴリ使えるくらいです。
せっかくの.NET環境ですから、思い切ってPresentationFrameworkしちゃっても良いんじゃないでしょうか。
XAMLでアプリデザインとか出来ますヨ。

・3Dゲームやるならとりあえずmanaged DirectXかXNA
どう考えても後者じゃないかと思います。前者は正直OpenGL直程度に面倒としか思えない。
ただし情報がWPF以上に欠乏しているので極めてやりにくいと思います。多分来年あたりには解消されてるだろうけど。

COMを直接叩けない
WPFやSilverlight及びXNAなんかの話とひっくるめて「IronPythonもまだ過渡期だ」という結論しか出せません。
少なくともIronPython2.0で直接叩けるようになります。ただし必要性については懐疑的です。
自分としてもWinEFでWindowsシェルの名前空間解決くらいにしか使っていませんし……。

・pyc.pyでコンパイルする際ソースに指定しなかったファイルは起動時に動的コンパイルされる
これ日本語で解説してる方現在おられますか?・д・
自分で試してみて驚きましたよ。つまり.NETアセンブラとスクリプトを混在させて起動出来るという事ですね。
もう設定ファイルとかもxmlだけじゃなくてpyでもいいんじゃないかとか危険な発想が。

・別にオブジェクティブコーディングしなくても割と動く
これはきっとIronPythonの話ではなくてSOU1さんの技量と脳みそのおはなしだ。本当にありがとうございました。・д;

簡単なメモ帳とipy.exe及び各種DLLだけで環境の揃う.NETプログラミング。もう超オススメ。
これでYaneSDK.NETみたいなラッパさんが増えてくるともっと簡単スクリプト言語って感じがしてくると思う。
ていうかYaneSDK.NET叩こうとしたらどうしてもしくじりました。いずれ見事に叩いてみたいけどXNAのほうがカコイイかも?
対話型シェルでBASS.dll叩いてogg再生とかマジ笑える これはすごい.NET

どうでもいいけどWinEFはWPFに書き直してXAMLでGUIを書くようになりました・д・
XAMLはexeにリソース埋め込みされたりしないので各自勝手にGUIを変更出来るんじゃないかな。すげーなAvalon


Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

Author
シスアド業でサラリーマンの傍ら作曲等を行うマルチタスクの申し子。
人当たりの良さと見た目の恐さだけを武器に各業界を渡り歩く若年性健忘症の人。鵜呑みにしたらダメヨ
Categories