Otomatik Mühendis
C# 7.0 ile Gelen Yeni Yetenekler
C# 7.0 ile programlama diline; veri yönetimine, kod sadeleştirmeye ve performansa yönelik yeni yetenekler katıldı. Bunlardan en önemlileri çoklu sonuç döndürmemizi sağlayan tuples ve verinin şekillendirilmesini kolaylaştıran pattern matching. Daha temiz ve verimli kodlar yazmamız artık daha kolay.
Out variables
Parametrelerde verilen out
anahtarı artık satıriçi değişken tanımlamaya da izin veriyor. Tanımlama yapmak istemiyorsanız _
yazmanız yeterli.
Patterns “is”
Constant, Type veya Var pattern ile koşul yazılabilir hatta out
anahtarında olduğu gibi nesnenin tipi uygunsa doğrudan koşuldaki tipte bir değişken üretilebilir.
Switch statements
Artık switch case koşullarında eşitlikten daha fazlası istenebiliyor. Koşullar için when
kelimesi kullanılıyor.
Tuples
Bu özellik için öncellikle System.ValueTuple
referansı eklenmesi gerekiyor. Fonksiyonun dönüş parametresi tuple type olarak tanımlandığında, isimli ise isimleriyle, isimsiz ise Item1, Item2 vb. isimlerle ile erişilebilir. Diğerlerinde olduğu gibi yine satır içi değişken tanımlaması yapılarak veya yerel değişkenlere atanarak Tuples yok edilebilir.
Local Functions
Fonksiyon scope’u içerisinde private fonksiyonlar yazılabilir. Bu yöntem recursive methodların düzenli kullanımını sağlayacaktır.
Literal improvements
Kodun okunabilirliğini arttırmak adına _
işareti sayı ayracı olarak kullanılabilir.
Ref returns and locals
Artık ref modifier ile değerden daha fazlasını ifade eden referansını yani dizinin içindeki yerini dönebilirsiniz.
Bu yeteneklerin tümünü aşağıdaki kod blogundaki gibi uygulayabiliriz;
Son olarak bunları kullanabilmek için Visual Studio 2017 kullanmalısınız. Eğer yoksa Visual Studio 2017 Community sayfasından ücretsiz Community versiyonunu indirebilirsiniz.
Kaynak: New Features in C# 7.0