プログラミングの基礎ってなに?
プログラミングの基礎とは何か?
その前にプログラミングとは、問題を解決するためにルールに従って正しい順番で処理を行う事になります。
これからお子さんにプログラミング学習をさせたいと思っている親御さんには、まずプログラミングの基礎を理解していただき、これから学習をするお子さんのサポートをして欲しいと思います。サポートというより、一緒に学んでいこうと思っていただけるといいと思います。
プログラミングのルール
プログラミングにはルールがあります。
日本人同士の会話なら日本語。アメリカ人同士の会話なら英語と言うよに、同じ言語で話すときは100%正確な文法でなくとも会話が通じます。
しかし、プログラミングを行う上で必要になるルールがあります。プログラミングは正しい方法で、一つ一つ正確に解決までの手順を記述する必要があります。
例えば、人間同士の会話で“それ、ここに置いておいて”とか“ちょっと待ってて”など、何気に使っていますが、だいたい相手に伝わり相手はその通りに行動してくれます。
プログラミングは、”それ、ここに置いておいて”の“それ”や”ここに”がわかるようにしなければ、正しく動作してくれません。
日本語や英語などの言語で言うなら文法にあたります。プログラミングは話し言葉と違い100%文法通り(ルール通り)に記述しないと正しく動作しません。
ただ、それほど細かすぎる文法ではありません。決まりごとはそれほど多くないので、すぐに覚えられます。
プログラミング言語ごとに文法(=ルール)はありますが、似通っているところも多くあるので、まず一つの言語を習得すれば、他の言語も習得しやすくなります。
アルゴリズム 正しい結果を導く
プログラミングを行う上で、重要な考え方の一つにアルゴリズムがあります。
アルゴリズムとは、計算手順といえます。要するに、結果(答え)を導くための方法ということになります。
しかも、ただ答えがあっているだけではなく、答えを導き出す方法が何種類かあるとすれば、最短で答えを導き出せるアルゴリズムがもっともすぐれていると言えます。
プログラミングは、問題解決のためにいくつかのアルゴリズムから、最も効率のよいアルゴリズムを採用し組み立てていきます。
車に搭載されているカーナビも、ルートを検査します。いくつかのパターンを検索して最短ルートを教えてくれるイメージですね。
プログラミングの目的
プログラミングの目的は問題を解決することです。
ややこしいパズルを誰よりも早く正確に解くようなものです。
そして、解く方法がアルゴリズムなんです。
様々な問題がある中で、その問題解決に適した言語と言うものが存在します。それに合わせてプログラミングを行っていきます。
プログラミング言語の種類
プログラミング言語の種類は、それはそれはたくさんありますが、今回は代表的な言語だけ紹介しておきます。
- Ruby
- Java
- Python
- C言語
- C#
- PHP
- JavaScript
今回紹介した7つの言語について簡単に触れておきます。
Ruby
Ruby(ルビー)は、なんと日本で開発された言語と言うだけではなく、汎用性の高い言語で世界でも認められています。そして、日本で開発された言語として初めて国際電気標準会議(IEC)で国際規格に認証されました。
特徴の一つに、記述する量が少ないことが挙げられます。また、WEBアプリ開発にも利用されていて、CookPadさんや価格.comさんなども一部サービスをRubyで開発しています。
Java
Java(ジャバ)は、Windows、Mac、Linux、スマホとなんでもプログラムが実行され、処理速度も速く、WebからCGから宇宙開発関連まで様々なところで活用されています。
また、Javaのエンジニアは需要も年収も高い傾向にあるようです。
Python
python(パイソン)は、少ないコードで簡潔にプログラムを書けライブラリが豊富にあることなどが挙げられます。
Pythonは数多くのWebアプリケーションの開発に活用されています。代表的なWebアプリケーションとしてInstagram、YouTube、Evernote、DropBoxなど開発されています。
googleなどにも採用され、Python開発の求人も行っているほどです。
C言語
C言語はエンジニアに最も使用されている言語です。汎用性も高く処理速度も非常に早く、またハードウェアを制御する設計する際にも利用されています。
家電製品を制御したりゲームなどもC言語で作られています。
でも、習得が他の人気のある言語よりハードルが高くなります。C言語はハードウェアの制御ができるため、開発にはある程度の知識が必要になります。
PHP
PHPはWEB開発でよく使用されるスクリプト言語です。初心者向きの言語と言えるのは、文法が分かりやすく、基本的な文法を一通り理解すればプログラムを作成することが可能です。
難しい文法がないので、途中で挫折してしまう事もありません。
JavaScript
JavaScriptは、動的なWebページを作成できるプログラミング言語です。パソコンやスマホなどで閲覧しているWEBページなどでも使われています。
同じWEBページでも、パソコンで見たときとスマホで見たときに表示が異なります。表示限らず、様々場面で使われています。
まとめ
プログラミングの基礎は、ルールに乗っ取り、正確なアルゴリズムを導き出し、問題を解決するために必要な知識になります。
小学生のお子さんがプログラミングに興味を示し、プログラミングを学習させたいと思ったら、ぜひ学習する機会を作ってあげて下さい。