プログラミング学習したい。
でも作りたいものが思い浮かばない・・・。
そんな悩みを感じているのではないでしょうか。
大丈夫です。
私も感じてきたことですし、同じように悩んでいる人もたくさんいます。
しかし何も作りたいものがないまま勉強を進めようとすると、どこかでやる気を失ってしまうかもしれません。
途中でプログラミング学習が止まってしまうことになります。
それってモッタイナイですよね!
この記事では、次の2つを書きました。
- 作りたいものがない方におススメなもの
- 効率的な学習方法
何年もプログラマーとして働いてきて感じますが、現場で初めて関わるプログラミング言語を使い始めるときでも、目に見える目標があって作るからこそ覚えやすいです。
いきなり仕事として作るわけではなくても、何か形になるような作りたいものを見つけてもらえればと思います。
目次(リンク)
直近の目標なしで学ぶのはシンドイ
プログラミングを学ぶ理由は何でしょうか!?
- IT転職したいから
- 学校の課題だから
- 副業で稼ぎたいから
色々あるでしょう。
収入面とか課題とか、何か解決したいことがあって学ぶ。
素晴らしい事なのですが、プログラミングと直接結びつきづらい目的です。
その目的にたどり着くまでの間に、何か小さい目標がいくつか必要でしょう。
参考書を買って普通に進めていくと、最初の方は変数や文法、関数などの使い方だけになるはず。
そうすると、「これを学んで、結局何の役に立つの?」と言うことに陥りやすいです。
まだ勉強を始めて間もないですから、ソースコードを書いていって、その先に出来上がるモノのイメージがあまりできません。
頑張った成果として見えるものがないと、普通は簡単に挫折してしまいます。
挫折を回避するためには、何か動くものを作ると良いでしょう。
目に見えて「出来た!!」と実感できるので、「学習が進んでいる」、「自分にも出来る」と感じられて楽しくやっていけます。
最初は作りたいものが無くても当然
何か動くものを作ると言っても、何ができるんだ!と思ってしまいますよね。
難しすぎるモノは、最初から作ろうとは考えづらいですし、プログラミングでどんなことが出来るのかなんて想像しづらいはず。
「こんなものを作りたいなぁ」なんて、思い浮かばなくても無理はありません。
そんな時は、何かお手本になるものをマネして作ると良いでしょう。
世の中にはサンプルコードと言うものがあって、ネットで公開されていたり、参考書に付いていたりします。
サンプルコードと解説のある参考書を使う
プログラミングを勉強し始めてから、
「こんなに数式をたくさん並べて、どうやって動くモノに繋がるか分からない」
って感じていると思います。
なかなかイメージしづらいですよね。
でも大丈夫です。
そのイメージしづらいモノを、最初からわざわざ自分で考えるなんて、普通出来ません。
まずはお手本になるソースコードを見ながら、コピペではなく自分で書いてみることです。
サンプルコードが載っている参考書などもありますし、ネットで公開されているものもあります。
タイプミスなく入力して実行すれば、ちゃんと動作してくれるでしょう。
ちゃんとプログラミングスキルが身に付きやすいのは、次のやり方です。
ソースコードと解説を読んだら、いったんそのソースコードを見えないように隠しておいて、思い出しながら入力してみましょう。
分からなくなったら、またお手本を見て隠して思い出しながら書く。
その繰り返しです。
ただ書き写すよりも考えながらやっていくことで、だんだん「手が覚えていく」のが実感できると思います。
例えば、Pythonなら次の本など。
おすすめなのは、簡単なゲーム
作りたいものが何もない、と言う方におススメなのがゲームです。
とは言っても、オンラインゲームなどの難しいモノではありません。
まずはじゃんけんやポーカーなど、簡単なところからです。
自分が作ったものを実行して、何か入力して反応が返ってくると、ちょっとした達成感を感じます。
テトリスやぷよぷよなどの落ちゲーも良いでしょう。
「落ちゲー サンプルソース」のようなキーワードでGoogle検索すれば、たくさんの解説サイトが見つかります。
説明されている通りに作ってみて、ちゃんと動くか見てみてください。
動作確認が出来たら、今度は自分なりにアレンジしながら、書きかえる箇所のロジックがどんな意図で書かれているのか理解を深めていくと良いです。
まとめ:まずはマネしてみる、ショボくても作ってみる
作りたいものがないなら、
- サンプルソースをマネしてみる
- かんたんなゲームを作ってみる
ここから始めてみると良いですよという内容でした。
お金を出して買うようなゲームと比べるとショボいかもしれませんが、自分で作ろうとしてみると意外と大変なことが分かるでしょう。
難しすぎず、簡単すぎず、勉強するうえでちょうどいい難易度になってくれるはずです。
楽しくプログラミング学習を進めてもらえれば幸いです。