まずはこの記事をご覧ください
↓
簡単にまとめるとこんな感じ
※ザックリと切り取ってるで、ニュアンスは必ず上記記事を読んでね
- 勉強ではなく、打ち込んで動かすのが楽しかった
- 効率的な方法なんて知らない、ただ「楽しい」がプログラミングを身につける上で大切
- プログラミングは知識で出来るようになるものではなく、経験で出来るようになるものだ
- どうすれば動くのか、何を変えれば動かないのか、壊れることを恐れずに、いくらでも動かして試そう
- 少し覚えたら、少し動かそう
- ターミナル(いわゆる「黒い画面」)で動くコマンドラインのプログラムから始めれば、プログラム全体を把握して動かすことができる
- ターミナルファイルやディレクトリの考え方を学んで、ファイル操作のいくつかのコマンドを練習して身につける
- コマンドラインのプログラムでも十分に、プログラミングで大事なことは学べる。むしろ、本質だけにフォーカスできる
- 大事な本質や哲学を学ばずに職業プログラマになってしまっている人も多いのではないか
僕はこの記事と完全に全く同感です
特に、ターミナル(いわゆる「黒い画面」)で動くコマンドラインのプログラムから始めようという部分は特に共感です
とは言っても、最近は簡単に楽しくプログラミングを学べる環境が揃ってるので以前ほど黒い画面に拘りはないけどね
なので、初心者の方に対して「黒い画面から始めればいいよ」とは今はあまり強くは言わないけどね
でも、黒い画面が一番シンプルで理解しやすいと信じてるよ
変に開発環境を揃えることの方がメンドクサくてその後の理解も遅いと感じてるかな
というわけで、「いわゆる黒い画面」でプログラミングを始める方法を説明します!
WindowsユーザーもMac/Linuxユーザーも考え方は全く同じです(使うコマンドは少し違うけど)
- 「いわゆる黒い画面」でのプログラミングに興味のある方、
- これからプログラミングを始めようと考えている方、
- 開発環境の構築が難しすぎて挫折している方、
ぜひお読みください!
ぜひこちらもご覧ください
Contents
どっちも同じような意味ですので、このエントリでは「フォルダ」で通します
.exe
という拡張子を付けていますが、これはWindowsの場合のみですMacではこのような拡張子は付きません
黒い画面ってどこにあるの?
黒い画面は既にWindows/Macに入ってますよ~
何かをインストールしなきゃいけないってことは無いです!
Windowsの場合
Windowsでは黒い画面のことをコマンドプロンプトとか、DOSプロンプトって呼ぶんだよ
DOS画面と言うこともあるね
DOSはドスと読みます
コマンドプロンプトの出し方は4つ
どの方法でも同じなので、お好きな方法でどうぞ~
- スタートメニュー → すべてのプログラム → アクセサリ → コマンドプロンプト
- Windowsキー+R →
cmd
と入力+Enter - スタートメニュー →
cmd
と入力+Enter(cmd
と打った時点でcmd.exeが表示されるのでそれをクリックでもOK) - エクスプローラーのアドレスバーで
cmd
と入力+Enter
Macの場合
Macでは黒い画面のことをターミナルって呼びます
Linuxでもターミナルって呼ぶけど、端末と呼ぶこともあるよ
ターミナルの出し方は3つ
- Spotlightで
ターミナル
orterminal.app
と入力 - Dockのアプリのところから起動
- Launchpad → その他 → ターミナル
どうやって使うの?
黒い画面を使ってプログラミングを始めるには、以下の3つが必要
- 黒い画面(コマンドプロンプト or ターミナル)
- コンパイラ or インタプリタ
- テキストエディタ
※環境変数の設定も必要になるけど、今回は省略します
わずか3つでっせ!!
プラグインなんて要らんでぇ~!!!
これよりシンプルな開発環境は無い!!!
黒い画面はOSに必ず入ってるので全く気にする必要はないよね
ただ使い方はちょっとだけ覚えないと駄目かな
でもそんなに難しくないよ
むしろ簡単!!!
コンパイラもしくはインタプリタについては、どのプログラム言語の開発環境であっても必要なものです
テキストエディタは何でもいいです
好きなのを使ってね
高機能多機能である必要は全く無い!
物足りなくなってから高機能なものを探せばいいじゃないのかな
で、こんな風にコマンドを打ちます
コマンドと言っても、この程度でっせ
> ruby hoge.rb
> python hoge.py
> gcc -o hoge hoge.c > hoge > ./hoge
> javac hoge.java > java hoge
コンパイルと実行に関してはエディタや開発環境の上からできれば確かにラクチンだし便利だと思う
でもそれは黒い画面での作業に慣れてからでもいいんじゃないのかな
コマンドを打つの難しそうに見えるかもしれないけど、
その代わり、今自分が何をしているのか・何のためにその作業をしているのか、がとても分かりやすいよ
最初から統合開発環境やエディタのプラグインとかに頼ってしまうと、結局何をしてるのかが分からなくなってしまう
「何をしてるのかが分からない」ってのがプログラミング学習を挫折させる原因の一つになってるんです
統合開発環境使っても理解できる人は理解できるからいいんだけど、理解できない人は理解できなかったりする
統合開発環境が何やってるかわからないままだと、新しい環境に移行するときにまたイチからの環境構築に苦労するだけ
また誰かの支援が無いと環境構築できないということになっちゃうよ
AtomやVisual Studio Codeで開発環境の構築に手こずってる人は、黒い画面を使った場合の基本が理解できていないように思う
今、自分は何のために何をどうしたくて何を使っているのか、これが分かるというのはものすごく大切なんだよぉ~!!!!
これだけは覚えておこう!
ディレクトリとかフォルダ階層の概念
普通、パソコンの中をエクスプローラー(Windows)とかFinder(Mac)とかで見ると、こんな感じになってるよね?
そう、フォルダとファイルだけ
これは、コマンドプロンプトでも同じ!
グラフィカルに見えないだけで、全く同じ
GUIで「フォルダを開く」っていうことは、
黒い画面だと「フォルダの中へ移動する」っていうこと
GUIで「フォルダを開く」にはダブルクリックするか、フォルダツリーからクリック
黒い画面で「フォルダの中へ移動する」には、cd
コマンドを使う
> cd c:\aaa\bbb\ccc
> cd ~/aaa/bbb/ccc
って言う感じ
cd
コマンドは、ChangeDirectoryと覚えればいいよ
で、開いたフォルダ(中へ移動したフォルダ)のことをカレントディレクトリと言います
GUIも黒い画面も考え方は全く同じ
使い勝手がちょっと違うだけ
コマンドの内容(コンパイラの場合)
Javaを例にしますね
Javaのプログラムって拡張子java
で保存するでしょ、それをコンパイルしてclass
ファイルにします
java
のテキストファイルをclass
ファイルに変換するためにJDKをインストールするんだけど、JDKをインストールした際に、どっかにjavac.exeってヤツが入ってます!
例)Windowsの場合
C:\Program Files\Java\jdk1.8.0_72\bin\javac.exe
例)Macの場合
/usr/bin/javac
黒い画面で、Windowsであれば
where javac
、Macであればwhich javac
と打てば分かるかもPATHが通っていればだけど…
こいつ(javac.exe)にjava
のファイルを渡せばclass
ファイルに変換してくれるのです!
黒い画面での書き方はこう↓
- コンパイラのプログラム名を書く
- 半角空白を空ける
- コンパイラへ渡したいファイル名を書く
別に覚えなくてもいい
この時の渡したいファイル名の位置にあるものを「コマンドライン引数」といいます
- Enterキーを押す
これだけ!!!
Rubyの場合も同じ
※irbの事は今は忘れてね
>ruby hoge.rb
と書けばhoge.rbがruby.exeに渡されます
ruby.exeはhoge.rbの中身を読みながら動きます
黒い画面を使えるようになるにはどうすればいい?
使ってみるしかないね
コマンドのリファレンスを見て、面白そうなコマンドあったら実際に使ってみるのが一番いいよ
もうちょい勉強したいなら、この辺りもいいかも
さいごに、
黒い画面で使うコマンドラインの説明をしだすと更にワケが分からなくなるし
これ以上説明しても混乱の元になりそうな気がするので、ちょっと中途半端な感じはするけどこのぐらいで説明はやめておきます
↓こっちの記事で詳しく書いてます
>> [Win/Mac][超初心者向け]C言語の開発環境の初歩の初歩、シンプルな開発環境を作って使う
C言語についての内容だけど、考え方はどの言語でも同じなので、是非読んでね
プログラミング のレッスンに興味がある方、レッスン内容を聞いてみたい方、なんなりとお問い合わせください。
無料体験レッスンもありますのでお気軽にどうぞ!!!