こんにちは!
この記事はこのような方向けの記事です。
・プログラミング学習を始めたい
・プログラミングを3時間くらい学習した
・そもそもプログラミングって何?
・パソコンはあまり使わないけど、プログラミングを学ぶのがいいらしい。
プログラミングに関する記事は読んだけれど、いまいちイメージがついていない方向けに超詳細に分かりやすく解説しています。世の中に多くのプログラミング初心者向けの記事がありますが、そこには初歩すぎて書かれていないことをお伝えします。プログラマーの方々には自明ですが、全くプログラミングに触れていない人は、イメージがわきにくいかと思います。
これを読めば、これから学習を始める方も、学習し始めて間もない方も、飛躍的に学習スピードが上がっていくと思います。逆にこれを読まないで始めると、自分が何を学習しているのかが分からなくなってしまいます。中学生、高校生のとき数学の授業で陥った『将来何の役に立つの?』状態になりますのでご注意ください。
絶対に、『こういうのが知りたかったんだよ!』ってなりますのでぜひ最後まで読んでくださいね。

そもそもプログラミングって何?
コンピューターに実行させたい作業を、順番にかいたものを『プログラム』といいます。仕事内容が記載された指示書のようなものです。
コンピューターはその指示書『プログラム』を読み取って作業を実行します。その指示書『プログラム』の内容次第で、いろいろな作業を実行することができます。作業目的に応じて『プログラム』の内容を作ることを『プログラミング』といいます。『プログラム』はパソコンに指示を送るための『特別な言語』によって書かれています。
皆さんはこれを今から学習しようとしています。
特別な言語、プログラミング言語とは?
コンピューターは、すべての情報を『0』と『1』で扱っています。
011101011001100・・・
これを機械語といいます。意味はあるのですが、ぱっと見、意味不明です。
そこで人間がコンピューターに指示を出すべく人間同士でわかりやすく、機械語に変換しやすい言語として『プログラミング言語』を開発しました。

