テキストエディタ+CUI > テキストエディタ+GUI | A Day In The Boy's Life

A Day In The Boy's Life

とあるエンジニアのとある1日のつぶやき。

エディタでWebサイト構築をガンバル人へ / @IT


何故にテキストエディタを使うのに、GUI中心のWindowsがベースとなるんであろうと思ったりはしますが・・・。

テキストエディタを使うなら、CUIで完結する方がはるかに使いやすいです。


確かに私も含めて未だにCUI中心のツールを使って開発や管理を行う人は多数いますが、何故にGUIツールではなく、テキストエディタのようなCUIツールを中心に使うかと言うと


・ 操作がキーボードだけで完結する

マウスを使う手間を省ける。キーボードは両手を使うため、マウスと言うデバイスを追加すると一旦操作が止まってしまう。


・ 機能が豊富に実装されている

CUIの難点を補うだけの豊富な機能が用意されています。例えば強力な置換機能であったり、1行丸ごと削除したりコピーしたり、文頭・文末にジャンプしたり。


・ 視覚に訴える機能もある

確かにCUIは文字だけのUIになりますが、その文字をうまく使ってグラフィカルに表示してくれるエディタやコマンドも存在します。もちろんそれらはGUIに比べれば貧弱ですが、そう不満があるわけでもなかったりします。


・ GUIツールは重い

まぁ、これはしょうがないかもしれませんが、Eclipseを立ち上げプログラムファイルを開くよりも、Viエディタでファイルを開く方が(例えTerminalからサーバーへログインするところからスタートしたとしても)早く作業に取り掛かることができます。


・ ツールに頼らない

特定のGUIツールを中心とした開発・管理を行っていた場合、それが無くては作業できません。CUIでも同じ事がいえるかもしれませんが、多くのUnix/LinuxのOSにはほぼ標準でそういったCUIツールはインストールされています。


一方で、GUIツールの良いところを挙げれば


・ 分かりやすい

視覚に訴えるので操作性は抜群です。


・ 補完機能が強力

GUIの開発ツールなどには関数補完やタグ補完の機能が実装されているものが多いため、作業を効率的に行えます。


・ 面倒なコマンドを覚える必要が無い

面倒なコマンドを覚える必要も無くボタン一つで実行できたりします。


・ 使い回しが楽

開発ではあるプログラムファイルの特定の部分を使いまわしたいとか言う場合に、マウスで操作して範囲指定した方が効率的です。


とか。


論点はGUIかCUIかと言うところではありませんが、テキストエディタの機能をフルに使いきるならGUIであるよりCUIであったほうがはるかに効率的に使えるというのは経験上感じています。

マウスでカリカリと変更箇所の行数まで移動・・・と言うよりは、コマンドでX行目に移動と実行(または検索して移動)してしまった方がはるかに早く対応できます。

エディタで操作する場合は、マウスを入り込ませると生産性が低下する場合があります。

Windowsはマウスが無いと始まりません。

であれば、WindowsではWindowsらしくGUIで操作するツールを利用した方が効率的ではないかと。


じゃあ、GUIよりCUIが勝っているのかと言うとやっぱりそうではなく、開発をするのにもテキストエディタを使ってしこしこ書くよりは、Eclipseなどの統合開発環境を通した方が効率性が高い場合がはるかに多くあります。

(一定の規模間を超えるとGUIツールの方が効率的に開発が行えると感じます)

現に、Emacsの開発者であるゴスリング氏自身も


「Emacsは消滅すべき」、ゴスリング氏 / @IT


と語っているところを見ると、時代はGUIを中心としたツールに移行しようとしています。


GUIの世界にはGUIのらしさがあり、CUIの世界にはCUIの世界のらしさがある。

その環境での最適なツールを選んで行った方がよく、これが便利というだけでの決め付けで使うと返って非効率を生む事になるかと思います。