コードは覚えるな考えろ、というのは少し強い言い方ですが、自分の感覚にはかなり近いです。構文は忘れても調べ直せます。でも「この入力が来たらどう分岐するか」「どこで状態が変わるか」を考える力は、毎回の実装で使います。
暗記だけでは動かせない
if や for の書き方を覚えていても、何を条件にして、何を繰り返したいのかが分からなければコードは前に進みません。だから本当に必要なのは、記号の知識より、処理の流れを頭の中で追えることだと思っています。
これは Minecraft mods に憧れて、いろいろ実験していた頃からずっと同じでした。
考えるべきは、入力と出力
何かを作る時にまず見るべきなのは、「何を受け取って、何を返したいのか」です。入力と出力が見えるだけでも、かなり道筋が立ちます。
そこから分岐、繰り返し、状態変化を足していけば、構文はあとから付いてきます。
分からない時ほど、小さく切る
考えろと言われても、いきなり大きな問題は考えづらいです。だから自分は、分からない時ほど処理を小さく切ります。一個ずつ「ここはどうなる?」を確認していく。
このやり方だと、覚える量ではなく、追いかける量に変わるので、かなり楽になります。
今は AI があるからこそ、なおさら考える
AI がコードを出せる時代でも、考える力の価値は下がっていません。むしろ、出てきたコードを読んで「これで本当にいいのか」と判断する側の思考が重要になっています。
丸写しできる時代だからこそ、考える人と考えない人の差はむしろ広がる気がします。
だから、覚えるより理解したい
コードは覚えるな考えろ、という言葉を自分なりに言い換えるなら、「覚えるより理解したい」です。書き方は後からいくらでも拾えます。
でも、なぜそう書くのかを理解している人のコードは、直せるし、応用もできます。そこを大事にしたいです。