Dado el siguiente ejemplo, ¿uno es objetivamente mejor/más rápido/más seguro que el otro? ¿Debería la instanciación literal de objetos ser una mejor práctica donde es práctico?¿La instanciación de objeto literal es más rápida que las propiedades de configuración?
¿Dónde es inadecuado?
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 };
}
La IL generada a partir de esos dos métodos debe ser idéntica. Entonces, no. –
Una línea en lugar de tres y más claro acerca de la intención y el efecto. Podría ser 10 veces más lento y aún sería una buena idea. No puedo comprender la fijación de las personas en las pequeñas diferencias de rendimiento (como un enfoque predeterminado, estoy feliz de optimizar las zonas de conexión). – delnan