[Win/Mac]プログラミングを始めるなら、黒い画面でシンプルにシンプルに!

 

 

こんにちは。ナガオカ(@boot_kt)です。

 

まずはこの記事をご覧ください

簡単にまとめるとこんな感じ
※ザックリと切り取ってるで、ニュアンスは必ず上記記事を読んでね

  • 勉強ではなく、打ち込んで動かすのが楽しかった
  • 効率的な方法なんて知らない、ただ「楽しい」がプログラミングを身につける上で大切
  • プログラミングは知識で出来るようになるものではなく、経験で出来るようになるものだ
  • どうすれば動くのか、何を変えれば動かないのか、壊れることを恐れずに、いくらでも動かして試そう
  • 少し覚えたら、少し動かそう
  • ターミナル(いわゆる「黒い画面」)で動くコマンドラインのプログラムから始めれば、プログラム全体を把握して動かすことができる
  • ターミナルファイルやディレクトリの考え方を学んで、ファイル操作のいくつかのコマンドを練習して身につける
  • コマンドラインのプログラムでも十分に、プログラミングで大事なことは学べる。むしろ、本質だけにフォーカスできる
  • 大事な本質や哲学を学ばずに職業プログラマになってしまっている人も多いのではないか

 

僕はこの記事と完全に全く同感です

特に、ターミナル(いわゆる「黒い画面」)で動くコマンドラインのプログラムから始めようという部分は特に共感です

とは言っても、最近は簡単に楽しくプログラミングを学べる環境が揃ってるので以前ほど黒い画面に拘りはないけどね
なので、初心者の方に対して「黒い画面から始めればいいよ」とは今はあまり強くは言わないけどね

 

でも、黒い画面が一番シンプルで理解しやすいと信じてるよ
変に開発環境を揃えることの方がメンドクサくてその後の理解も遅いと感じてるかな

 

というわけで、「いわゆる黒い画面」でプログラミングを始める方法を説明します!

WindowsユーザーもMac/Linuxユーザーも考え方は全く同じです(使うコマンドは少し違うけど)

  • 「いわゆる黒い画面」でのプログラミングに興味のある方、
  • これからプログラミングを始めようと考えている方、
  • 開発環境の構築が難しすぎて挫折している方、

ぜひお読みください!

 

 

 

 

 

ディレクトリとフォルダについて使う用語について
どっちも同じような意味ですので、このエントリでは「フォルダ」で通します
本エントリ中で、アプリケーションに対しては.exeという拡張子を付けていますが、これはWindowsの場合のみです
Macではこのような拡張子は付きません

黒い画面ってどこにあるの?

黒い画面は既にWindows/Macに入ってますよ~
何かをインストールしなきゃいけないってことは無いです!

 

Windowsの場合

コマンド プロンプト dos画面 DOSプロンプト

Windowsでは黒い画面のことをコマンドプロンプトとか、DOSプロンプトって呼ぶんだよ
DOS画面と言うこともあるね

DOSはドスと読みます

コマンドプロンプトの出し方は4つ
どの方法でも同じなので、お好きな方法でどうぞ~

  • スタートメニュー → すべてのプログラム → アクセサリ → コマンドプロンプト
  • Windowsキー+Rcmdと入力+Enter
  • スタートメニュー → cmdと入力+Entercmdと打った時点でcmd.exeが表示されるのでそれをクリックでもOK)
  • エクスプローラーのアドレスバーでcmdと入力+Enter

 

Macの場合

Macでは黒い画面のことをターミナルって呼びます
Linuxでもターミナルって呼ぶけど、端末と呼ぶこともあるよ

ターミナルの出し方は3つ

  • Spotlightでターミナル or terminal.appと入力
  • Dockのアプリのところから起動
  • Launchpad → その他 → ターミナル

 

どうやって使うの?

黒い画面を使ってプログラミングを始めるには、以下の3つが必要

  1. 黒い画面(コマンドプロンプト or ターミナル)
  2. コンパイラ or インタプリタ
  3. テキストエディタ

※環境変数の設定も必要になるけど、今回は省略します

わずか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)とかで見ると、こんな感じになってるよね?

そう、フォルダとファイルだけ

アプリケーションも動画ファイルもテキストファイルもMP3ファイルも全てファイルの仲間だよ~ん

これは、コマンドプロンプトでも同じ!
グラフィカルに見えないだけで、全く同じ

GUIで「フォルダを開く」っていうことは、
黒い画面だと「フォルダの中へ移動する」っていうこと

GUIで「フォルダを開く」にはダブルクリックするか、フォルダツリーからクリック
黒い画面で「フォルダの中へ移動する」には、cdコマンドを使う

> cd c:\aaa\bbb\ccc
> cd ~/aaa/bbb/ccc

って言う感じ

cdコマンドは、ChangeDirectoryと覚えればいいよ

 

で、開いたフォルダ(中へ移動したフォルダ)のことをカレントディレクトリと言います

カレント(current)って英語で「今の」とか「現在の」っていう意味

 

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ファイルに変換してくれるのです!
黒い画面での書き方はこう↓

  1. コンパイラのプログラム名を書く
  2. 半角空白を空ける
  3. コンパイラへ渡したいファイル名を書く
    別に覚えなくてもいい
    この時の渡したいファイル名の位置にあるものを「コマンドライン引数」といいます
  4. Enterキーを押す

これだけ!!!

Rubyの場合も同じ

※irbの事は今は忘れてね

>ruby hoge.rb

と書けばhoge.rbがruby.exeに渡されます
ruby.exeはhoge.rbの中身を読みながら動きます

コマンドについて参考書籍

 

黒い画面を使えるようになるにはどうすればいい?

使ってみるしかないね
コマンドのリファレンスを見て、面白そうなコマンドあったら実際に使ってみるのが一番いいよ

 

もうちょい勉強したいなら、この辺りもいいかも

 

広告




 

さいごに、

もしかしたら、分かりづらいかなぁ……

黒い画面で使うコマンドラインの説明をしだすと更にワケが分からなくなるし

これ以上説明しても混乱の元になりそうな気がするので、ちょっと中途半端な感じはするけどこのぐらいで説明はやめておきます

↓こっちの記事で詳しく書いてます
>> [Win/Mac][超初心者向け]C言語の開発環境の初歩の初歩、シンプルな開発環境を作って使う

C言語についての内容だけど、考え方はどの言語でも同じなので、是非読んでね

 


 

プログラミング のレッスンに興味がある方、レッスン内容を聞いてみたい方、なんなりとお問い合わせください。
無料体験レッスンもありますのでお気軽にどうぞ!!!

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ABOUTこの記事をかいた人

Windows/Mac/Linuxを使う現役システムエンジニア&プログラマ。オープン系・組み込み系・制御系・Webシステム系と幅広い案件に携わる。C言語やC#やJava等数多くのコンパイラ言語を経験したが、少し飽きてきたので、最近はRubyやPython、WordPressなどのWeb系を修得中。初心者向けのプログラミング教室も運営中。オンライン・対面・出張等でプログラミングをレッスンします。