最近、業務システムを再構築すると言う話が聞く機会が増えています。やはり、景気回復傾向というのは本当なのでしょうか...
そこで気になっていることのひとつに開発言語の選定があります。「次のシステム開発ではJavaを使いこと」とRFPにも明記していることが非常に多いです。では、「なぜ、Javaを指定したんですか?」とたずねると、「生産性が高く、保守効率も良い。だから、開発費用も削減できるから」と...
確かに、「開発費用を削減したいから、開発言語も生産性の高いもの」というのは正論です。従来の「開発はベンダー任せ」という姿勢から比べると、好ましい傾向です。
確かに、ものの本によれば「オブジェクト指向は生産性が高い」「保守効率が良い」とあるのですが、実際にプログラミングした経験からすると、そうともいえないこともあります。
たとえば、「カプセル化によって、保守効率が向上」とはよく言われます。しかし、正しくは「カプセル化」が保守効率を向上させるのではなく、「部品化の設計がしっかり出来ていること」が保守効率を向上させます。確かに、Javaの特性として再利用に向いていることは否定しませんが、モジュールの親子関係もなく作られたシステムは、きっちり設計されたアセンブラよりも保守効率が低かったりします。
教科書的に言えば、「オブジェクト指向は生産性・保守性が向上する」のですが、実際には設計者のスキルが大きくものを言います。
プログラミング言語はあくまでも道具のひとつです。道具をひとつ変えただけで誰もが「生産性・保守性向上」の恩恵を受けられるわけではありません。
コメント