Merhaba,
C# programlama dilinde gerçekleştirilen kimi yenilikler çok ses çıkarırken, kimiside önceki sürümlerde lafı geçen lakin anca bir sonraki sürüme yetiştirilen bir nama sahiptir. İşte şimdi bu tarz bir yenilik olan C# 7.0 – Literal Düzenlemeler üzerine konuşuyor olacağız. Biliyorum, çok ilgi çekici ve bahsettiğim gibi süpriz bir yenilik olmasada aslında oldukça kullanışlı bir yapılanmanın geldiğini söylemek istiyorum. Evet, bu konuda bana inanabilirsiniz 🙂
C# 7.0 ile gelen Literal Düzenlemelerini, Binary Literals ve Digit Separators olmak üzere iki başlık altında ele alacağız. Her iki konunun içeriğinde esas, kolay ve okunabilir değerler yazabilmektir. Binary Literals’de binary değerler tanımlayabilmekteyken, Digit Separators’de ise tanımlayacağımız uzun sayıları daha okunabilir kılmaktayız.
Digit Separators
Digit Separators, hane ayırıcıları olarak nitelendirebileceğimiz bir yapıdır. Yani tanımlayacağımız sayısal değerleri rahat yazılabilir ve okunabilir yapmak için bu yapıyı kullanabiliriz. Bu özellik bizleri yazacağımız değerlerdeki hata oranından arındırmaktadır.
Digit Separators için “_”(alt tire) operatörünü kullanmaktayız.
static void Main(string[] args)
{
int Sayi1 = 1_000_000;
double Sayi2 = 1_00;
decimal Sayi3 = 00_112;
float Sayi4 = 123_3211123123;
}
Dikkat ederseniz, tanımladığım sayısal değerlerde Digit Separators aracılığıyla haneleri belirleyebiliyoruz.
Binary Literals
Binary Literals ile kod içerisinde binary tanımlamalar yapabiliyoruz. Bu işlem için tek yapmamız gereken binary değerin başına “0b” yahut “0B” değerini eklememiz yeterlidir.
static void Main(string[] args)
{
int Binary1 = 0b1100;
double Binary2 = 0b111001001;
decimal Binary3 = 0b0;
}
Görüldüğü üzere bu şekilde binary değerler tanımlayabilmekteyiz.
Ve hatta tanımladığımız bu binary değerlerin okunabiletisini Digit Separators ile aşağıdaki gibi arttırabiliriz.
static void Main(string[] args)
{
int Binary1 = 0b1_10_0;
double Binary2 = 0b1_110_0100_1;
decimal Binary3 = 0b0_0;
decimal Binary4 = 0b111_000_111_000;
}
Görüldüğü üzere; Digit Separators oldukça kullanışlı ve hayati önem arz eden bir noktaya temas ederken, Binary Literals ise yokluğunda aratmayan ama varlığıyla bir gün lazım ola(cak)n bir özelliktir.
Evet, bir yeniliğimizin daha sonuna gelmiş bulunmaktayız.
Bol bol faydalanmanız dileğiyle…
Sonraki yazılarımda görüşmek üzere…
İyi çalışmalar…
