フィールド・メソッドが全てstaticなJavaプログラムを目にする機会があって、「これが噂のstaticおじさんプログラムか!」と感激したw まさか単なるネタだと思っていたものを実際にこの目で見ることが出来るとは…。
あまりに感激して嬉しくなって気分が良くなったので、オブジェクト指向バリバリのプログラムに書き換えてみた(爆)
使い捨ての、一度実行したら結果を目で確認して終わり、というプログラムならstaticだけで作ることもあるけど、本格的なプログラムがそれじゃ問題大きすぎるよなぁ。
という流れで、もしstaticプログラムが納品物だったら…と想像してみた。
特にこのstaticプログラムは、C言語の人がJava“の文法だけ”を覚えた感じがありあり。
つまりはJavaの初心者が作ったものとしか思えない。
ということは、Javaの作法や定石・はまり所が分かっていない可能性が大。つまり潜在バグのリスクが大きい。(例えば、Servlet(Struts1のActionクラス)のプログラムを書かせたら、マルチスレッドのことを意識せずフィールドを使いそう)
自分が検収担当者やソースレビューの担当者だったら、こんなプログラムは一目で却下するなぁ。
あるいはプロジェクトリーダーとしてメンバーを選ぶときにこんなプログラムを出されたら、さすがに断るなぁ。
こんなソースを見せられたら、まず考えるのは「何のジョークだろう?」。
でもさすがに納品物ならジョークなプログラムを出すような会社は無いだろう^^;
次に考えられるのは、新人教育の一環として、新人に作らせたのか?
でもそれならソースレビューで直させているはず。
それがそのまま出てきたのならば、ソースレビューをしていないか、レビューアーのレベルも低いということ。
新人じゃないとすれば、さらに根が深い。
特にアーキテクト(最初に雛形を作る人)がこんなだったとしたら、その会社全体のレベルが疑われる。
現実にありそうなのは、(忙しくて)誰もチェックしていないということ。つまり、品質の低いプログラムがあっても野放し。
結論:いずれにしても、staticプログラムが出てくる時点で、アウト! 信用を失う。
怖いですね(汗)
…いや待てよ? 検収側がstaticおじさんなら、逆にオブジェクト指向なプログラムを出すと却下されるのか? それはそれで怖いなw