プログラミングで何ができるの?
身近なところで言うと、こんなことができます。
- Webサイト制作
- スマホアプリ開発
- AI開発
- ゲーム開発
- システム開発
パソコンを使ってより便利に作業したい、楽しいコンテンツを作りたいという願望を実現するために日々プログラマーさんたちが頑張っています。あなたもプログラミングを習得すれば、自分のアイディアをパソコン上で実行することができるようになります。
大体こんなことがいろいろなサイトに書いてありますが、皆様に向けてわかりやすく解説すると・・・
・HP上に文章や画像を表示できる、もちろんレイアウトの調整もできる。
・ディスプレイ上に操作画面を表示する。
・何か入力すると、入力したものに応じたアクションを起こす。
あくまでも、『プログラム=指示書』です。次の項からは
『プログラム=指示書』をどうやって動かすかを理解していきましょう。
プログラムの実体
さて、ここからが本題です。プログラムがパソコンの中のどこかしらに保存されていて、それが読み込まれることでいろいろできる。ここまでご理解いただけたと思います。じゃあ、プログラムってどうやって作るの?どうやって読み込むの?コードを書くだけでアプリを作れるの?という疑問がわいてきますね。安心してください、解説していきます。
プログラム=指示書ってどこにあるの?
まず、『プログラム』はどこにあるのかというところからお話しします。
実は普通にワードやパワポみたいにハードディスク(パソコン上)に保存されているものです。
実際にあなたのパソコンでもプログラムのファイルを見ることができますよ。試しに、ファイルの検索画面を開いてみてください。そして下の順番にダブルクリックでファイルを展開していってみてください。
PC➢Windows(C:)➢Program Files➢Internet Explorer
このインターネットエクスプローラーファイルに入っているのが、プログラムです。あなたがインターネットエクスプローラー(以下IE)のアイコンをクリックすると、ファイル内のプログラムが実行されて、ブラウザが起動します。そしてネットで検索ができます。一つ一つの作業の裏側でプログラムが読み込まれて、私たちはパソコンでいろいろな作業ができているのです。
アプリケーションって何?
皆さんアプリアプリといいますが、説明できますか?
定義としては、『OSにインストールして利用するソフトウェア全般』を指します。意味不明かもですが、後程解説していきます。
先ほど例に出したIEは、ネット検索ができる『アプリケーション』です。Googlechromeも同じくです。意識しないとわかりませんが、パソコンのフォルダ内にIEやグーグルの『アプリケーション』が保存されているということです。『スマホに○○のアプリ入れてる?便利だよ~』という会話の中のアプリと同じ意味で使えます。他にも、文書作成”アプリ”の『Word』や表計算”アプリ”の『Excel』など、おなじみのあれらもアプリケーションです。一般的にはソフトウェア=『ソフト』と呼ぶことが多いですね。(表計算ソフトなど)スマホができてから、『アプリ』という言葉が浸透していきましたが、基本的に同じ意味です。
ちなみにデスクトップにIEのアイコンがありますよね。あれはショートカットアイコンと呼ばれ、クリックするとそのアプリケーションを実行できるアイコンです。
クリックすると検索バーが出てきて、文字を入力すると、WEB上のサイトを検索、閲覧できます。この一連の流れがプログラムに書いてあります。
ここで思い出していただきたいのですが、先ほどプログラムの保存場所を検索しました。なにか、たくさんフォルダがなかったでしょうか?その中の一つが『プログラム』(指示書)です。その他は『設定ファイル』や『データ保管用のファイル』などになります。(ここは覚えなくてもいいです。『設定ファイル』=『プログラムをどんな条件下で実行するか書いてあるファイル』程度でよいです。)
つまり、 【アプリケーション=『プログラム』+その他ファイル】 ということになります。もしくは 【アプリケーション≒ソフトウェア、その中にあるのがプログラム】 と覚えてしまって問題ないです。
OSって何?
OSというのはオペレーティングシステムのことです。Windows、Mac OS、iOS、Androidなどのことを指します。パソコンを動かすのになくてはならないソフトウェアのことで、システムソフトウェアと呼ばれます。マウスでカーソルを動かせたり、クリックしたらウィンドウが開くなどの基本的な機能を担っています。
言葉の使い方としては
アプリケーションソフトウェア(OS以外)
システムソフトウェア(OS)という言い方になります。
実はアプリケーション(≒ソフトウェア)は、このOSがないと動かすことができません。しかも、アプリケーションはそれぞれ対応するOS用に開発しなければなりません。例えるならWii用のディスクをプレステにいれても読み込めないのと同じです。

プログラムの作り方~実行まで
お疲れ様です。ちょっと読むの大変でしたかね。
やっとプログラミングのお話に入れます。
プログラムを書いてパソコンに保存、実行するまでを解説していきます。
①環境構築:プログラムを入力するエディタ(ノート)を用意する。
②プログラミング:エディタにプログラムを書く
③保存:プログラムをファイルに保存
④翻訳:プログラミング言語を機械語に翻訳➢プログラミング言語によっては不要
⑤実行:言語に応じた入力装置やOSにより実行する
まずはここだけ知っていれば十分ですが、詳細も書いていきます。
環境構築
まず、エディタを用意します。エディタとは、何かを編集するときに使うソフトのことです。『メモ帳』はご存じでしょうか?文字を入力できるだけのソフトです。このソフトのくくりを『テキストエディタ』とよび、文字=テキストを編集できるソフトになります。
つまりは、エディタ=ノートです。
プログラム界では文字を『コード』と呼びます。人間界に日本語や、英語、中国語があるのと同じように、プログラム界でも『言語』が存在しています。
先ほど解説しましたが、OSによって使えるソフトが異なるように、目的によって『コード』の書き方も異なります。
・WEBサイトを作るための言語
・iOS用のアプリを作るための言語
・AIを作るための言語
それぞれ別の言語を使うので、準備するエディタも異なります。学習を始める前に、『何を作りたいか』『どんなプログラマーになりたいか』を考えてみてください。目的に応じた言語を決めて、その言語にあったエディタをインストールします。
ただプログラムを書くだけのエディタだけでなく、『総合開発環境』=『プログラムも書けるし、それ以外に便利な機能が詰まったエディタ』もあります。例えばAndroidアプリ開発のための『Android Studio』さえダウンロードすればプログラミングを書くだけで先の、③④⑤の工程を飛ばして実行できたりするものもあります。
言語の種類や、エディタの種類もたくさんあるのでここは別の記事で解説したいと思います。

