C# 3.0, .NET 3.5: Automatic properties

Properties, sommigen gebruiken het, sommigen niet. Zelf heb ik leren programmeren met getters & setters (vanuit Java). Sinds korte tijd gebruik ik toch properties in C#, omdat het eenvoudiger is, en overzichtelijker.

Voorbeeldje:

class TestProps
{
	private String nick;

	public TestProps(String nick)
	{
		this.nick = nick;
	}

	//de C# manier:
	public String Nick
	{
		get
		{
			return this.nick;
		}
		set
		{
			this.nick = value;
		}
	}

	//de Java manier (zelfde syntax in C#)
	public String getNick()
	{
		return this.nick;
	}

	public void setNick(String nick)
	{
		this.nick = nick;
	}
}

Dus ofwel gebruikt ge de C# manier, ofwel de Java manier, whatever you wish, beiden hebben hetzelfde eindresultaat.

Maar nu zit deze nieuweigheid in C#:

class TestProps2
{
	public TestProps2(String nick)
	{
		this.Nick = nick;
	}

	public String Nick { get; set; }
}

That’s it! Geen interne private variable meer, dat wordt automatisch door de compiler gedaan. Veel korter dus, en ge kunt er op dezelfde manier aan als de properties op de C# manier :)