Kultainen koodi

.NET-osaajan ajatuksia paremmasta koodailusta

C#-kielen kehitys

Pidän rajapinnoista ja tehokkaasta ohjelmoinnista. Ensimmäinen pysäyttävä kokemukseni syntyi siirtymä C# 2.0 ja 3.0:n välillä, kun pääsi kirjoittamaan autoproperty-tyyppisiä get ja set metodeja. Näitä tuttuja:

public int Foo { get; set; }

C# 6 tarjoaa vihdoin pelkän getterin sisältämät propertyt.

public class Point
{
public int X { get; }
public int Y { get; }

public int ReadWrite { get; set; }
}

C# 5 tarjosi async ja await -toimintoja, jotka olivat Taskin kanssa tuttuja C# 4:n puolelta.

Evoluutio 5-versioon asti löytyy evoluutiomatriisista.

C# 6 näyttää olevan muutoinkin ohjelmoijan kannalta se kieliversio, joka vähentää koodin kirjoittamista. Olen aivan täpinöissäni, koska lyhyen parametrisoidun stringin voi luoda luettavammassa muodossa. Vanha toteutus

return String.Format("({0}, {1})", X, Y);

muuttuu muotoon

return "(\{X}, \{Y})";

Kuutosen mukana näyttää tulevan paljon muitakin herkkuja matkaan. Lambda-lauseella saa tehtyä uusia laajennuksia uudella =>-nuolioperaattorilla. Jalka väpättää innostuksesta uutta kieliversiota käyttäviä projekteja odotellessa.

Vielä C# 6 ei asennu automaattisesti vielä Visual Studio 2013 mukana, mutta ehkä tulevaisuudessa sen saa päivitettyä yhdeksi mahdolliseksi kieliversioksi. Tähän mennessä VS ja eri kieliversiot ovat pyörähtäneet aika mukavasti käyntiin. Varsinkin kun VS2012 mukana voi kehittää useammalla eri versiolla eli kieliversio ei ole naimisissa IDE-version kanssa.

Mainokset

Single Post Navigation

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out / Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out / Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out / Muuta )

Google+ photo

Olet kommentoimassa Google+ -tilin nimissä. Log Out / Muuta )

Muodostetaan yhteyttä palveluun %s

%d bloggers like this: