キャラクタ
ユーザインタフェース(CUI)は、キーボードから入力された
文字列を基に、画面やプリンターに文字情報を出力する
ユーザインタフェースの一種です。コマンドラインインタフェース(CLI)とも呼ばれ、主にGUI(
グラフィカル[[ユーザインタフェース]])の対義語として用いられます。初期の
コンピュータでは主流でしたが、GUIの普及に伴い、一般ユーザーの利用頻度は減少しました。しかし、現在でもネットワーク機器やOSで重要な役割を果たしています。
CUIの特徴
初期の
コンピュータでは、CUIが対話環境の主流でした。しかし、GUI搭載のパソコンが普及すると、CUIの利用は専門家以外では減少しました。
多くのネットワーク機器は、
TelnetやSSHでCUI環境を提供しています。また、PCや
サーバー向けのOSにも、GUI環境に加え、コマンドラインターミナルなどのCUI環境が標準搭載されています。ただし、
スマートフォンなどのモバイル端末向けOSでは、CUIが標準で提供されていないことが多いです。
CUIを採用したアプリケーションは「
コンソールアプリケーション」と呼ばれます。また、テキストコンソールを利用してウィンドウなどを表現するインタフェースは、
テキスト[[ユーザインタフェース]](TUI)と呼ばれます。
以下では、CUIだけでなく、コマンドラインインタプリタや
シェルについても解説します。
CUIの長所
CUIには以下のような長所があります。
一括処理: GUIでは困難な、大量のファイルをまとめて処理できる。コマンドとファイル名のパターンを記述することで、複雑な処理を自動化できる。
自動化: バッチ処理が容易。一連のコマンドをファイルに保存し、繰り返し実行・修正できる。
開発の容易性: プログラム作成時、ユーザー入力処理部分を簡単に作成できる。GUIに比べて、内部状態の管理が容易。
移植性: 標準入出力のみを使用するコンソールプログラムは、異なるOSへの移植が容易。標準入出力は多くの言語で標準ライブラリとして提供されているため、入門やテストにも適している。
柔軟な入出力: プログラムの出力を別のプログラムに直接入力(パイプ)したり、ファイルに保存したりできる。
リモート操作: リモートログイン時、専用
ソフトウェアが不要なことが多い。また、画像転送が不要なため、低速回線でもリモート操作が可能。
効率的な操作: オートコンプリートや履歴機能により、コマンド入力の手間を削減できる。キーボード操作に慣れたユーザーは、より迅速に作業が可能。
記録性: 直前の操作確認や、操作履歴の保存・共有が容易。
柔軟な入出力: 入力元や出力先の切り替え(リダイレクト)が容易。
先行入力: GUIのように、ボタンが表示されるまで待つ必要がなく、先行入力が可能。
低リソース: GUIに比べて必要なリソースが少ない。
CUIの短所
一方で、CUIには以下のような短所があります。
英語ベース: コマンドや応答は
英語が基本のため、
英語を母語としないユーザーには使いづらい。
学習コスト: 直感的な操作が難しく、基本的なコマンドを覚える必要がある。各プログラムのパラメータも必要に応じて調べる必要がある。
視覚的表現の限界: 人間の視覚的な能力を十分に活用できない。選択肢やヘルプの表示にも限界がある。
画像操作の不向き: 画像や図形の操作・編集には不向き。
操作の一貫性の欠如: 同じ目的のプログラムでも、操作方法が異なる場合がある。
関連事項
インタラクティブフィクション
端末エミュレータ
MS-DOS
テキスト[[ユーザインタフェース]]