プログラミング学習のはじめ方
「ちょっとデキる」から始める
「一通り覚えてから作り始めよう」と考えていると、作り始める日が来ません。覚えることは進むほど増えていくので、全部そろう瞬間が来ないからです。最初の目標は「全部分かっている」ではなく、「調べながらなら作れる」に置きます。
全部覚えてから作ろうとすると、いつまでも作れない
仕事でコードを書いている人も、毎日のように検索しています。書き方をど忘れした、この関数の引数の順番はどちらだったか、というくらいのことを何度でも調べます。暗記しているから書けるのではなく、調べる先を知っているから書けるという状態です。
そう考えると、最初に身につけるべきものが変わります。覚える量ではなく、分からない箇所を「この一行が分からない」と言い切れる細かさです。「なんとなく全部分からない」では検索できませんが、「この記号の意味が分からない」まで絞れれば調べられます。
この細かさは、コードを眺めているだけでは育ちません。動かして、思ったとおりにならなかったところで初めて、分からない範囲が一行まで縮みます。作りながら覚えるほうが早いと言われるのは、根性論ではなく、この理由からです。
コピペしたコードを、あとから説明できるか
見つけたコードを貼り付けるのは、悪いことではありません。分かれ目は、貼る前に「どこを自分用に書き換えるか」を一か所指させるかどうかです。
JavaScript
const userName = "田中";
console.log("こんにちは、" + userName + "さん");このコードなら、書き換えるのは名前の部分だと指せます。指せたなら、残りの行の仕組みを完全に理解していなくても、いったん貼って動かして構いません。指せないときは、その一行だけを調べます。全体を理解し直す必要はありません。
AI に書いてもらったコードでも同じです。動いたかどうかだけを見て次に進むと、少し条件が変わったときに直せなくなります。書き換える場所を指せるところまでは確認しておきます。
覚え方として、貼ったコードには「ここを変えると何が変わる」と一言コメントを残しておくと、後日の自分が読み解く手間がかなり減ります。
同じ結果に、書き方は何通りもある
もう一つ、最初につまずきやすいのが「正解の書き方」を探してしまうことです。
Python
# 書き方その一
total = 0
for i in range(10):
total += i
# 書き方その二
total = sum(range(10))この二つは同じ結果になります。教材によってどちらが出てくるかは違いますが、片方が間違いということではありません。読みやすさや速さで選び分ける場面はありますが、それが問題になるのはもっと先の話です。
同じことを別の教材で調べると、書き方が違っていて不安になることがあります。「自分が習ったほうは古いのではないか」と思い、調べ直しているうちに手が止まる。ここで確かめるべきなのは、どちらが正しいかではなく、いま自分の手元で動いているかどうかです。動いているなら、その書き方で先に進んで構いません。
だから最初は、動くほうを選んで先に進みます。まず動くものを作り、あとから整える。この順番でないと、整った形を目指したまま一行も書けない時間が続きます。
「ちょっとデキる」は、この積み重ねの先にあります。調べながら作ったものが手元に何個か残っている状態のことで、全部を覚えた状態のことではありません。
復習ミニクイズ
プログラミング学習において、レッスンの内容に基づいた「効率的で正しい進め方」は次のうちどれですか?