ayuina 2012-08-17 07:48:22

[C#] スーパー過ぎるクラス このエントリーをはてなブックマークに追加

投稿者からのアピールポイント

レビューに回ってきたコード。実際には各クラスは別ファイルに分かれていてこの順番に読んでいった。

MyClass1 を見て  ⇒ 実装漏れか?作っちゃった消し忘れたごみかな?
MyClass2 を見て  ⇒ またかよ・・・
MyClass3 を見て ⇒ もしかしてBaseClassを継承したクラスを必ず実装すべしみたいな開発標準でもあるのかな?
BaseClassを見て ⇒ (゚Д゚;)

このレベルのコーダーがGetTypeメソッドを知っていることがむしろ驚きだった。

public class BizClass1 : BaseClass {
   //省略してるんじゃなくてホントに継承してるだけ(なんかコメントはあった)
}

public class BizClass2 : BaseClass {
   //これも省略してるんじゃなくてホントに継承してるだけ(なんかコメントはあった)
}

public class BizClass3 : BaseClass {
   //これも省略してるんじゃなくてホントに継承してるだけ(なんかコメントはあった)
}

public abstract class BaseClass {
    void Method(object paramA, object paramB) {
        // なんか共通的な処理
        if( this.GetType().ToString() == "BizClass1" ) {
            int intA = (int)paramA;
            //Aを使った処理
        } else if ( this.GetType().ToString() == "BizClass2" ){
            string strA = (string)paramA;
            string strB = (string)paramB;
            //AとBを使った処理
        }
    }
    // メソッドはこれひとつ
}

コメント(7)

#2 ayuina 2012-08-17 08:22:40  

あ、書いた人はそんなこと言ってました、しかも自慢げに。僕はトラブル対応に駆り出されてレビューしてるんですけどね?

#3 BeldenDrive 2012-08-18 14:29:10  

私が若かったころは、GetTypeなんて便利なものは無くて。。。。。 と、古き良き時代のころの話を延々とやって、時代遅れの先輩っていうイメージを植えつけてしまうことになりそうだ

#4 Temarin_PITA 2012-08-20 11:03:21  

typeofは、知らないのかな?

#5 s025236 2012-08-21 13:08:26  

理由は忘れたけどJSとPHPで似たような事したことある!

#6 a1cn 2013-02-06 08:56:47  

じ、ジェネリック・・・

#7 migimatsu 2013-08-08 03:40:03  

ま、まあ、処理系の中でやってることを書下せばうんぬんかんぬん


このウンコードに臭った人は、こちらのウンコードにも臭ってます

[Java] is禁止令

このエントリーをはてなブックマークに追加

ウンコードの趣旨とは違い、レビューで指摘...

// Mod yamada Start

// 一般的に考えて真偽値を返すメ...

鑑賞する »

[その他] HOW TO ABC..

このエントリーをはてなブックマークに追加

実際にあった某システムの超重要なマスター...

create table item_master (
 A varchar(2...

鑑賞する »

[C] switch-caseは現場の臭いがする

このエントリーをはてなブックマークに追加

"とりあえず"で書いた 2010 年 4...

// switch-case にしたいが、関数で値を取得しないといけないため、
...

鑑賞する »