このブログはプログラム開発や学習などの際に役立つ知識や情報を発信するエンジニアのためのトータル技術ブログです。
ご意見やご要望にも積極的に答えていきますので、お気軽にお問い合わせください。

記事へのリクエストはこちら

プログラミングと一緒に覚えたい技術はズバリCUI

CUI
スポンサーリンク
わんぽち
わんぽち

きつね先生!プログラミングを覚えてきたら次に何をすればいいですか?

きつね先生
きつね先生

意欲的ですね!コマンドライン(CUI)を勉強しておくと後の学習がとても楽になりますよ。

わんぽち
わんぽち

コマンド、、?↓↘️→+Pみたいなやつですか??

にゃんみ
にゃんみ

それストリートファイター2の波動拳のコマンドだにゃ。

きつね先生
きつね先生

はは、、コマンドラインというのは簡単に言うとWindowsやMacなどのOSをキーボード入力のみで操作することを言うんだよ。

わんぽち
わんぽち

よくわからないからもう少し詳しく説明してほしいわん、、

こんにちは!あっきーです!

本日はプログラミングと一緒に絶対に覚えておいた方がいいコマンドライン(CUI)について説明しようと思います。

実際にプログラミングの「プ」の字もわからず、初心者から独学で勉強を初めた僕が肌身で感じやっておけばよかったと後悔した自戒の念も込めてます。

なのでこれからプログラミングの学習を始める人たちがそんな後悔しないようにこれを機にぜひ取り組んでいただけたらと思います!

スポンサーリンク

CUIとGUIの違い

CUIはキャラクターユーザーインターフェースの略称です。
キーボードからコマンドを入力し、文字列として結果を出力する動作のことを指します。

GUIはグラフィカルユーザーインターフェースの略称です。
マウスやタッチパッドなどのデバイスを用いて、画面上で視覚的にアイコンをクリックしたりする動作のことを指します。

なんか難しく聞こえてしまったかもしれないですね、、、
要するに、いつもの Windows とか Mac OS のデスクトップでカチカチやることがGUIでコマンドプロンプトやターミナルの黒い画面でカタカタするあれがCUIです。

GUIではなくCUIを学ぼう!

CUIの操作をできなくてもなんとかなると思っていませんでしたか?

実はそれ、、、

まったくの勘違いです!

プログラミングを行う際に必ず使います。
環境構築やサーバー構築など用途はさまざまです。

最近では JavaScript などの人気のフロント言語も React.js などのフレームワークを使いサーバーと連携させたりします。
フロンド言語やサーバサイド言語は関係なく今後はプログラムをする人は必ず必要になるでしょう。

実は僕も割と最近React.jsでHello world!の出力で合計6時間くらいハマってました。笑

 

 

にゃんみ
にゃんみ

人にとやかく言える立場じゃないにゃん

 

このようにプログラミングは勉強する順序を間違えてしまうと習得の難易度が極端に上がってしまいあとで苦労することが多くなります。

GUIに慣れるとあとで困ること

GUIにばかり慣れてしまうと以下のようなデメリットがあります。

① 作業効率が悪くなる
② GUI操作に詳しくてもあまり意味がない
③ プログラムの連携が難しくなる
④ 処理の自動化ができない
⑤ 技術系の記事が読めない

順番に説明していきます。

① 作業効率が悪くなる

たとえばあるディレクトリで xxx から始まるファイルをすべて選択するという処理を行うとします。
10個くらいのファイルでしたらひとつずつクリックしてもそんなに大差はないかと思います。

ですが、もし50個、100個とあったとしたらどうですか?

黙ってそっと電源を落としたくなりますよね?

ですが、CUIでしたら

$ Is xxx*
Linuxベースで説明しています

これだけでOKです。
こっちの方が確認漏れのリスクも防げますし楽ですよね!

② GUI操作に詳しくてもあまり意味がない

GUIはあくまでパーツです。
GUI操作の裏ではCUIの処理が動いています。

これはあまり本質的ではないですし基礎知識を伸ばすという点においてはあまりおすすめではないです。

それにGUIの進化は早く慣れてもすぐにインターフェースが変わることは多々あります。
CUIの操作なら一度身につけてしまえば相当なことがなければ使えなくなるということはありません。

③ プログラムの連携が難しくなる

たとえば xxx というファイルから abc という文字列検索し、順番に並び替えるという処理で考えてみましょう。
GUIでやるとなると結構めんどくさくないですか?笑
GUIはプログラム間での連携が大変苦手です。

ですがCUIでしたら

$ grep "abc" xxx.txt | sort

これだけでOKです。

このようにCUIは小さなプログラムをパーツとしてとらえて組み合わせるのに非常に優れています。

④ 処理の自動化ができない

CUIは処理をファイルに書いて実行させることもできます。
コマンドを記入したファイルを再利用することで、定型的な繰り返しの作業を早く正確に実行することができます。

GUIで行うとするとその都度に手動で作業を行うことになります。
どんなにクリックが早い人でもCUIで自動化された操作には勝てないでしょう。

高○名人でもさすがにお手上げです。

⑤ 技術系の記事が読めない

CUIがわからないと、実は 技術系の記事が読めなくなります!

プログラマーはCUIでの操作を好む人がいっぱいです。
なので、技術的な記事も CUIがいっぱいです。特に Linux がいっぱいです。
記事を読んだ時に魔術書のような謎の言葉の羅列がでてきたらその時点で諦めてしまいますよね。

 

そうなると技術的な記事が読めない可能性がぐっと高まります。
それは同時に 技術の習得が遅くなる ことと同義だと思います。

さいごに

いろいろとずらずらと書きましたが、CUIでの操作についての重要性は少しでも伝わったでしょうか?

効率よく技術を習得していくためにもぜひ勉強してみてください!

スポンサーリンク
あっきー

元キャバクラ店長から未経験でエンジニアに転職した異端児。

「週4の5時間勤務、月収100万円」を実現させ、ゆるりと生きることを目標に日々パソコンと奮闘している。

自分の経験を元に、未経験からでも挫折しないプログラミングの勉強方法や最新技術や情報などを発信していきます。

あっきーをフォローする
CUILinuxMacWindows
\良い記事だったらシェアしてね!/
スポンサーリンク
駆け出しエンジニアのつぶやき