この質問は、特定の悪いプログラミング手法に関するものです。それについて説明し、なぜそれが悪いのかを説明する良い記事を探しています。残念ながら、私はこの慣行の名前や専門用語を知りません。そのため、代わりにそれを説明して、どのように呼ばれているか教えてください。また、このテーマに関する優れた記事を参照してください。
いくつかの列挙型があるとします:
public enum Day
{
SUNDAY, MONDAY, ...
}
次に、サーバー側のプログラマーが数値の ID を各日に付けたとします。もちろん、正しいことは、サーバー側のコード内でのみ定義および使用される を使用して、それぞれDay
をにマップすることです。代わりに、彼は共通コードを台無しにして、メソッドを追加します。Integer
EnumMap
getId()
public enum Day
{
SUNDAY {public int getId() {return 100;}},
MONDAY {public int getId() {return 101;}},
...;
public abstract int getId();
}
次に、GUI プログラマーは毎日に文字列を付けたいので、独自のものを追加します。
public enum Day
{
SUNDAY {
public int getId() {return 100;}
public String getName() {return "sunday";}
},
MONDAY {
public int getId() {return 101;};
public String getName() {return monday";}
},
...;
public abstract int getId();
public abstract String getName();
}
あなたはポイントを得る...
このことをなんと呼びますか?それについての良い記事を知っていますか?