「車輪の再発明は、するな」といった格言があります。
意味はウィキペディアによると
「広く受け入れられ確立されている技術や解決法を(知らずに、または意図的に無視して)再び一から作ること」だそうです。
当時、言葉通りに解釈していました。
この言葉を知ってから、ゲーム開発で個人ブロガーさんのコードを
そのまま(あるいは少し改変して)使うようにしていました。
確かに既知のコードを使うと時間の短縮になるので、開発スピードはあがります。
そして、そのコードを導入した日は進捗が出るので、満足感はたまりません。
しかし、開発が進み、改造したいなと思ったときに、問題にぶつかります。
- ほぼコピペなので、改造しにくい。
- 改造できても理解しにくいコードになる。
- よくよく見ると知らない関数や機能を使っていて、思い出すのに時間がかかる。
(私は三項演算子に躓きました。)
といった、楽をしたツケが回ってくるのです。
- 結局コード解析をしなければならず、時間を消費する。
- 変数名が分かりにくかったり、コードの間に切り込んでいくのでバグが生まれやすい。
などなど、私自身も痛い目を見ました。
じゃあ、どうするの?
私なりの解決策を紹介します。
結局かいっ!!って内容ばかりですが、その通り、結局やるしかないのです。
一旦はコピペをする。
まずはコピペをして動作確認します。
そもそも、今あるコードとの整合性なんかも確認してする必要がありますし。
変数名を自分流に変更する。
自分なりの名前のルールがあるかもしれませんので、
そこは自分流に変えます。
Ctrl+Hで置換できるので、それをするだけでも、見やすくなります。
プログラムを読むというより、文字を読む感覚でしょうか。
意味を理解し、使い慣れたコードにやり直す。
結局はコード解析です。
自分で理解していないコードほど後々厄介になってくるし
機能追加するなら尚更。
再発明は不要でも再設計は必要
何もないところからコードを作ることを再発明とするなら、
コピペして解析して自分で使えるようにすることを再設計と呼べるのではないでしょうか。
何より自分で書いたコードで動く方が達成感もあって気持ちいいので
時間はかかるのですが、解析はチャレンジしたいものです。
コメント