【初心者でもわかる!】「プログラミング」とは

コラム

みなさんこんにちは。

突然ですが、みなさんAI、VR、ブロックチェーンなどの言葉たち、なんか最近ニュースでよく聞きませんか?

他にも、「プログラミングが小学生の必修科目になる」という発表があったりと

大学生も無関係じゃない?小学校プログラミング教育導入

2019.01.16

「プログラミング」という言葉は、以前よりも人々にとって身近になってきています。

だけど、プログラミングの意味、本当に理解できていますか?イメージが先行して、不安になったりしてませんか?

本記事は、そのあやふやな「プログラミング」とは一体何なのか?をご紹介し、あなたがざっくりとプログラミングとは何なのか。についてわかる状態を目標としています。

1.私たちは、プログラミングで作られたもので囲まれている

私たちの暮らしは、プログラミングされたもので埋め尽くされています。

例えばAmazonなどのアプリケーションや、ゲームからロボット掃除機までとても幅広く。

これらは、エンジニア・プログラマーの手で設計・構築がされて作成されています。

私たちの身近にプログラミングはあふれています。

もし、この「アプリケーション」がなかったとしたら、現在挙げられている利益を、一切あげることができない会社も出てくるほどです。

それほど私たちの生活はプログラムの上に成り立っており、プログラミングとは必要不可欠なものなのです。

2.初心者でもわかる!プログラミングとは


プログラミング – プログラムを作成すること。
プログラム – コンピュータに対して、どのような手順で仕事をすべきかを、機会が解読できるような特別の言語などで示すもの。
プログラミング言語 –  プログラムを記述するのに用いる人工言語。


広辞苑

これらがプログラミングの定義になります。

といったものの、かっちりしていて理解しずらいので、わかりやすく説明しますね。

みなさんがプログラミングと聞いてまず思い浮かべるのが、このような文字がずらっと並んだものだと思います。これらをコード と言います。

このコードとは一体何かと言うと、人間と機械(コンピュータ)との共通言語である、プログラミング言語が使われた、命令文です。

これだけ言ってもピンとこないと思うので、以下の図を見てください。

図を見てみると、プログラミング言語が、人間とコンピュータをつなぐ矢印に該当していることがわかります。

機械語とは0と1のみで構成される、無数に続く文字列のことです。

人間の言葉と機械語の通訳をしてくれるもの、つまりプログラミング言語がわかれば、コードを使って機械に命令をすることができるということ。

コンピュータは自分で何かを決めることはできないので、このコードが書かれることによってのみ、動くことができます。

コンピュータを操ることができるプログラミングとはまさに、魔法のようなものなのです!

まとめ
プログラミングとは、プログラミング言語を使って、プログラムを作成する行為のこと。

言語によって変わる特徴・用途

プログラミング言語は、人間が意図して作ったものなので、作った人によって多少ルールや特徴が変わってきます。

よって、使われる用途や場面が変わってくるのです。これが世の中にプログラミング言語がたくさんある理由です。

例えば、今流行りのAIを活用するために必要な「機械学習」によく使われるのは、pythonというプログラミング言語になります。

ウェブサイトに使われる言語としてはHTML,CSS,Javascriptなどが使われたり、iPhoneアプリ作成にはswiftが使われたり。

言語によって、得意な分野や特徴があるのも言語がたくさんの言語が利用される理由です。

もっと砕いた例を挙げると、動物でイメージしてみてください。亀に他の動物と陸上で競争させようとしても、良い結果は得られそうにないですよね。しかし、亀は我慢比べ競争であれば、トップクラスの実力を発揮するかもしれない。

プログラミング言語もそれに近くて、それぞれの言語によって得意・不得意があるのです。


まとめ
一概にプログラミング言語といっても、種類が多種多様であり、特徴や用途も違う

3.プログラミングを学ぶ意義

さて、ここまでプログラミングの重要性・プログラミングとは何なのか、について解説してきました。

ここからは、「プログラミングを学ぶこと」の意義について解説をしていきたいと思います。

⑴プログラミングを活用する技術者就職が目指せる

1つ目に、プログラミングをたくさん学び習得することで、プログラムを書くこと自体を仕事にすることができます。また、大学生なら在学中に仕事ができたり、社会に出てから副業などで時間の合間に収入源を確保することもできます。

プログラミングを使う職業は例えばエンジニア、プログラマー、クリエイター、デザイナーなどが挙げられます。

おそらくこれは、一般的にもよく認知されているメリットでしょう。

⑵(実際にプログラムを書く仕事をしなくても)市場価値が高まる

今回はこの2つ目について特に述べたいと思います。

今の時代、プログラミングの「コード」がかけることも、もちろん需要は上がっているのですが、プログラミングが「わかる」ことへの価値も上がっていると言われています。

その背景として、以下の2つの理由があります。

1つずつ解説をしていきます。

1つ目に、テクノロジーがわかる人材への需要が増加していることです。

これは時代背景として、急速なテクノロジーの変化により、企業がテクノロジーを取り入れていく必要が生まれたことが挙げられます。

では、テクノロジーを企業が取り入れていくにあたって、技術者だけがテクノロジーを理解しているとどうでしょうか?

企画をする人や、意思決定をする人などの技術者に指示を出す人は、まともな指示を出せるでしょうか?

きっと技術をわかっている技術者とその人たちに指示を出す人の間で認識の齟齬やギャップが生まれてしまうでしょう。

この理由から、テクノロジーがわかることは価値が上がっています。

2つ目に、プログラミング的思考の重要性増加についてです。

プログラミング思考法については、以下の記事で細かい説明がなされていますが、端的に述べるとコンピュータを動かすためには、目的と意図を明確にして論理的な説明をしなければなりません。

この思考法がプログラミングを作るにあたって必要になってきます。

これらの思考法は、情報の増加とともに目的と手段が飽和してしまっている現在では、身につけておくべき必須の能力です。

文部科学省が小学校にプログラミング教育を導入した所以もそこにあります。

大学生も無関係じゃない?小学校プログラミング教育導入

2019.01.16

これら2つの理由から、技術者ではないビジネスマンもテクノロジーを学ぶ重要性が高まっています。

今回は、プログラミングとは何か。言語によって変わる意味や用途。そして、プログラミングを学ぶ意義まで解説をしました。

もし少しでもプログラミングに興味を持ったと言う方は、ぜひ以下の記事も参考にしてみてください。