新しいプログラムの開発を始めています。これは基本的にデータベースインターフェースであり、いくつかのクエリを実行し、データを適切な方法で表示し、新しいデータ(このWebサイトなど)を簡単に入力できます。
私が毎日使用するプログラムについて考えると、私のWebブラウザーだけがGUIプログラムであり、残りはTUI(この場合、TUIはncursesのようなテキストユーザーインターフェイス)であることがわかりました。そのため、私はこれをvim/muttのようなインターフェースでncursesで書くことを計画しています。このプログラムは経験豊富なユーザーのみが使用するものであり、速度は非常に求められています。
これに関する1つの研究を見つけました: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2655855/
私が見つけた他のすべての研究は初心者ユーザーのみを対象としており、GUIの方が優れています。プログラムで毎日作業する経験豊富なユーザーにとって、何が最適ですか?
これは厳密に似ていますが、この質問は非インタラクティブプログラムに関するものであるという違いがあります。
CLIアプリの開発は「逆向き」と見なされますか?
Text-UIがタブ指向のGUIとまったく違うとは思いません。表示技術をきれいな写真から醜い写真に変更するだけです(YMMV :-))。
ただし、GUIを上部に配置できるテキストベースのインターフェイスは優れたアイデアです。すべてのテキストベースのLinux構成ファイルについて考え、次にそれらをWebページとして表示できるWebminについて考えてください。必要に応じて、またはファイルの編集が簡単/高速である場合でも、ファイルを手動で編集できますが、簡単にアクセスできるWebビューの利点も得られます。
だから私は絶対にCLIを開発すると言っていますが、TUI ..いいえ、まったく意味がありません。最初にWeb UI、2番目にタッチアプリUI、3番目にシッククライアントGUIを使用する方がよいでしょう。
全然おかしいとは思わない。それはすべてあなたのターゲットオーディエンスが誰であるかに依存します。アプリを作成し、平均的なユーザーがそれを使用することを期待する場合は、おそらくGUIが適しています。
アプリが開発者向けである場合、特にCLIに慣れている場合。または、自分のワークステーションに座って毎日30を超える他のマシンにSSHで接続するシステム管理者をアプリがターゲットにしている場合、ツールはそれらのスイートスポットにぶつかるだけかもしれません。
私のすべての仕事で、ユーザーからのさまざまなデータ型をコマンドラインで非常に簡単に照会できるようにする「コンソールユーティリティ」モジュールがあり、ある種のメニュードライバーがありました。 2日で書けば、時間をかけて徐々に改善していきます。そのようなユーティリティは、開発ツールをすばやく起動するために他に何もなければ非常に役立つことがわかりました。新しい人にそれらの使い方を示すたびに、非GUIアプローチにこだわるでしょうが、最終的には、これらのツールは私が必要とするものを正確に達成し、非GUIアプローチは非常に軽量だったので、これらのツールを実際に導入して維持することができます。