Flat Leon Works

アプリやゲームを作ってます。

プログラミングを学ぶこつ

プログラミングを学ぶこつは「慣れ」と「模索」

プログラミングにはいくつもの壁があります。この壁の多さから挫折してしまうひとが沢山いるようです。自分がプログラミングを学んできて思うのは、プログラミングの学習で重要なのは「慣れ」と「模索」なのではないかということです。

ここでいう「慣れ」とは、

  • 時間をかける
  • 何度も触れる

ということです。

また「模索」は、

  • 試行錯誤
  • 新しいことを学ぶ

ということです。

この「慣れ」「模索」でプログラミングの壁をどうやって乗り越えるのかを説明したいと思います。

【壁1】難しい用語が出てきた

プログラミングの学習をしていると新しい概念や機能が一気に出てきて全く理解できない、難しすぎると感じることがあるかもしれません。しかしこれらの概念や機能も、何回も触れていくうちに段々とわかるようになっていくものです【慣れ】。また実際に使ってみたり、あるいはその本の別の章や、別の本を読むことでも理解できるようになるかもしれません【模索】。

【壁2】文字ばかりの画面を見続けるのはもう嫌だ

プログラミングはPCの画面を見続けることになります。これが結構辛かったするのですが、これも「慣れ」で解決することができます。具体的に言うと体が慣れていきます(笑)。あるいは「模索」をすることで、テキストの背景色を暗くして目に優しくすることで対策したりするのかもしれません。

【壁3】情報量が多すぎる

プログラミングはとにかく情報量が多くなります。

プログラミング言語の情報」は使用するプログラミング言語やその作法の情報です。一般的プログラミング言語は、この情報自体で少なくとも本を1冊は書ける情報量です。「やり方の情報」はやりたいことを実現するための情報です。プログラミングにおいてやりたいことを実現する方法は通常いくつもあり、プログラミング言語の選択、API(ライブラリ)の選択、さらにその中でもどのAPIを使うのか、さらにどこを自分でコーディングするのかどうやってコーディングするのかを決めていかなくてはなりません。「自身が記述したソースコードの情報」も当然プログラミングで扱われる情報でその情報量は作業を進めるうちにどんどん増えていきます。

このような情報量の多さを処理しきれず、また取捨選択の難しさから挫折しそうになってしまうかもしれません。しかしこれも「慣れ」で解決することができます。情報量が多かったとしても、時間をかければすべてを拾うことができます。また新しい情報を得ることに慣れていくと必要な情報だけを選んで取得することもできるようになっていきます。やり方の情報が多すぎる問題は、時間をかけることでどんな選択肢があるのか全体像が見えるようになります。全体像が見えるとどれを選択すべきなのかも選びやすくなります。自身が記述したソースコードの情報量が多くて混乱してしまう場合、何度も見ているうちに理解できるようになっていきますし、プログラミングに慣れてくるとどういう書き方をすると混乱しなくなるのかもわかってきます。

【壁4】なかなか完成しない

プログラミングによるものづくりは、予想外の作業が多く発生するものです。このことでプログラミングに関して予想以上の大変さを感じ挫折しそうになってしまうかもません。しかしこれも「慣れ」です。プログラミングを続けていくうちに「そういうものだ」と慣れていくことでしょう。またプログラムの規模が大きくなるにつれ、プログラムの実装が難しくなっていくかもしれません。これは「模索」することでいろいろな手法を知り、プログラムの規模が大きくなっても破綻しないプログラミングの方法を見つけることができるかもしれません。

まとめ

「慣れ」と「模索」でプログラミングの壁を乗り越える方法を見てきましたが、これはプログラミングを初めて覚えるときに限らず、新しい技術を覚えるときにも使えるものだと思います。プログラミングはいつまでも新しいことを覚える必要があります。そういうときにも「慣れ」と「模索」を意識すると楽に新しい技術を覚えることができるかもしれません。

実はこの記事で一番伝えたかったのは、どんな技術習得も「慣れ」が重要なのではないかということです。「慣れ」とは時間をかけることで体が慣れること、あるいは問題を時間が解決してくれるということです。例えば、絵がうまくなりたいとします。そして絵を毎日描き続けていれば、必ずそのうちうまく描けるようになると思います。ここで重要なのは、どのような描き方を身につけたのかではなく、時間をかけていくことでうまい描き方を見つけることができたということです。時間が解決してくれるのです。