上司と私は、自動プロパティを使用することの利点と欠点について定期的に議論しています。
public string Name { get; set; }
対
private string name;
public string Name
{
get { return this.name; }
set { this.name = value; }
}
為に
すべてのフィールドがそのようにコーディングされていると、クラスを理解しやすくなり、長期的には多くの時間を節約できるため、それらを使用することを強く支持します(ほとんどの場合、毎回ビットレスコード)。
に対して
フィールドはオブジェクトの状態を反映する必要があり、プロパティを持つフィールドの代わりにプロパティを使用してアクセスすると、デバッグ中にその情報が失われるため、プログラミングの原則に違反していると彼は主張します。(上司、これを読んで、あなたの言いたいことと違う場合は、お気軽にコメントしてください ;))
みんなはこの件についてどう思う?
注:私は重複を見てきましたが、この質問のポイントである反対の点については話していません。「私は彼らを愛している」/「私は気にしない」と言っているだけです。