Nuevas Características de C# 3.0 (Automatically Implemented Properties)

A partir de esta entrada, empezaré una serie de posts donde mencionaré las nuevas características de c# 3.0, con las cuales simplificarás código y te ahorrarás tiempo.

Primero, vamos a hablar de las Automatically Implemented Properties(Propiedades implementadas automáticamente).

Anteriormente, y es común que las propiedades se establezcan de esta forma:

public class Persona
{
    private string nombre;
    private string ciudad;

    public int NOMBRE {
    get { return nombre; }
    set {  = value; } }

    public int CIUDAD {
    get { return ciudad; }
    set { y = value; } }
}

 

como vemos, primero se declaran atributos, en este caso nombre y ciudad, y posteriormente se crean las 2 propiedades correspondientes, ambas de escritura y lectura.

Ahora, en C#, ya no es necesario todo eso, y se simplifica a lo siguiente:

public class Persona
{
    public int NOMBRE{get; set;}
    public int CIUDAD {get; set;}
}

¿Qué ha cambiado? Bien, que ya no es necesario todo ese rollo de get{ return…..; sino que el compilador infiere que estamos estableciendo un regreso de valor y una asignación de valor, pero entra la duda, qué pasaría si quisieramos que fuera una propiedad de solo lectura? Bien, pues sencillo, tenemos que declarar el valor para set como privado, es decir:

public class Point
{
    public int NOMBRE{get; private set;}
    public int CIUDAD  {get; private set;}
}

Mucho mas sencillo no?

Salu2

Héctor Pérez