2017年10月6日金曜日

プログラミング言語を学ぶ時はコンピューターの基本から

最近(と言っても去年)、新しいプログラミング言語を学びました。
本やオンラインのチュートリアルを読みながら、独学しました。
いずれも「これをしたいときはこのように書く」というようなものでした。

小学生からBASICという言語をはじめ、プログラミングを学びました。
図書館に行き、本を借りて独学しました。
そして、1980年代当時の本は、いくつなパターンがありました。

コンピューターの仕組みを説明する本。
コンピューターの基本的な構成や部品。
0と1の世界で、数字や文字をどのように表現するのか。
メモリとディスクの違い、画面に表示するときの仕組み。
今では当たり前のことですが、当時はまだまだ未知の世界でした。

コンピューターの仕組みを説明しながらプログラミング言語を教える「プログラミング言語教本」。
あるコマンドを書くと、コンピューター内ではどのように保存し、どのように実行する。
文字列は実際にどのようにメモリに保存する。
画面に円を書く時、実際にコンピューター内になにが起きているのか。
プログラミング言語を学びながら、コンピューターの基本も学ぶような本でした。

プログラムの簡単の説明とソースコードだけを載せる「プログラム集」。
この多くは簡単なゲームのソースコードでした。
自分で入力して、そして実行して楽しむ。
自分で改造する提案も載せてある。
読者がすでにプログラミング言語の知識を持っている前提です。
 確かにプログラミング言語がかなり進化してきました。
だれでも使えるようになりました。
しかし、今と比べて、違いが明らかです。
当時は基本を重視。何か新しいものを学ぶ時、基本から学ぶのが重要です。
今では即席重視。すぐに使える。手順を従えば、何とかできる。
でも、うまく行かないとき、なぜうまく行かないのか、分かりません。
その基本的な知識がありませんから、分かるわけがありません。

幸い、私は昔の知識、そして学校で学んだ知識があります。
だから何かある時、自分で原因を探り、解決することができます。
でも、周りの人をみると、そうではありません。
彼らの中には、最近になって、仕事の必要上、プログラミングをはじめた人が多くいます。
裏の仕組みを理解しないまま、手順に従えば出来上がるのようにする。
でも、うまく行かないとき、かなり悩む。

スピードが命という今の世界。
即席が当たり前です。
でも、基本から学ぶのが、本当に大事です。
時間と競争する中、それだけは忘れないでほしいです。

0 件のコメント:

コメントを投稿