この記事ではプログラミングの勉強法についての話をしていこうと思います。
プログラミングを勉強するにあたって真っ先に思い浮かべるのは「プログラミングスクール」に入校して専門に特化した先生に教えてもらいながら覚えた方が良いのではないかと考える方は少なくないはずです。
ただ、今のネット社会では調べたい情報の大抵はネットで検索すれば出てきます。
それは、プログラミングに関しても例外ではありません。
なので、独学でプログラミングを習得することも全然不可能なことでは無いんですね。
「スクールに入校する」、又は「独学で頑張る」
この辺りは人それぞれかと思いますが、どちらにせよ必ず念頭に入れておいた方が良いのが「勉強法」です。
この勉強法(勉強の仕方)によって、プログラミングの習得の効率が天と地ほどの差が付くのは事実です。
また、効率の悪い勉強法は挫折の一番の原因でもあり、途中で投げ出すのは凄く勿体ないです。
なので、以下では「効率の良い勉強法」と「非効率(やってはいけない!)な勉強法」について詳しく説明していきます。
もくじ
絶対にやってはいけない非効率な勉強法
プログラミングを勉強するにあたって絶対にやってはいけない非効率すぎる勉強法とは何か。
それは、、、
とにかく「暗記」しようと何度も同じところを繰り返し学習する
ノートに細かく「メモ」を取って綺麗にまとめる
大きく分けると、この2点です。
これは、プログラミング経験者が良く言う事なのでもしかしたら既に聞いたことがあるという方もいるかもしれませんが、紛れもない事実です。
でも、これって学校の授業では当たり前の勉強法ですよね!?
暗記していないと、科目によってはテストで点数を取ることが出来ませんし、そもそもノートをしっかり取っていないと先生や親にブチギレされるし…
ただ、プログラミングの学習法は全く違っていて、普通に学校に行っていたころと同じように学習していると習得が遅くなる可能性が非常に高いです。
その理由について話していこうと思います。
プログラムを「暗記」するのはまず不可能!
一言でプログラミングといっても様々な言語が存在し、その範囲は膨大です。
簡単で入門的な部分を学習しているうちは暗記することも不可能ではないんですが、徐々に学習を進めて難しい記述になってくると暗記が不可能であることに気が付くはずです。
それでも、プログラミングの学習方法が分からない段階では「頑張って暗記しなきゃ」と思って、同じ場所を何度も何度もループしてしまいがちですが、これがプログラミング学習において最大の罠だと思っています。
なぜなら、このループ地獄に陥るとプログラミングの習得がかなり遅くなってしまいます。
最悪、「自分には無理」「才能が無い」と勘違いしてしまい挫折し諦めてしまう方も非常に多いと聞きます。
もし暗記が出来なくて悩んでいる方がいれば声を大にして言いたいのが「それが普通」だという事。
全然、全く悩む必要はありません。
「メモ」を取っても使わないことがほとんど
「メモ」を取ってしっかりと勉強した「記録」を残しておく。
そうすれば、分からない時にパッと開いてパッと対処できる。
一見、大切なように思えますが実際にはメモをするのは時間を消費するだけの行為で終わってしまう事が多いです。
先ほどの「暗記」の部分でも書いたことと同じことが言えるんですが、初期の入門的なHTMLやCSSなら簡単に楽しくメモを取れると思いますが、記述の複雑な言語とかになってくると記号だらけや半角スペースの有無などメモするのが超難しい、というか無理に感じるはずです。
さらには、プログラミングは範囲が広いので一つ一つメモに取っていくと、それだけで相当な時間を費やすことになってしまいます。
しかも、そのメモを使う可能性が無い(もしくは低い)となると悲しい話ですよね。。。
「暗記なし」「メモ取らず」でどうすれば良いか
では、「暗記」もせず「メモ」も取らずにどうやって学習するのかというと、プログラミングに欠かせないのは「検索力(調べる力)」です。
つまり、分からないことがあれば、その度にGoogleやYahoo!で検索して調べるのが重要で、絶対に無くてはならないスキルとなってきます。
検索するには「検索の仕方」によって答えを見つけられやすかったり、そうでなかったりするので、日ごろから分からないことはすぐ他人に答えを求めず、まずは自分で検索して調べてみるという癖を付けておくのがオススメですね。
実は現役でプロのエンジニアでも、すべてを暗記しているということはまず無く、分からないこと(もしくは忘れてしまった部分)は検索しながらシステムやサービスを構築しています。
もちろん、普段から頻繁に使用するコードは暗記していますが、分からないことを調べるというのは現役のエンジニアにとってもごくごく普通のことです。
そして、基本的に探したコードをコピー&ペーストすればいいので、無理して覚える必要もノートにメモを取る必要もないという事なんですね。
つまり、学校の勉強法と決定的に違うのは、プログラミングは調べまくって(カンニングしまくって)答えにたどり着ければOKということです。
爆速!効率の良いお勧めの勉強法
「絶対にやってはいけない非効率な勉強法」を知った上で、今度は効率の良いオススメの勉強法について詳しく説明していきます。
- 軽く勉強してすぐに実践(インプット ⇒ アウトプット)
- 作りたいサービス(プログラム)を決める
- それを作るために必要なものを探す
- 必要だと思うコードをコピー&ペーストでとりあえず構築してみる
- 動作確認 ⇒ 必要に応じて修正を繰り返し完成させる
軽く勉強してすぐに実践する
プログラミングを勉強するにあたって、「プロゲート」や「ドットインストール」などで無料で基礎的な知識を学ぶことが出来るので、初心者がまずプログラミングとはどういうものなのかを知るためには非常にオススメのサービスです。(※有料もあります)
ただ、ここで注意していただきたいのが覚えるまで何回も何回も同じレッスンを見直すことです。
非効率な勉強法でも紹介しましたが、暗記しようとするのはあまりにも効率が悪すぎるんですね。
なので、プロゲートやドットインストールなどのサービスでの勉強方法としては、プログラミングの基礎を勉強するのと同時に「これを習得すればどんなサービスが作れるのか?」ということに着目して学習するのがいいですね。
そして、勉強したものを実際に書き出してみる、つまりインプットしたら「すぐにアウトプット」する。
これがプログラミングを爆速で習得する最短の近道であると断言できます。
なんとなくでも基礎が掴め、何が作れる(どんなことが出来る)のかザックリでも分かったら、何度も繰り返し学習せずに次の段階へ行ってみましょう!
作りたいサービス(プログラム)を決める
「インプット ⇒ アウトプット」するには、実際にコードを書いて作品を作ってみるのが一番です。
つまり、ゴールを決めるんですね。
作りたいサービスはホント何でも良くて、そんな立派なモノを作るとかじゃなくて全然OKです。
むしろ、いきなり高度なモノなんて作れる訳がありませんから、最初はすぐ作れるようなメチャクチャ簡単なものがいいですね。
ここで重要なのは、
- 何か作ってみる(ゴールを決める)
- 作るのは超簡単なモノでOK
ということです。
まず、ゴールを決めることで非常に広範囲なプログラミング言語の中から必要なものだけ学べば良くなるので効率性がグンと上がります。
さらに、作品を作ってインプットとアウトプットを繰り返し行えば覚えるスピードも爆発的にあがります。
この時のポイントは「超簡単な作品」という所にあって、とりあえず作品を完成させれば確実に成長できているという実感が得られモチベーションに繋がります。
そういった小さな成功体験を積み重ねていって、少しずつレベルを上げていけばいいんですね。
作りたいものを作るために必要なモノを探す
作りたいプログラムを作るためには、それに必要なプログラミング言語、その他にも必要に応じてソフトのダウンロードや、あると便利なモノなんかもあるでしょう。
なので、作りたいサービスが決まったらとりあえず「〇〇を作るために何が必要か?」ということをググりまくって情報を集めます。
便利そうなウェブページはブックマークに登録しておくと、後々便利だったりするのでオススメです。
※プログラミングをやっているとブックマークが溜まりまくってくるので、作りたいサービスごとにブックマークフォルダーを作るなどして管理すると便利ですよ!
プログラミングの書籍も充実しているので、自分が作りたいものに合った書籍があればそれを読んでみるのもいいですね。
作りたいものが決まれば、大抵はググれば何が必要かは出てくるかと思いますが、ググりまくっても見つけることが出来ない場合は詳しい人に聞いてみるといいですね。
知人でプログラミングに詳しい人がいなくても、ヤフー知恵袋やツイッターなどで質問してみると大抵は快く答えてくれるはずです。
有料になりますが「MENTA」では、プログラミングに関することであれば何でも質問し放題というサービスもあります。
コピー&ペーストでとりあえずコードを書いてみる
作りたいものが決まって、それを作るために何が必要なのかが分かれば学習しつつ実際に手を動かしてコードを書いてみるのが大切です。
ググって出てきたコードをそのままコピペでもOKです!
とりあえず実際に作ってみると色々なものが見えてきます。
「コレを記入したらどうなるだろう」
「こっちじゃなく、こっちを入力したらどう変化するんだろう」
色々と入力して自分の力で何かを作るのは本当に面白いです。
時にエラーが出て、何時間も画面とにらめっこすることもあるかもしれません。
というか、最初は上手くいかないことがほとんどです。
思い通りにいかない時こそ、検索しまくって情報を集めてみましょう。
何時間も悩んでいる時間は無駄に思うかもしれませんが、自分の力でそれを超えた時、信じられないくらいレベルアップしているはずです。
色々と試してみて思い通りに動作(表示)したときの嬉しさはハンパないです。
でも、どうしても分からない時は悩みすぎずに他人に聞いてみましょう。
※他人に聞くことで新しい発見をすることも多々あります。
出来上がったら動作確認or必要に応じて修正
一通り出来上がったら思い通りに動作(表示)するか確認しましょう。
思い通りに動かなかったり、表示が崩れている場合は何かしらの不備があるので修正 ⇒ 確認 ⇒ 修正 ⇒ 確認……を繰り返して完成といった感じですね。
こんな感じで、プログラミングを爆速で習得するためには「とりあえず何かを作ってみる」というのが手っ取り早く、かつ確実です。
ホント何でもいいので作りまくるというのがプログラミングを習得する近道であると断言できます。
最初はショボくて当たりまえですが、そういった作品を残して後で見返してみると「最初はこんなんだったな(笑)」と良い思い出になるかもしれませんね。
まとめ
プログラミング学習で絶対にやってはいけないこと
- 暗記しようとする
- ノートに細かくメモを取る
プログラミング習得において、かなり非効率なので絶対にお勧めしません!
プログラミングを爆速で習得するオススメの学習方法
- 勉強した内容をすぐに書き出してみる(インプット ⇒ アウトプット)
- 作りたいモノを決める(ゴールを決める)
- それに必要な情報をググりまくって集める
- とりあえず書き出してプログラムを作ってみる
- 一通りできたプログラムの確認と修正を繰り返し完成させる
「とりあえず作ってみる」コレに尽きます!
コメントを残す