コードは覚えるな考えろ

公開

構文を丸暗記するより、どう動くかを考える癖の方が、結局は長く効くと思っています。

コードは覚えるな考えろ、というのは少し強い言い方ですが、自分の感覚にはかなり近いです。構文は忘れても調べ直せます。でも「この入力が来たらどう分岐するか」「どこで状態が変わるか」を考える力は、毎回の実装で使います。

暗記だけでは動かせない

iffor の書き方を覚えていても、何を条件にして、何を繰り返したいのかが分からなければコードは前に進みません。だから本当に必要なのは、記号の知識より、処理の流れを頭の中で追えることだと思っています。

これは Minecraft mods に憧れて、いろいろ実験していた頃からずっと同じでした。

考えるべきは、入力と出力

何かを作る時にまず見るべきなのは、「何を受け取って、何を返したいのか」です。入力と出力が見えるだけでも、かなり道筋が立ちます。

そこから分岐、繰り返し、状態変化を足していけば、構文はあとから付いてきます。

分からない時ほど、小さく切る

考えろと言われても、いきなり大きな問題は考えづらいです。だから自分は、分からない時ほど処理を小さく切ります。一個ずつ「ここはどうなる?」を確認していく。

このやり方だと、覚える量ではなく、追いかける量に変わるので、かなり楽になります。

今は AI があるからこそ、なおさら考える

AI がコードを出せる時代でも、考える力の価値は下がっていません。むしろ、出てきたコードを読んで「これで本当にいいのか」と判断する側の思考が重要になっています。

丸写しできる時代だからこそ、考える人と考えない人の差はむしろ広がる気がします。

だから、覚えるより理解したい

コードは覚えるな考えろ、という言葉を自分なりに言い換えるなら、「覚えるより理解したい」です。書き方は後からいくらでも拾えます。

でも、なぜそう書くのかを理解している人のコードは、直せるし、応用もできます。そこを大事にしたいです。