特に差し迫った問題ではないのですが、
自分以外の人(初心者に入る人も含む)がつかうソフトの場合UIをGUIで作ったほうがいいのか
CUIで作ったほうがいいのか悩みます。
高機能なソフトは多くはGUIだと思うのですが、ちょっとしたソフトでもGUIで作るべきでしょうか・・・
CUIの「黒い画面に白文字は初心者にプレッシャーを与える」という話も聞きますが、
実際のところGUIはGUI部品の管理やUIインフラの面倒をみるコードが大半になってしまうので
ぶっちゃけるとGUIで作りたくはありません。
(ソフトの目的達成と関係ないコードが増える
さらに言えば、CUIであればプログラムが主導権を握るのでウィザードっぽくユーザを導ける)
しかし、現実にはプラウザ1つとってもふんだんにGUI部品をつかいわかりやすいUIを提供しています。
そこまで行かなくともある程度GUIでも作れるようになりたいのです
そこで、GUI/CUIの使い分けのポリシーや、
こうすれば少しはGUI開発もすこし楽になる!
こうすれば少しはCUIも初心者にとって怖くなくなる!
といった解決策はありますでしょうか?
(C#でもいいとは思うのですが、CやC++とのやりとりのはどうすればいいのでしょう)
GUIとCUIの取り扱いについて
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: GUIとCUIの取り扱いについて
使ってもらいた人で決めるのはひとつの手です。
プログラマーしか相手にしないのであれば、コマンドプロンプトで十分かもしれませんがプログラムしない人にCUIはかなり酷です。それだけで使ってもらえない可能性が高くなります。ただいつでもCUIで良いかというと大量の情報を整理して表示する場合はGUIの方が便利な面もあります。
>(C#でもいいとは思うのですが、CやC++とのやりとりのはどうすればいいのでしょう)
C#ではC/C+のコードはDLLに分離してC#でGUIだけを提供します。
>しかし、現実にはプラウザ1つとってもふんだんにGUI部品をつかいわかりやすいUIを提供しています。
>そこまで行かなくともある程度GUIでも作れるようになりたいのです
使う立場として便利なことは理解されているのですね?
GUIがすごく作るのは面倒だと言うのは確かですが、GTK+やQtなどのウィジットツールも検討されての結論でしょうか?
案外、WindowsAPIしか知らないからかも知れませんよ。
【補足】
>こうすれば少しはCUIも初心者にとって怖くなくなる!
これは黒い画面やテキストで構成されている時点で古臭く見えます。
cursesライブラリ等を使ってCUI/GUIを組んでもどうしても見劣りしますからね。
プログラマーしか相手にしないのであれば、コマンドプロンプトで十分かもしれませんがプログラムしない人にCUIはかなり酷です。それだけで使ってもらえない可能性が高くなります。ただいつでもCUIで良いかというと大量の情報を整理して表示する場合はGUIの方が便利な面もあります。
>(C#でもいいとは思うのですが、CやC++とのやりとりのはどうすればいいのでしょう)
C#ではC/C+のコードはDLLに分離してC#でGUIだけを提供します。
>しかし、現実にはプラウザ1つとってもふんだんにGUI部品をつかいわかりやすいUIを提供しています。
>そこまで行かなくともある程度GUIでも作れるようになりたいのです
使う立場として便利なことは理解されているのですね?
GUIがすごく作るのは面倒だと言うのは確かですが、GTK+やQtなどのウィジットツールも検討されての結論でしょうか?
案外、WindowsAPIしか知らないからかも知れませんよ。
【補足】
>こうすれば少しはCUIも初心者にとって怖くなくなる!
これは黒い画面やテキストで構成されている時点で古臭く見えます。
cursesライブラリ等を使ってCUI/GUIを組んでもどうしても見劣りしますからね。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: GUIとCUIの取り扱いについて
使う側にとっては全体としてはGUIの方が受けがいいとは思っています
>大量の情報を整理して表示する場合はGUIの方が便利な面もあります。
確かにそうですね。表示したいものが増えるとプログラマ向けでもGUIが便利がいいと思います
ネットワークの帯域幅とか、接続状況とか・・・・
C#とC++間ではDLLでやりとりするんですね・・・これは難しそうですが、勉強してみたいと思います
GTK+やQtも拝見させて頂きました。
UIの開発にもいろいろな手段があるのですね、とても勉強になりました。
色々手段がありそうなので試してみたいと思います!
ありがとうございました。
>大量の情報を整理して表示する場合はGUIの方が便利な面もあります。
確かにそうですね。表示したいものが増えるとプログラマ向けでもGUIが便利がいいと思います
ネットワークの帯域幅とか、接続状況とか・・・・
C#とC++間ではDLLでやりとりするんですね・・・これは難しそうですが、勉強してみたいと思います
GTK+やQtも拝見させて頂きました。
UIの開発にもいろいろな手段があるのですね、とても勉強になりました。
色々手段がありそうなので試してみたいと思います!
ありがとうございました。