コードの書き直しで失敗

この汚いコード、明日までに書き直しちゃえ! ? @IT自分戦略研究所

なんというか、書き直したわけではないのですが、新しく機能を追加してバグを生んでしまったというお話です。

機能といっても、渡された引数の中身を見て必要ならエスケープする、という単純な事なのですが。 で、書き直した時は従来の機能を損なわずに変更したつもりでした。 しかし、見事に損なっていたわけです。

エスケープするつもりの無いものまでがエスケープされてしまっていました。

敗因は、面倒くさがって自動的に判別させようとした、という事だろうと結論付けています。 エスケープが必要な場合は、スイッチになる引数を渡す、という処理をすればよかったのだと。 今はそう思っています。

…結局、そのバグは下手に触れないので、呼び出し側で何とかしましたが、いずれは直さないといけないなと思いながら、それでまたバグが…と思うとなかなか無理です。

comments powered by Disqus
Built with Hugo
Theme Stack designed by Jimmy