設計の問題とか
まぁ、なんというか、言語を交換しただけで安全になるわけないのはその通りなのだけど。
言語とかライブラリの設計をみたときに、それはまずいだろーと思うことはあったりするのではないかな。
例えば、以下の PHP のコードの問題点にすばやく気づけるかどうかとか。
<?php /** * Returns if $str starts with $prefix */ function starts_with($str, $prefix) { if (strpos($str, $prefix) == 0) { return true; } else { return false; } } ?>
あと、「"」を含めて実体参照化する機能があるかどうかとか、RDB を利用する場合に Prepared Statement が利用しやすいかどうかとか。
安全なアプリケーションを作成するのにはさまざまなスキルが必要なんだけど、それ以前の単純な落とし穴にはまりやすい/はまりにくい言語っていうのはあるかなぁ、と思うのだがどうか。