プログラミングの禁じ手

何だか以前よりプログラムを打っている時間が増えております。ActionScriptを触る時間は減ってしまいましたが、頭が鈍る心配は無さそうで何より。


さて、調べ物をしていたら偶然発見しました。
http://www.cmagazine.jp/src/kinjite/cpp/index.html
C言語版もありますが、趣味でやっている方がオブジェクト指向系なので、考え方が似ているC++版です。これはなかなか面白いです。プログラマーあるあるでしょうか。僕も結構引っかかっております。


僕の場合、特に継承関連がひどいです。多重継承上等、継承レベルも出家した人のふところ並みに深いです。
例えば、「Sword」はステージに配置したキャラやら効果やら物体はすべてひとつのクラスを継承しています。そこから派生しまくるので、レベルも上がります。例えば効果なら
「Task->ObjectTask->Effect」
プレイヤーなら
「Task->ObjectTask->Character->Player」
敵なら
「Task->ObjectTask->Character->Enemy->それぞれの敵」
みたいな感じです。
正直、記事のような「全貌がつかめない」といった経験はないのですが、プログラムをややこしくしていることは事実のようです。


あと、継承と所有の話も興味深いです。
「Sword」を作っている時、継承を使いまくっていたところ、ある時に「これ、継承する必要無くね?」と気づきました。この記事を読んで、これは皆引っかかるところだったのかしらと少しだけ社会に触れることができ、心が温かくなりました。


当然ながら、時と場合によりけりな部分も多少ありそうですが、読みながら「あるあるあるある」とうなづけるのがとても面白かったです。
実を言うと、まだ全部読んでないので、またゆっくり読みたいところです。