C# 10 Yenilikleri – CallerArgumentExpression attribute kullanımı

C# 10 ile gelen yeniliklerden biri de CallerArgumentExpression attribute kullanımı. CallerArgumentExpression attribute kullanımı size parametre olarak verdiğiniz expression’ın string halini size geri döndürüyor. Diğer compiler servis attribute’ler gibi bu da optional. Kaynak: https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/proposals/csharp-10.0/caller-argument-expression

C# 10 Yenilikleri – Struct ve Anonymous type’larda with kullanımı

C# 10 ile gelen yeniliklerden biri de struct ve anonymous type’larda gelen with kullanımı. C# 9 ile hayatımıza with expression’ı girmişti. With ile solundaki operand’ın property ve field’ları ile, sağında verilen özellikler göz önüne alınarak yeni bir kopyasını oluşturur. C# 9 ile gelen with kullanımı sadece record tipi için geçerliydi. Kısaca bir kullanım olarak; C# … Continue reading C# 10 Yenilikleri – Struct ve Anonymous type’larda with kullanımı

C# 10 Yenilikleri – Mix declarations and variables in deconstruction

C# 10 versiyonu ile gelen özelliklerden biri de “mix declarations and variables in deconstruction” kavramı. C# 9 ve öncesi versiyonlarda deconstruction‘lar içerisinde ya hepsinin daha önceden tanımlanmış olması, ya da hepsinin yeni tanımlanıyor olması gerekiyordu. ya da; şeklinde tanımlanabiliyordu. C# 10 ile birlikte, bu tanımlamaların bir kısmını orada, bir kısmını ise daha öncesinde tanımlayabiliyorsunuz. Yani; … Continue reading C# 10 Yenilikleri – Mix declarations and variables in deconstruction

C# 10 Yenilikleri – File Scoped Namespaces

C# 9 ve önceki versiyonlarda Visaul Studio içerisinde yeni bir sınıf oluşturduğunuzda namespace’ler “Blocked scoped” olarak ekleniyordu. Yani namespsace’lerde süslü parantezler içerisinde ve tüm class’lar da soldan bir tab (veya 4 boşluk) olacak şekilde hizalanıyordu. C# 10 versiyonu ile hayatımıza File scoped namespaces kavramı girdi. Bu sayede namespace tanımlamalarındaki gereksiz süslü parantezlerden ve bu namespace’in … Continue reading C# 10 Yenilikleri – File Scoped Namespaces

C# 10 Yenilikleri – Extended Property Patterns

C# 10 ile gelen küçük yeniliklerden biri de Extended Property Patterns. C# 8 ile hayatımıza property pattern özelliği girmişti hatırlarsanız, iç içe olan property’lere süslü parantezler kullanarak erişebiliyorduk. if (p is Person { Name: “Soner”, Address: { City: “İstanbul” } }) Ama bu kullanım, bir çok iç içe property içeren yapılarda çok fazla süslü parantez … Continue reading C# 10 Yenilikleri – Extended Property Patterns

C# 10 Yenilikleri – Constant Interpolated Strings

C# 10 ile hayatımıza yeni giren özelliklerden biri constant interpolated strings yapısı. C# 9 ve öncesi versiyonlarda const değerler içerisinde + operatörü ile string concatenation işlemi yapabiliyorduk. Yani aşağıdaki kod legal idi; fakat şunu yapamıyorduk; Bunun nedeni de string interpolation arka tarafta string.Format çağırıyordu ve bir method çağırımı compile time’da constant olamayacağı için hata veriyordu … Continue reading C# 10 Yenilikleri – Constant Interpolated Strings

C# 10 Yenilikleri – Implicit Usings

.NET 6 ile hayatımıza implicit namespace kavramı girdi. Bu sayede projelerde gelen “boilerplate” içerisindeki using karmaşasından kurtulmak hedeflendi. Namespace’leri artık “global using” şeklinde projenizde tek bir .cs dosyası içerisinde veya “\..\obj\debug\net6.0” klasöründeki GlobalsUsing.cs dosyası içerisinde saklayabiliyorsunuz. Dikkat edilmeli ki bu GlobalsUsing.cs dosyası otomatik oluşturulan bir dosya. Örneğin projenizdeki her bir cs dosyası içerisinde System.Data namespace’ini … Continue reading C# 10 Yenilikleri – Implicit Usings

Sıfırdan C# Programlama Eğitim Seti – 6. Ders

►► Sıfırdan C# Programlama Eğitim Seti – 6. Ders Bu yayınla C# programlama dilini temelinden anlatacağım eğitim setinin altıncı dersini tamamlamış olduk. Bu video serisi, genellikle hafta sonları Youtube üzerinde yapacağımız canlı yayınlar ile devam edecek. 6. Ders İçeriği; 0:00:00​ | Giriş 0:15:30 | ref locals ve ref returns kullanımı 0:30:20 | var kullanımı (c# … Continue reading Sıfırdan C# Programlama Eğitim Seti – 6. Ders

Sıfırdan C# Programlama Eğitim Seti – 5. Ders

►► Sıfırdan C# Programlama Eğitim Seti – 5. Ders Bu yayınla C# programlama dilini temelinden anlatacağım eğitim setinin beşinci dersini tamamlamış olduk. Bu video serisi, genellikle hafta sonları Youtube üzerinde yapacağımız canlı yayınlar ile devam edecek. Çok boyutlu diziler Jagged array kavramı Değişkenler ve parametreler Yerel değişkenler Varsayılan değerler (default values) Parametre geçişleri (değer ile … Continue reading Sıfırdan C# Programlama Eğitim Seti – 5. Ders

Sıfırdan C# Programlama Eğitim Seti – 4. Ders

► Sıfırdan C# Programlama Eğitim Seti – 4. Ders Bu yayınla C# programlama dilini temelinden anlatacağım eğitim setinin dördüncü dersini tamamlamış olduk. Bu video serisi, genellikle hafta sonları Youtube üzerinde yapacağımız canlı yayınlar ile devam edecek. 4. Ders İçeriği; 0:00:00​ | Giriş 0:16:42 | Eşitlik ve karşılaştırma operatörleri 0:31:27 | Conditional operatörler 0:37:04 | Short … Continue reading Sıfırdan C# Programlama Eğitim Seti – 4. Ders