私はC#で自動実装されたプロパティが大好きですが、最近、この象が私のキュービクルに立っていて、彼をどうするかわかりません。
自動実装されたプロパティ(以下「aip」)を使用すると、内部で使用するプライベートバッキングフィールドがなくなります。aipには副作用がないため、これは問題ありません。しかし、後でgetまたはsetに追加の処理を追加する必要がある場合はどうなりますか?
次に、ゲッターとセッターを拡張できるように、バッキングフィールドを作成する必要があります。クラスを使用する外部コードでは、違いに気付かないため、これは問題ありません。しかし、現在、aipへのすべての内部参照は、プロパティにアクセスするときにこれらの副作用を引き起こします。ここで、バッキングフィールドを使用するには、onceaipへのすべての内部アクセスをリファクタリングする必要があります。
だから私の質問は、あなたのほとんどは何をしているのですか?自動実装されたプロパティを使用しますか、それとも常にバッキングフィールドを使用しますか?副作用のあるプロパティについてどう思いますか?