C# Constructores con cuerpo de expresión

C# Constructores con cuerpo de expresión

1 min de lectura · JANUARY 26, 2025

¿Has escuchado hablar de los Constructores con cuerpo de expresión (en ingles Expression-bodied Constructors) en C#?

Si no es así, ¡no te preocupes! Te lo explico de manera sencilla.

Los Expression-bodied Constructors te permiten simplificar la creación de constructores en tus clases, haciendo tu código más limpio y conciso.

Vamos a crear una clase simple llamada Person con dos propiedades: Name y Age.

public class Person
{
  public string Name { get; }
  public int Age { get; }
}

Normalmente, agregaríamos un constructor de esta forma para asignar estos valores:

public class Person
{
  public Person(string name, int age)
  {
    Name = name;
    Age = age;
  }

  public string Name { get; }
  public int Age { get; }
}

Con los Expression-bodied Constructors, podemos simplificarlo:

public class Person
{
  public Person(string name, int age) =>
    (Name, Age) = (name, age);

  public string Name { get; }
  public int Age { get; }
}

Los Expression-bodied Constructors nos permiten escribir nuestros constructores como una expresión. Esto facilita la lectura y comprensión de la asignación de propiedades.

No afecta el rendimiento ni el uso de memoria, ya que el compilador lo convierte en asignaciones regulares así que el rendimiento o la memoria no sufrirán.

Utiliza Expression-bodied Constructors cuando tengas asignaciones simples. Para lógica más compleja en el constructor, es mejor usar el formato tradicional.

© 2025 José Fuxá. Todos los derechos reservados.