プログラミングの勉強はそれなりに時間と労力をかけて

とある状態を見て思ったことです。私の場合は高専時代から授業やらで積み上げてきたものがあるのでそれを使うだけで済んでいますが、そうで無い場合は・・・というものです。個人的にこの後の仕事などでプログラミングに関して教えるような仕事をやってみたいと思っているのを含めてアドバイス的なものとして書いてみます。

 

初心者が簡単にできるような近道は無い思った方が良い

この後で仕事などで使うことになったら・・・という仮定を多分に含みますが、基本的に初心者からプログラムを組めるようになるためには初めにどうしても「慣れ」の部分が必要になると思っています。プログラムを言語から作り上げていくタイプであればなおさらです。とある場所で見た覚えがあるので紹介ですが、「プログラム言語は外国語のようなものだと思え」というものです。それはそうですね。予約語そのものは確かに英語かもしれませんが、プログラムを動かすための文法は基本的に日本語の文法が使えません。そうなると外国語を習得するような考え方が必要になるのは当然だと思います。

また、プログラム以前にPCを操作する技術としてタッチタイプがありますが、これに関してもやはり「慣れて覚える」ようなものだと思います。指の動きをマスターするという意味ではピアノを弾く動作にある種似ている(ピアノから比べると同時押しがない、キーボードを押す強さ、キーボードの範囲などかなり狭いですが)とするなら地道な練習なしにマスターできるものでは無いと思います。そのあたりは授業で強制とかでも無い限り続きづらいのは分かりますががんばってください、と言うところですね。

 

普通の「遊び」的なプログラム(というよりは動作の組み合わせ)であればおもしろく教える価値はあり

こちらの場合でもまあ「プログラムの学習」とはいえなくはないので紹介しておきます。

例えば「Scratch」があります。教育用となっていることからもそれがうかがえます。このようなタイプは本来必要となるプログラムの構文など余り考えずに動作などを組み合わせることで自分だけのオリジナルな状態を作り上げる、ということでプログラムの考え方を学習するというものですが、この場合はできる限り「~~ができるんだよ」の形で見せることによって作り出したい操作をやってみる=>創造性が・・・という形になります。

これをプログラムというのかどうかはまた微妙ですが、「自分が作りたい状態をコンピュータによって実現する」ことをプログラムを作る目的とするならば間違いではないでしょう。言語を使うプログラムと異なり即座に動作が見えるところも面白さを見つけてもらって興味を持つ部分ではいいと思います。複雑なことをしたい場合はそれ専用の言語も無いわけではないですし。

個人的にはこれによって「プログラムがどういうものか」を理解した後に言語を使う形のプログラムを見るとどう思うのかが非常に気になるのですが・・・。

 

どの状態を教えるのかによっても対応が

一応C言語やC++についてはほぼすべて教えられるのでその辺であればいろいろとやりたいとおもっています。その手前の上記のようなものに関してもできるようになって置いた方が幅が広がるよね~と思っています。

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

この記事のトラックバック用URL