これはかなり些細なことですが、人々の意見を聞いてみたいと思います。
プロパティを介してアクセスする辞書がある場合、これらの形式のどれをプロパティに使用しますか?
/// <summary>
/// This class's FirstProperty property
/// </summary>
[DefaultValue("myValue")]
public string FirstProperty {
get {
return Dictionary["myKey"];
}
set {
Dictionary["myKey"] = value;
}
これはおそらくそれを行うための典型的な方法です。かなり効率的で、理解しやすいなどです。唯一の欠点は、キーのスペルを間違えたり、1つのインスタンスなどを変更したりする可能性があるため、キーが長くなったり複雑になったりすることです。
/// <summary>
/// This class's SecondProperty property
/// </summary>
[DefaultValue("myValue")]
private const string DICT_MYKEY = "myKey"
public string SecondProperty {
get {
return Dictionary[DICT_MYKEY];
}
set {
Dictionary[DICT_MYKEY] = value;
}
これは少し複雑ですが、安全性が向上しているようで、「コードコンプリート」ソリューションとして私が考えるものに近いものです。欠点は、プロパティの上に///ブロックと[DefaultValue()]ブロックがすでにある場合、そこに少し混雑し始めることです。
では、どちらが好きですか、そしてその理由は何ですか?誰かもっと良いアイデアはありますか?