2007年02月07日

T先生に対する(個人的な)疑惑

以前equalsを『えくわるず』と読んだ事を紹介したT先生。この先生に対して個人的にではあるが、ちょっとした疑惑を抱いている。

Javaの講師なのに実はJavaよく知らないんじゃなかろうか。

例えばある日、次のような感じのコードを書いていた。


class Hoge {
    void f() {
        String str = new String();;

        str = "文字列";
    }
}

……何だこの初期化。中身なしのStringで初期化して、それに文字列を追加?意図が判らない。

という訳で質問してみた。
天井冴太 「先生、その初期化って意味無いんじゃないですか?」
T先生 「え?だって文字列を格納する前にオブジェクト生成しないと。」

ダウト。
文字列の代入の部分でオブジェクト生成される。仮に代入前にオブジェクトの生成が必要だったとしても、そもそもStringクラスは定数文字列。上記のようなコードで上手くいく筈がない。つかコレって常識じゃないのか?私はJava食わず嫌いしていた時からこの事は知っていたんだが。

天井冴太 「……ですよ?Sunのリファレンスにもそう書いてありますが。」
T講師 「あ、そう?でも、ま、念の為に初期化するって事で。」


ちょっ、だから意味無いって。言語の開発元のリファレンスさえ信用しないのかあんたは

他にもオーバーフロー起こすようなコードを平気で書いたり、それを指摘しても修正しなかった(たった1つのif文追加するだけなのに)り、マジックナンバーはボンボン出てくるわ、メンバフィールドは露出させまくりだわ……『Javaが使えるかどうか』以前にプログラマとしてアヤシサ爆発なのだ。……おっかしーなぁ、この学校入る前に聞いた説明だと『講師は全員業界の人間』って話だったんですが……?

……つか、この頃の授業で出てくるコードは、もしかしたら入門書見ながら打ってるんとちゃうやろか。PCで死角になってよく確認出来ないんだけど。そんな気がする。

意味無い
むしろ無駄なオブジェクト生成処理が入る為、パフォーマンスを悪化させるだけ。まぁ、この程度ならコンパイラが最適化してくれるだろうとは思うけど。
講師は全員業界の人間
その説明を信じていた時代が俺にもありました。( ´・ω・`)
まぁ、多分、『講師は全員"元"を含めて業界の人間』って意味だったんだろうけど。非常勤なら兎も角、時間的に常勤を現役の人間が出来るとも思えないし。
ラベル:java
posted by 天井冴太 at 19:11| Comment(0) | TrackBack(0) | Programmers | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください

この記事へのトラックバック