プログラミングを学ぶって一体どうやって学習すればいいのかというと、
参考書などに書いてあるプログラミングチュートリアルをこなすのが一番いいハズです。
でも、参考書によっては分かりにくい、同じ結果にならない、環境が違う、という原因で学習が進まないという事がかなり多いみたいですね。
もちろん、参考書やネットに書かれている記事だけで、器用にプログラミングを習得できる人もいるので、何が原因で挫折をしがちなのは、その人それぞれと、その時のタイミングによると思います。
これをゲーム環境という同一の条件で進める事で、プログラミングの学習は単一に進める事ができるというのが今回の目的です。
プログラミング学習のはじめの一歩
これからプログラミングを学習したいと思った人が最初に考えることは、
「まずパソコンを買う」とか「キーボードを上手に使える様になる」です。
確かに、キーボードで入力する速度が遅いとプログラミングの習得スピードもツたれて遅くなってしまいます。
もちろん、スマホのフリック入力でもいいんですが、多くの場合、プログラミングは、パソコンで動く環境がメインになるため、スマホ入力よりもキーボード入力ができないと厳しくなってしまいます。
今回はブラウザゲームということで、スマートフォンでも使えることから、キーボード環境はかなり柔軟にセットできるので、この点はあまり深追いしない様にします。
(そのうち、ワード入力もスキルアップの指標にしたいと思います)
次にパソコンを買うというのも、手持ちのスマホでもできるレベルで考えてはいるので、この点も除外してもいいかもですね。
プログラミング学習の手順
では、実際にプログラミング学習は、どういう手順で行えば良いかというと、
多くの場合、自分がどういうプログラマーになりたいかという選択肢が一番最初に求められます。
・Webエンジニア
・システムエンジニア
・サービスエンジニア
・フロントエンドエンジニア
・バックエンドエンジニア
・ネットワークエンジニア
・インフラエンジニア
プログラマーになりたいのにエンジニアになるって、どういうことかというと、
それぞれのエンジニア毎に、使用するプログラミング言語が違ってきます。
どれか一つだけプログラミング言語を覚えればいいというワケではなく、
それぞれの特性に応じて、そこで使われるプログラミング言語を習得しなければ、一流のエンジニア(プログラマー)になることはできないんですね。
ただ、その一方、プログラミング言語って、1つを習得できてしまうと、他のプログラム言語も似た様な思考で学習が効率よくできてしまうという点もありますl。
今回作ろうとしているゲームは、明確なエンジニアを目的にするのではなく、幅広くいろいろなプログラム言語を基準にして、ベースとしては、Javascriptで構築していこうと考えています。
プログラム言語の習得は、ブール思考にあり
プログラム言語は基本的には、人が読める形にした上級言語が主体ですが、
実際のコンピュータは、0と1のいわゆるビットブールによる繰り返しで、処理を進めていって、1つのアプリケーションが動くという現実があります。
これを、プログラミング習い始めの人が聞くと難しくて逃げ出したくなると思いますが、
全てのプログラミング言語に共通の処理というのがあり、if文とfor文です。
if文は、判定処理として、0と1を判定して、条件分岐を行う処理で、
for文は、それらの判定処理を繰り返す、反復作業を行う処理です。
荒っぽくいってしまうと、プログラミングって、この2つ(ifとfor)のみで、大体どんな処理でも作れてしまいます。
もちろん、それを効率的にするために、他の色々な命令がプログラム言語ごとに存在するのですが、
この基本処理を身につけるだけで、プログラム学習は格段に早くするめる事ができるようになります。
ちなみに、コンピュータの基本の0と1は、いわゆるif文なのですが、ブーリアン(Boolean)判定という風に呼ばれていて、
どんな条件分岐もこのブーリアン演算(ブール演算)で処理できるようになるという事が、プログラミングが上達するという意味で考えてもいいかもしれません。
あとがき
プログラミングはとても難しくて、理系の大学に行って、ちゃんと学問として学習した人じゃないと絶対に習得できないと思い込んでいる、文系堅物思い込み激しい人間が世の中の大半です。
日本は特に、先進国でITがほぼ最下位というぐらいのITレベルが低い国で、プログラミングできる人が、英語と並んで極端に多い人種の集まりでもあります。
英語もずっとその環境にいて、話をしているだけで、誰でも習得できてしまうし、
プログラミングも、どんなに難しくても、根本の仕組みがわかって仕舞えば、誰でも簡単に扱える様になるモノなのです。
ようするに、途中で、「自分はできない」と諦めて挫折してしまう人が日本人は圧倒的に多いのが、このジャンルの特徴でもあるんですね。
これをゲーミフィケーションを通じて、プログラミングは面白いと思える人数を増やしていこうというのも、大きな目的の一つでもあります。
これまで、何度かプログラミング学習にチャレンジしてきて、挫折を繰り返してきた人のために、トライするというのも、悪くないと思ってるんですよ。
というわけで、次回から、そんなブール思考というものを、実際に問題にしてみて、ゲームシナリオに組み込める問題集を作っていきたいと思います。
お楽しみに。
0 件のコメント:
コメントを投稿