CUIとGUIの違い・特徴について解説します|CUIとは|GUIとは
GUIとCUIについて調べる人
「GUIとCUIって何のことでしょうか?WindowsでもMacでもスマホでもグラフィックがあるのが当たり前。CUIって昔のパソコン画面のことでしょうか?いまだに使われていますか?」
こんな疑問を解決します。
ざっくり理解
- CUI 文字だけシンプル古臭い キーボードで操作
- GUI 画像ありデザインあり マウス・キーボードで操作
本記事の内容
この記事を書いている私はIT業界歴12年、年収1,000万円ちょっとの金融系ITエンジニアです。
業務ではWordやExcelなどGUIを前提とするアプリケーションを使いつつ、プログラムの開発やログ調査、サーバメンテナンスではCUIも扱っています。
業務経験から、GUIとCUIの特徴の違いや実務上の使い分けなどを解説したいと思います。何でCUIなんてまだあるの?といった疑問を感じている方の参考になりますと幸いです。
GUIとは
GUI(Graphical User Interface)とは、グラフィカルなデザインを用いたパソコン操作画面のことです。
WindowsやMac、スマホもこれに該当します。直感的にわかりやすく、人間がコンピュータを操作する上で非常に便利です。
GUIの例
CUIとは
CUI(Character User Interface)とは、画像やアイコンが無く、無い文字だけでコンピュータを操作する画面のことです。直感的とは言い難いですが、操作性が非常にシンプルなのが特徴です。
その歴史は古く、初期のコンピュータはCUIしかありませんでした。「コマンドライン」と呼ばれる、入力待ちの行にコマンドを打ち込んでコンピュータを操作します。
今では誰しもがGUIの使いやすさに慣れているため、利用機会ははるかに少なくなっています。しかし、CUIは、エンジニアを始めとする高度なユーザにとって、オペレーティングシステムの機能をより包括的に制御できるため、依然としてGUIよりも優れています。
CUIの例
電光掲示板はCUI?
CUIっぽいものに電光掲示板があります。あれはCUIでしょうか?
電光掲示板はCUIっぽい見た目ですがCUIではありません。
掲示板やポスターは一方的に情報を流すだけで、こちらから情報を入力することができません。
このように、情報のやりとりが一方通行の媒体は、そもそもインターフェースではないので、CUIでもGUIでもないのです。
GUIとCUIの違い
一見するとGUIの方が使い勝手が良さそうですが、未だにCUIが使われている理由を解説します。簡単にポイントをまとめます。
- GUIは誰にでも使いやすい
- CUIはエンジニアが使うとメリットがある
開発系のITエンジニアにとってはCUIが基本
ITエンジニアはコンピュータのプロですから、直感的で誰でも使いやすい事よりも仕事の生産性が高いか、安定性が高いかといった観点の方が重要です。
GUIはグラフィカルな分だけ機能が複雑で、デザインも含めて開発しなくてはならないので大変です。一方でCUIはシンプルな分だけ開発量もおさえられ、動作も安定します。
CUIで実現可能な機能はCUIで済ませた方が良いのです。作った機能をエンジニア以外の人にも使って欲しいとか、テキストだけではわかりにくい時にGUIでの開発を行います。
サーバ保守を行うITエンジニアにとってもCUIが基本
サーバのログを解析したり、操作を行うITエンジニアにとってもCUIでの操作が基本です。ただし保守担当者にとっては、わかりやすさも重要。
ですから今までCUIベースだった操作をWEB化するなど、GUIで操作する事が多くなってきています。
使い分けが重要ですね。
GUIとCUIの特徴の違い
開発者目線でGUIとCUIの違いを整理します。
インターフェース | 直感的なわかりやすさ | 自動化のしやすさ | 開発の容易さ | |
GUI | ◯ | × | × | |
CUI | × | ◯ | ◯ | |
こうした特徴の違いから、顧客の操作する画面などGUIが必要な機能の開発を行うエンジニアをフロントエンジニア
、画面開発が不要で主にCUIで機能を提供するエンジニアをバックエンジニア
と呼びます。
CUIをマスターするには?
CUIをマスターするならLinuxを使いましょう
UnixやLinux、古くはメインフレーム(ホストコンピュータ)やMS-DOSなど様々なCUIベースのOSがありますが、現在ではCUI操作ならほぼLinux一択と思ってOKです。
Linuxの操作方法(コマンド)はLinux OS以外でも広く用いられており、MacやWindows、Chromium OSなどほとんどのOSでLinux系のコマンドを使う事ができます。ですから、現在ではLinux=CUIくらいに思っておいても問題ないです。
GUIからCUIに接続して操作するのが一般的
現代ではCUIだけのコンピュータを直接扱う機会は少ないでしょう。多くの場合はWindowsやMacなどのパソコンからCUIベースのLinuxにリモート接続して使います。
サーバやネットワーク機器のメンテナンスを行うエンジニアであれば、サーバに直接ノートパソコンを接続して、Linuxに接続することもあります。
今回は以上です。GUIとCUIについて解説してみました。CUIは古くからありますがシンプルで今後も将来性が高いインターフェースで、GUIはCUIをラッピングしてグラフィカルに見せているにすぎません。
もしコンピュータについて学習している方、またはエンジニアを目指している方であれば、LinuxなどでCUIを操作してみることをお勧めします。将来にわたって役に立つと思います。
LinuxとWindowsの違い・特徴について比較します
LinuxとWindowsの特徴を比較
LinuxのWindowsとは違うところ
LinuxでもWindowsでもできること
Windows上でLinuxを動かす
Linux上でWindowsを動かす
UNIXとLINUXの違い、正しく説明できますか?
「UNIXとLINUXって似たような用語ですが、何が違うのでしょうか?それぞれ、どのような特徴があるのですか?比較しながら、わかりやすく簡潔に解説して欲しいです。」→こんな疑問に答えます。
CUIは現在進行形で進化している話
IBMは、CUIに音声入力を組み合わせる取り組みをしています。
IBMがコマンドラインインターフェイス(CLI)にAIを組み込み、使いやすくしようとしている。
ターミナルの黒い画面に慣れている方も、たまに使うコマンドやオプションをいちいち「man」や「help」で調べるのにわずらわしさを感じるだろう。
IBMによるオープンソースプロジェクト「CLAI(コマンドラインAI)」では、こういったわずらわしさを解消する機能(スキル)を提供してくれているほか、自身の要望を取り入れたAIの開発もできるようだ。・自然言語を入力すると対応コマンドを生成
CLAIのsense-act APIを介してコマンドラインにアクセスすると、デフォルトでいくつかのスキルが利用できるようになっている。最もAIっぽい「Natural Language to Command(nlc2cmd)」スキルでは、自然言語(英語)をコマンドラインに記述するだけで、対応するコマンドに変換してくれるようだ。例えば、「 compressing of archives using the “tar” command(tarコマンドを使用してアーカイブを圧縮する)」などと打ち込むと、オプション含めて目的を達成するためのコマンドが生成される。
おわりに
今回は以上です。参考になりましたら幸いです。
Blog TOP Linuxコマンドを勉強したい人向け|Linuxの使い方 記事まとめ
Linux&Linuxコマンドを勉強したい人向けの記事もくじ
用語解説・技術一般
"UNIXとLINUX"の違いについて解説します
CUIとGUIの違い・特徴について解説します
サーバリソースを確認するコマンドの使い方
【Linux】CPU使用率を確認する3つの方法を解説します
【Linux】topコマンドで,CPU消費の原因を特定する方法
【Linux】ps実行時に-efオプションを付ける理由について
【Linux】メモリ使用率を確認する|容量・空きの確認も
【Linux】ディスク容量を確認する|ディスク容量監視も
ファイル操作に関するコマンドの使い方
【Linux】ファイルの行数をカウントする方法を解説
【Linux】文字コード変換ならiconvコマンド1択です
【Linux】/dev/nullを、エンジニアが使う2つの目的
【Linux】findのexecオプションの使い方とその注意点
【Linux】findの結果から圧縮ファイルを作るコマンド
【Linux】hostsの場所はどこ?→/etc/hostsにあります
【Linux】touchコマンドで,時刻更新&空ファイル作成
Linux管理者用コマンドの使い方
【Linux】再起動コマンド(shutdown)の使い方と注意点
よく使う便利なコマンドの使い方
【Linux】改行なしでechoコマンドを使う時の -nオプション
【Linux】sleepコマンドの使用例と注意点について解説する
【Linux】rmコマンドでディレクトリを削除する方法を解説
【Linux】ファイルを削除するコマンド2選【rm以外もあり】
【Linux】awkの区切り文字を指定する,-Fオプションを解説
【Linux】sedで文字列の置換をするeオプションを解説する
【Linux】dateコマンドのフォーマットとその便利な使い方
【Linux】大文字から小文字に変換する方法【小文字から大文字も】
シェルの便利機能
今、IT業界の転職市場は前例のない売り手市場です
現在のIT業界の求人数と求人倍率をご存知ですか?
直近(※)の求人倍率は7.85倍です。
つまり 企業が8回IT人材の求人を出しても、1人しかエントリーがない状況です。
IT業界で働くなら、今がチャンスです。
※転職サイトdodaが毎月発表している転職求人倍率:
2019年12月9日発表/集計対象期間は2019年11月1日〜30日詳しくはこちら
「今の会社を辞めて転職します。エンジニア職に強みのあるおすすめの転職サイト・転職エージェントを教えて欲しい。また好条件で転職するにはどうすれば良いですか?」こんな悩みに答えます。 ITエンジニアに強いおすすめの転職サイト・転職エージェント3選 転職成功には強くてニューゲームが条件。どうやって実現する?