ものがたり(旧)

atsushieno.hatenablog.com に続く

今日びのクロスプラットフォーム開発

コレを見て、GUIを全くいじらないど素人なりに考えてみる。gtksourceviewにD用のlangファイル作ればMonoDevelopNemerleプロジェクトみたいに比較的簡単に作れるんじゃないかとか思っているのは秘密です*1

C++で移植可能なコードって、実際にはどれほどのものなんですかね。フツーに考えたら、結局UIは別に作るわけですよね。互換性のある範囲でのGtkとかQtとか(Qt on Windows??)wxWidgetsでも使わない限り(それともネイティブX?)。で、結局UIの部分を別々に組むことになったら、Mono/.NETの移植性と何か違うのかなあ。Gtk#あるし、Wx.NETあるし。何使ったって、結局は制約をかかえてると思うんだよね…

ちなみにNovellのiFolder 3.0は、Linux版ではGtk#を、Windows版ではWindows Formsを使ってます。まあ、これはUIの部分は本体に比べればおもちゃなんで、IDEレベルのものを移植可能にしようと思ったら、それこそMDと#Dくらいの移植作業が必要になるだろうけど。

ああ、そういう意味ではSWTはあり得る選択肢なのか。SharpWTは放置されてるからC#は無理だと思うけど。

全然関係ないけど、gtksourceviewって、gnomeprint依存の部分を削ったら、フツーにWindows上でも動かせそうな気がする。gtksourceview-sharpも、gnome-sharpを参照しているのはどうやらgnomeprintの部分だけっぽいし。C#のエディタを作るの何かにも、使えるんじゃないかなあ(もちろんGtk#でやることになるわけですがw)。

*1:ていうかほとんど作ってることにならんしw