CS COMMUNICATION

メディア

『IT初心者向け解説 第3回:CUIとGUI編』

  • LINEで送る
  • このエントリーをはてなブックマークに追加

CUIとGUIを良く知る

こんにちは、ロニーです。
勝手にアウトプット第3回は、「CUIとGUIを良く知る」です。


コンピュータ機器を操作するインターフェイス、すなわち入出力画面には、
「CUI」と「GUI」があります。

一般的なWindowsやMacOSなどではデフォルトでGUIが搭載・有効になっているため、
CUIに触れることは少ないです。

IT業界で業務に就くと早々に触れるCUIですが、
初めてだと怖い印象を持ちがちです。


そもそもなぜ恐怖心を感じるのでしょうか?

これはCUIに限った話ではないですが、
人が何かを怖いと感じる原因は、
大体が、「よく知らないから」、です。

ことわざで言えば「幽霊の、正体見たり、枯れ尾花」ですかね。
ちょっと違うかな?

実際は大したことではなくても、自分が知らないものからは
何が飛び出すか分からないし、先が読めません。
人が、外国人や別の宗教を信じている人に警戒心を抱くのも似たようなものです。
人が新しい環境や未来に対して不安を抱くのも同じです。


逆に言えば、対象、相手のことを知れば知るほど怖さは薄れていくものです。

CUIが何なのか、
CUIで何が出来るのか、
CUIの注意点、
そこを抑えておけば、怖いと思うこともないでしょう。



まずは簡単に名前の意味から。

CUIは「Character User Interface」の略です。
文字によるユーザインターフェイス、ですね。

GUIは「Graphical User Interface」の略です。
グラフィカル、つまりビジュアルによるユーザインターフェイスですね。

CUIは文字で入出力操作する方式、
GUIはビジュアルで入出力操作する方式、と言い換えられます。

ちなみにCUIと同じ意味で、CLI、「Command Line Interface」も使われます。
コマンドラインによるインターフェイスですね。
英語圏ではCLIの方が一般的に使われるようです。
CUIと同じと考えてよいでしょう。

 ※ユーザーインターフェイスは「UI」とも呼ばれ、直訳すると「使い手との接点」となります。
  IT用語としては要するに操作時の画面や見た目、使い勝手の事を意味します。
  今回は「操作(入出力)画面」としてご理解下さい。
  時に配色センスが悪かったり、どこに何の情報を入力するのかわかりにくいような操作画面に対して、
  「このUIはビミョウだね・・・」と、言うことがあります。

CUIもGUIも、
コンピュータ機器を操作する入出力画面の方式の違いでしかなく、
基本的には同じようにコンピュータ機器を操作できます。
操作する対象はCUIもGUIもそのコンピュータ機器自身です。

もちろんそれぞれに特徴があるので完全に同じ操作が出来るわけではないのですが、
基本的には一緒です。

例えて言えば、そうですね、
食事を箸で食べるか、ナイフとフォークで食べるか、の違いみたいなものです。
使う道具は違うけれど、対象は同じ「ご飯」ですし、
「ご飯を食べる」という目的も同じように達成されます。


俺は箸しか使わねーぜ! でも別に結構ですが、
ナイフとフォークも使えたほうが世界は広がりますし、なんかカッコイイですよね。

せっかくなのでCUIも使いこなせるようになってみましょう!

CUIの特徴

CUIは、「文字によるユーザインターフェイス」の言葉が指すように、
文字(と記号)によってコンピュータを操作します。
なので、基本的にはマウスは使えないか、使いません。

マウスやタッチパッドの代わりに、
キーボードで「コマンド」と呼ばれる操作命令を出して操作します。

CUIの操作画面のことを「コマンドライン」や「コマンドプロンプト」と呼ぶのは、
コマンドによって操作するからですね。

↑Windowsのコマンドプロンプト画面

コマンドってなんじゃ、となるわけですが、
コマンドとは、コンピュータ機器の操作命令です。


コマンドも、その正体は小さなプログラムです。

例を挙げてみましょう。
Windowsに、コマンドプロンプトで使える「copy」というコマンドがあります。
「copy a b 」というコマンドを指示すると、aをコピーしてbという名前で保存できます。

これは内部ではcopyという名前の実行ファイルにaとbを引数として与えてプログラムを走らせ、
複製したaをbという名前で返す処理をしていることになります。


このcopyというコマンドを知らないと、ファイルのコピーができません。
なのでコマンドを覚える、というのがCUIを使うための最初の課題になりますね。

その点、GUIであればコマンド名や使い方を覚えていなくても、
直観的に扱えるので利用のハードルが低いです。

GUIを再確認

さて、簡単にCUIの特徴を話したので今度は使い慣れているであろうGUIの話をします。


GUIでは見た目の動きがそのまま結果に繋がるので
我々human beingにはシンプルに感じますが、
実際はGUIの方が複雑な処理をしています。


ファイルaをアイコン付きの画像と文字で表示し、ファイルのアイコンとファイル名を表示しているその座標範囲内で右クリックの命令を受けたらそのファイルに対して実施可能なコマンドを一覧として提示する。
提示した画像の中のコピーの部分にある座標上でクリック命令を受けたら対象のファイルを複製してクリップボードに一事保存します。
貼り付けたい場所を表示させて、その座標上でまた右クリックして…


このように処理を記述するだけでも大変なのですが、
マウスのカーソルを動かす、フォルダを開く、クリックをする、
というこの動作一つ一つが内部ではコマンド実行されているのです。

このGUIを表示上のバグが出ないようになるまで開発するには、
気の遠くなるほどの開発期間を要したことが想像できますね。

プロコンを知って使い分ける

CUIとGUIはそれぞれに便利な点と不便な点があります。

良い点と悪い点を英語でPros and Consと言います。よくプロコンと略されます。
CUIとGUIのプロコンを見てみましょう。


CUI:
 Pros:正規表現が使えるので一斉操作、バッチ処理がしやすい。慣れると早く操作できる。
 Cons:コマンドを覚える必要があるため初心者に不向き。ファイルの位置などを記憶しておくのが大変。

GUI:
 Pros:直観的に操作が出来るためマニュアルなしでも操作イメージがわく。描画などの操作ができる。
 Cons:内部の仕組みが分かりにくい。熟達者にとっては操作に時間がかかるため面倒に感じる。あらゆるオブジェクトが画像として用意されるので必要となるディスクやメモリの容量が大きい。


それぞれに良し悪しがあるのが分かりますね。
CUI・GUIそれぞれに特徴があるので、両方とも使えればそれぞれのメリットを享受できるわけです。


CUIベースであるUnix系OSでもX WindowシステムといってGUIを起動させられたり、
GUIでもCUIのように素早く操作できるようにショートカットキーが用意されたりと、
お互いのConsを補うようになってきてるのが面白いですね。

CUI・GUIのまとめ!!

CUIを使いこなせるようになると、エンジニアっぽくてカッコいいですよね!
実際に我々のITインフラの現場仕事で使われる事も多々あるので、
最低限の理解はしておいた方がいいでしょう。

一方でGUIがどのように実装されているのかを深掘りするのもまた面白そうです。
ITは奥が深い。

今回はここまで!

また次回も一緒にITを学んでいきましょう!

  • LINEで送る
  • このエントリーをはてなブックマークに追加