次の例を考えれば、客観的にはより良い/より速い/より安全ですか?リテラルインスタンス化をオブジェクト化するのが実用的な場合にはベストプラクティスでなければなりませんか?プロパティの設定よりもオブジェクトリテラルのインスタンス化が高速ですか?
どこが不適切ですか?
class Person
{
public string name;
public int age;
}
void MakePeople()
{
Person myPerson = new Person();
myPerson.name = "Steve";
myPerson.age = 21;
Person literalPerson = new Person { name = "John", age = 22 };
}
これらの2つの方法から生成されたILは同一でなければなりません。そう、いいえ。 –
3行ではなく1行で、意図と効果についてより明確になります。それは10倍遅くなる可能性があり、それはまだ良い考えである。小さなパフォーマンスの違いに対する人の固定を理解することはできません(デフォルトアプローチとして、ホットスポットをマイクロ最適化するのがうれしいです)。 – delnan