アマゾンバナーリンク

効率の良い初心者向けプログラミング学習法[簡単です]

こんにちは!ジェイです。今回は初心者がプログラミングの勉強の仕方についての解説をします。

私自身はゲームプログラミング歴13年でC++,C#,Java,PHP,Perl,Phyhon,JavaScriptなどのあらゆるプログラミング言語を習得してます。

その時に身に着けた効率の良い勉強方法をお伝えします。

概念を理解する事が大事

プログラミング勉強する際に重要な5つの項目

  • インプットする
  • アウトプットする
  • フィードバックする
  • イメージで捉える
  • 一度に全部理解しようとしない

基本はインプット→アウトプット→フィードバックの繰り返しです。本を読んだだけではインプットをしただけの状態で、ここから実際にアウトプットすると経験が生まれます。

一番最初にやるべき事は1つの概念に対して全体のイメージをなんとなくつかむ事なので、初めはわからなくても1つの場所にこだわることなく進めるべきです。

概念を理解できると新しいコードを書けるようになる

上記のツイートでインプットしただけの状態がKnowledgeで、アウトプットする事によって、Experienceの状態になって、インプットとアウトプットを繰り返すとやがてCreativityになります。これは知識を入れ経験を積むことによって技術になるという事の証明です。

具体的な勉強方法

・本を何冊か読む(概念の獲得)
・動画を見てイメージの全体像をつかむ(概念の確認)
・実践する(概念の修正)
・実践してできそうな事から作れそうな物を作る(概念の応用)

初めに本を読む時には、完全に理解しようとせず、さらっと流し読みをする程度でよいです。何冊か読んでるうちに同じ様な内容があるのに気づくと思います。そして、共通してるところを認識できると概念の獲得ができます。

例えば、Unityってたぶんこういうものだな?オブジェクト、コンポーネントってこういうものだな?というのを動画や図解の多い本などでイメージしながら見て、実際の概念とのズレを修正します。そこで具体的にコードを書く作業を行うと、知識として頭に入れることができます。

次にできた事を使ってオリジナルのアプリを作る。そこでできた事とできなかった事をしっかり覚えておいてください。できた事だけを使って自分なりの小さいアプリを作ります。この時にコピ&ペーストやネットで調べたりしても全然かまいません。元のソースコードを少し変更して自分なりの物にするというのもありです。

概念を理解すると応用してオリジナルのコードが書けるようになる

インプット→アウトプット→フィードバックを繰り返すと知識+経験が積み重なり己自身の技術になります。もちろん人によって習得できる速度は違いますが、技術を取得する本質には変わりはありません。

そして、初心者にとって一番大変なのが最初の積み重ねのループを始めるところです。ここで全体のイメージを把握しやすい動画や良書があると躓きにくくなります。具体的には以下の絵が多くわかりやすく説明されているものがおススメです。

終わりに

日本の学校教育では、テストで得点を取るために、暗記して完璧に覚えたりしなければなりませんが、プログラミングの技術を習得するには、まず全体像を把握する方が大事です。その上でイメージを固めて細部を掘り下げるという感じです。

実際に慣れてるプログラマーでもググったりドキュメント見ながら作るので、完全に暗記する必要はありません。

何度もインプット→アウトプット→フィードバックを繰り返すと技術が定着するからです。あくまでも覚えるのではなく、技術を習得して、自分なりに好きなアプリを作れるようになればそれでOKです。