天使と悪魔選手権

MFCがかなり使われいることは知っているのですが、今は数々のオープンソース系GUIライブラリもありますし、スクリプト言語のバインディングもできていますよね。例えば私が触ったことのあるもので言うと、Gtk+、Qt、wxWidgets、Swing、Tk、WindowsFormsなどです。それぞれ英語ベースのコミュニティ・サイトみたいなものはあるのですが、日本での評判がどうなのかよくわかりません。

そこで、皆様の体験(どのライブラリをどの言語で使ったかなど)や使ってみて良かった点、悪かった点などをお聞かせください。

A 回答 (2件)

日本の場合、権威主義というか「無難な多数派」を選択することが多いので、


あえてオープンソースの(Windows用)GUIライブラリを選択するような開発はそうないのでしょう。

# MFCも一応GUIライブラリ的な性質は持ってますね。
# 透過的というか、きちんと閉じてない/完結してないので、
# Win32と組み合わせて使わないとまともに使えませんけど…。

GTKはGnomeが幅を利かせているLinux界隈では使われてます。
KDE派のところはQt使ってるでしょう。結局「無難な多数派」です。

wxは一時期ちょっと話題になった気はしますが
(ちょうど、Borland C++ Builder Xにバンドルされることになった頃?)
あまり定着しなかった印象です。(「無難な多数派」じゃないせいでしょうか…)

SwingというかJavaのGUI自体があまり人気がない気がしますが、
JavaでGUIを書くならやはり選択肢はSwingか、SWTあたりになるでしょう。
どちらになるかは、原理主義(Sun派)ならSwing、実利主義(IBM派)ならSWTなのか…?

私自身は、LinuxだとGTK+をメインに、Otをかじったり、MicroWindowsとかも使ったことが。
Windowsでは、Win32直叩きからMFC,OWL(Object Windows Library)、wx、WideStudioあたりはいじってます。
JavaはAppletとSWTはかじったことがありますが、
Swingはユーザとして嫌いなのでJavaの本で眺めたことがある程度(使ってみる気もおきず)
後は、PythonでTkとか。TkはPerlやRuby等からも使えるらしいので、
(PerlやRubyはあまり詳しくない)ぼちぼちなんじゃないでしょうか。
WTLなんてのもありますね。

極論、きちんと動いてメンテされてれば、どれでもいいんですけど。
マルチプラットフォームでコード書く身からすると、どれも微妙に痛し痒しというか…。
全ての環境である程度の互換性があって、でもOSのネイティブコントロールをちゃんと使ってて、
ライセンスがクリアで無償で使えて性能が出て…今のところ決定版には出会えてません。
結局各環境で無難な選択+ロジックからの切り出しという定番になってます。
# 仕事だと、説得が面倒なので標準バンドルものになるってだけかもしれませんが。
    • good
    • 0
この回答へのお礼

ありがとうございます。大変参考になりました。

私の場合、TkはTclから使っています。Linuxでの見栄えがもうちょっと良くなって(Gnome/KDEのスタイルを真似る+アンチエイリアス・フォントへの対応)くれればありがたいのですが…。

クロスプラットホーム性をあきらめれば(Monoとかがあるにはありますが…)、C#+Windows Formsも悪くないなと思っていたのですが、VistaとともにXMLベースのWPFが出てきてしまったので、これからじっくりWindows Formsを勉強しても無駄になるのではないかとちょっと悩んでいるところです。

お礼日時:2007/04/14 00:54

簡単な説明で厳密には違うけどMFCってGUIライブラリではなくて


Win32APIを直接叩かなくていいようにするためのクラス群です。
比較対象が違います。

MFCをGUIライブラリと言うことは
今風(?)に言うと.NET FrameworkをGUIライブラリといっている様な物です。
    • good
    • 0
この回答へのお礼

ご指摘ありがとうございます。

包括的に何と言ったらいいかよくわかりませんが、Win32API や X Window System のラッパーだとか独自の描画機能を使っているツールキットだとか、とにかくGUIプログラミングを作るためのクラス群としてお考えください。

お礼日時:2007/04/13 23:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!