こんにちは。こんばんは。おはようございます。
リキトです。

今日はプログラミングの独学の基本は簡単なアプリを作って基礎知識をつけることであるということについて書きます。
2019年5月令和元年、現場が変わり、vue.jsというJavaScriptのフレームワークを使ったアプリ開発をするのですが、参考書を使って勉強していてより基礎が身につく方法に気づいたのでそれを解説します。
5月の現場からVueを使うんだけど、参考書やってて思った。
参考書の内容を一からやるのではなくて、簡単なアプリでいいから、それを作りながら覚えていったほうが早い。
必要になったら、基礎的なところを学ぶ。
やることリストとかじゃんけんアプリとか本当にそんな簡単なやつでいい。
— リキト/フリーランスエンジニア (@rikipedia_rkt) 2019年4月29日
目次
プログラミングの教材や参考書は国語辞典と同じ
まず、初めにプログラミングの教材や参考書は国語辞典と同じです。
国語辞典にはいろんな言葉があります。
これが、プログラミングの参考書でいうところのメソッドにあたります。
以下の画像で国語辞典とプログラミングの本の比較します。

こんな感じで様々なメソッドの基本的な使い方が載っているんです。
つまり、プログラミングの参考書のほとんどは高校の物理でいうところの、速度・時間・距離を求める方法レベルのことまでなら学べます。
だから、プログラミングの参考書は国語辞典レベルなのです。
プログラミングの学び方と知識を身につけるコツ
では、プログラミングの学び方と知識を身につけるコツは何かというと、簡単なアプリを使ることです。
簡単なアプリを使って、基本を身につけるのが早いです。
テニスをイメージしてください。
サーブの返し方を学んでも実践で使えなくては無意味なのと同じように、プログラミングもメソッドの使い方を学んでも、実践で使えなくては何の意味もありません。
そこで、簡単なアプリを作って基礎を身に着けていくのが一番の王道なのです。
最近のプログラミングの参考書の作りがどうなっているのかというと、

こうなっています。
なので、プログラミングを勉強する場合は、この後半のアプリ作成から学んで、様々なメソッドがどのように使われるのかを考えた上で覚えていくのが早いです。
来月から現場でvue.jsをやるんだけど、本日付でこの参考書一通り終わった。
Vue CLI、Vuex、Vuer Routerも基礎的なことは分かったので、あとは復習しつつ、nuxt.jsも学びつつ、これらのモジュールを使って学習していこう。
やっぱりGWは遊ぶよりも勉強する方が好きだわ。 pic.twitter.com/vL9onyU6JY
— リキト/フリーランスエンジニア (@rikipedia_rkt) 2019年4月30日
僕がVue.jsを学ぶために使用したこの参考書もそんな感じになっています。
一から全部やるのでは効率が悪いです。
なので、アプリ作りの章から初めて、メソッドの仕組みが分からないときに、基礎のところを読んで学んでいくのが一番覚えやすいです。
プログラミング未経験の人こそ簡易アプリで学習しよう
これは特にプログラミング未経験の人にこそ、肝に銘じてほしいことです。
簡易アプリを作って学んでいくのが一番です。
その理由は先程説明した基礎を覚えやすくするためだけでなく、転職の際にポートフォリオを求められることが多いからです。
そのポートフォリオ作りの一環としてもやるのです。
つまり、アプリ作りをしながら基礎を固めるこの方法はプログラミング未経験の人にとっては、基礎も身に着くし、ポートフォリオもできるので一石二鳥です。
アプリ作りをしながら学べる参考書だと、
とか、
がそのいい例です。
どちらも僕は購入して学んだことがありますが、「アプリを作って覚える」を軸に書かれているので、初心者には最適でしょう。
今はプログラミングの学習サイトがある
それに、今はプログラミングの学習サイトがあります。
では、ここでは、ドットインストールのレッスン一覧を見てみましょう。

上のように、JavaScriptのアプリを作って学ぶ口座が結構あります。
他の講座も見てみましょう。

PHPも同じようにアプリ作りをしながら学べる講座があります。
しかも、どちらも月1000円程度で一つの言語だけではなく、そのサイトにある講座を存分に学べるので参考書を買うよりもお得です。
プログラミングは勉強法が重要
結局、プログラミングは勉強法がめちゃくちゃ重要です。
基本的なことばかり学んでいても、それでは実践力は身に付きません。
高校受験を思い出してください。
教科書の練習問題程度の内容だけ学んでいても、高得点は取れない上に志望校には合格できません。
受験までに受験を想定した実力テストや模擬テストを実施して、実力を上げたはずです。
プログラミングも同じで実践力を鍛えて、極力現場でも力を発揮できるように学んていくことが大切です。
ですので、まずやってみて、分からないことやつまづいたところが出てきたら、基礎に立ち返って学ぶというのが一番実力が付きます。
早速実践してみてください。