プログラミング
エディタがインストールできたら、プログラムを書いていきます。
書き方は勉強あるのみです!
保存
コードがかけたら、パソコンのどこかに保存します。各種エディタから簡単に保存できます。
翻訳
冒頭を思い出してください。
このままだと、コンピューターはあなたの書いたプログラムを読み取れません。プログラミング言語を機械語に翻訳する必要があります。この翻訳作業を『コンパイル』といいます。どうやるのかというと、『コンパイラ』を使います。これもプログラミング言語によってコンパイルの仕方、コンパイラも種類があります。書いたプログラムを『コンパイラに通す』という表現をしたりします。ここでプログラムに誤りがあると、『コンパイラ』はエラーを吐き出します。最初のうちはなかなか通りません。トライ&エラーあるのみです!
晴れてコンパイルが成功したプログラムは『実行ファイル』として保存します。
本当は下記のような手順がありますが、専門性が高くなるのでここでは割愛します。プログラム➢コンパイル➢オブジェクトファイル+オブジェクトコード生成➢リンク➢実行ファイル生成
ここは別記事を書くかもしれません。
実行
プログラミング言語によって、実行ファイルを実行するための各種OS、入出力装置があります。映画などでハッカーが、背景が黒の画面に緑色の文字を書いてエンターを押すとコンピューター上で何か実行されていく、みたいなイメージです。その背景が黒の画面、入力画面のことを各種OS、入出力装置と言っています。Windowsで言うと、『コマンドプロンプト』Macで言うと『ターミナル』というのがあります。
お疲れさまでした。プログラム実行までの流れのイメージはつかめたでしょうか。プログラミング言語によって、④、⑤の工程は覚えなくてもいいです。環境によっては、工程を飛ばせますので特に気にする必要がないですが、裏側では必ず実行されている工程です。③保存の段階でアプリケーションが出来上がっているような開発環境もあります。

今回のまとめ
・プログラムはコンピュータへの指示書である。
・HPを作ったり、アプリを動かすのに必要なもの。
・プログラムはパソコンの中(ハードディスク)に保存される。
・プログラムはエディタに書いていく。
・書いたものを保存し、コンピュータが判別できるように翻訳する。
・プログラミング言語に応じたソフトを使って実行する。
『用語解説』
・プログラム=コンピュータへの指示書
・プログラミング=プログラムを書くこと
・機械語=コンピュータが判別できる言語
・プログラミング言語=コンピューターに指示するため人間が見てわかる言語。
目的に応じていろいろある。
・アプリケーション=ソフトウェア=プログラム+設定ファイル
➢OSにインストールして、実行したいプログラム群
・設定ファイル=プログラムが実行される前提条件が書いてあるファイル
・OS=パソコンを動かすためのソフトウェア。
➢クリック、ウィンドウが開く、キーボードから入力を受け取るなど。
・エディタ=プログラムを書くためのノート。環境のこと。
・コンパイル=プログラミング言語を機械語に翻訳すること。
・コンパイラ=翻訳機
さいごに
参考になりましたでしょうか?
最後に超重要なことですが、
疑問に思うことがあったらすぐにググってください。
検索力はプログラマーに必須のスキルです。
今回の記事もググれば出てくるものですが、ここまで丁寧にまとめているサイトはなかったかなと思います。
皆さんのプログラミング学習がより良いものになれば幸いです。
とはいえ、プログラミングを独学で行うのはかなりしんどいです。
プログラミングスクールに通うのも一つの手段です。
こちらのリンクから無料相談ができます。
プロのカウンセラーにいろいろ質問してみましょう!
現役エンジニアのパーソナルメンターからマンツーマンで学べる

別記事で、目的に応じたプログラミング言語の紹介や環境構築手順なども紹介していく予定です。
ぜひプログラミングにトライしてみてください!
こちらの記事もご参考ください!
コメント