Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

Propiedades automáticas en C#

Netframework

La implementación automática de propiedades es una capacidad sencilla pero de gran utilidad que fue incorporada en el lenguaje C# en su versión 3.0.

Generalmente cuando definíamos una propiedad de C# debemos declarar una variable privada para contener los valores, así como sus métodos set y get para asignarla y recuperarla. Si no necesitamos añadir lógica, y la propiedad sólo es un envoltorio de un campo privado (algo muy común), acabamos repitiendo todo el tiempo mucho código como el mostrado a continuación:

private string _nombre;

public string Nombre
{
  get
    {
      return _nombre;
    }
  set
    {
      _nombre = value;
    }
}

Un verdadero tedio que nos obliga a perder tiempo haciendo todo el rato lo mismo. De acuerdo, en el editor de Visual Studio tenemos la macro "prop" que nos ayuda a escribirlo, pero ¿para qué hacerlo si es evidente cómo va todo el tiempo?

Eso debieron de pensar los diseñadores del lenguaje cuando le añadieron dicha capacidad para declarar propiedades como la anterior de manera rápida. Así, para definir una propiedad idéntica a la anterior sin esfuerzo, basta con escribir lo siguiente:

public string Nombre { get; set;}

¡Listo!. El compilador generará todo lo demás por nosotros escogiendo un nombre aleatorio para la variable privada (bastante feo por cierto, pero que nunca se ve, pues queda en el código IL) y dejando más claro y mucho más conciso nuestro código.

campusMVP campusMVP es la mejor forma de aprender a programar online y en español. En nuestros cursos solamente encontrarás contenidos propios de alta calidad (teoría+vídeos+prácticas) creados y tutelados por los principales expertos del sector. Nosotros vamos mucho más allá de una simple colección de vídeos colgados en Internet porque nuestro principal objetivo es que tú aprendas. Ver todos los posts de campusMVP
Archivado en: Lenguajes y plataformas

Boletín campusMVP.es

Solo cosas útiles. Una vez al mes.

🚀 Únete a miles de desarrolladores

DATE DE ALTA

x No me interesa | x Ya soy suscriptor

La mejor formación online para desarrolladores como tú

Comentarios (2) -

Eduard Tomàs
Spain Eduard Tomàs

No solo el nombre del backing field es bastante feo si no que es ilegal desde el punto de vista de C# (aunque no del CLR). Cosa recomendable, ya que al ser el nombre ilegal en C# nunca podremos acceder por error al backing field y saltarnos la propiedad. ;-)

Responder

José Manuel Alarcón
Spain José Manuel Alarcón

Interesante. No sabía que era ilegal desde el punto de vista de C#. Gracias por comentar Eduard!

Responder

Agregar comentario

Los datos anteriores se utilizarán exclusivamente para permitirte hacer el comentario y, si lo seleccionas, notificarte de nuevos comentarios en este artículo, pero no se procesarán ni se utilizarán para ningún otro propósito. Lee nuestra política de privacidad.