.NET 5, .NET Core'un 3.1'i izleyen sonraki önemli sürümüdür. Bu yeni sürümü iki nedenden dolayı .NET Core 4 yerine .NET 5 olarak adlandırdık:
.NET Framework 4.x ile karışıklığı önlemek için 4.x sürüm numaralarını atladık.
Bundan sonra .NET'in ana uygulaması olduğunu vurgumak için adından "Core" değerini düşürdük. .NET 5, .NET Core veya .NET Framework'ten daha fazla uygulama türünü ve daha fazla platformu destekler.
ASP.NET Core 5.0, .NET 5'i temel alır ancak ASP.NET MVC 5 ile karıştırılmasını önlemek için "Core" adını korur. Benzer şekilde, Entity Framework Core 5.0, Entity Framework 5 ve 6 ile karıştırılmasını önlemek için "Core" adını korur.
.NET 5, .NET Core 3.1 ile karşılaştırıldığında aşağıdaki iyileştirmeleri ve yeni özellikleri içerir:
.NET 5 ve sonraki sürümleri, .NET'in ileriye dönük ana uygulamasıdır, ancak .NET Framework 4.x hala desteklenmektedir. .NET Framework'ten .NET 5'e aşağıdaki teknolojileri taşıma planı yoktur, ancak .NET'te alternatifler vardır:
Windows Communication Foundation'ın (WCF) özgün uygulaması yalnızca Windows'ta destekleniyordu. Ancak. .NET Foundation'dan bir istemci bağlantı noktası vardır. Tamamen açık kaynak, platformlar arasıdır ve Microsoft tarafından desteklenir. Çekirdek NuGet paketleri aşağıda listelenmiştir:
Yukarıda belirtilen istemci kitaplıklarını tamamlayan sunucu bileşenleri CoreWCF aracılığıyla kullanılabilir. Nisan 2022 itibarıyla CoreWCF, Microsoft tarafından resmi olarak desteklenmektedir. Ancak WCF'ye alternatif olarak gRPC'yi göz önünde bulundurun.
.NET 5, .NET Standard'ın yerini almaz
Yeni uygulama geliştirme, sınıf kitaplıkları da dahil olmak üzere tüm proje türleri için Hedef Çerçeve Takma Adını (TFM) belirtebilir net5.0 . .NET 5 iş yükleri arasında kod paylaşımı basitleştirilir: tek ihtiyacınız olan TFM'dir net5.0 .
.NET 5 uygulamaları ve kitaplıkları için TFM, net5.0 ve netstandard TFM'lerini netcoreapp birleştirir ve değiştirir. Ancak. .NET Framework, .NET Core ve .NET 5 iş yükleri arasında kod paylaşmayı planlıyorsanız, bunu TFM'niz olarak belirterek netstandard2.0 yapabilirsiniz. Daha fazla bilgi için bkz . .NET Standard.
C# güncelleştirmeleri
.NET 5 uygulamaları yazan geliştiriciler en son C# sürümüne ve özelliklerine erişebilir. .NET 5, dile birçok yeni özellik getiren C# 9 ile eşleştirilir. İşte birkaç önemli nokta:
Kayıtlar: Değer tabanlı eşitlik semantiğine ve yeni with bir ifade tarafından desteklenen yıkıcı olmayan mutasyona sahip başvuru türleri.
İlişkisel desen eşleştirme: Mantıksal desenler de dahil olmak üzere karşılaştırmalı değerlendirmeler ve ifadeler için desen eşleştirme özelliklerini ilişkisel işleçlere andgenişletir - yeni anahtar sözcükler , orve not.
Üst düzey deyimler: C# benimsemesini ve öğrenmesini hızlandırmanın bir aracı olarak yöntem Main atlanabilir ve aşağıdaki örnek kadar basit bir uygulama geçerlidir:
System.Console.Write("Hello world!");
İşlev işaretçileri: Aşağıdaki ara dil (IL) işlem kodlarını kullanıma sunan dil yapıları: ldftn ve calli.
Kullanılabilir C# 9 özellikleri hakkında daha fazla bilgi için bkz . C# 9'daki yenilikler.
Kaynak oluşturucular
Kaynak oluşturucular, vurgulanan yeni C# özelliklerinden bazılarına ek olarak geliştirici projelerine de giriş yapıyor. Kaynak oluşturucular, derleme sırasında çalışan kodun programınızı incelemesine ve kodunuzun geri kalanıyla birlikte derlenmiş ek dosyalar üretmesine olanak sağlar.
F# .NET işlevsel programlama dilidir ve .NET 5 ile geliştiriciler F# 5'e erişebilir. Yeni özelliklerden biri C# dilindeki ilişkilendirilmiş dizelere ve hatta JavaScript'e benzer ilişkilendirilmiş dizelerdir.
let name = "David"
let age = 36
let message = $"{name} is {age} years old."
Temel dize ilişkilendirmesine ek olarak, türlenmiş ilişkilendirme vardır. Yazılan ilişkilendirmede, belirli bir tür biçim tanımlayıcısıyla eşleşmelidir.
let name = "David"
let age = 36
let message = $"%s{name} is %d{age} years old."
Bu biçim, bir dizeyi sprintf tür açısından güvenli girişlere göre biçimlendiren işleve benzer.
Bu içeriğin kaynağı GitHub'da bulunabilir; burada ayrıca sorunları ve çekme isteklerini oluşturup gözden geçirebilirsiniz. Daha fazla bilgi için katkıda bulunan kılavuzumuzu inceleyin.
.NET geri bildirimi
.NET, açık kaynak bir projedir. Geri bildirim sağlamak için bir bağlantı seçin:
.NET, pek çok farklı türde uygulama oluşturmaya yönelik ücretsiz, platformlar arası, açık kaynak bir geliştirici platformudur. .NET ile birden çok dil, düzenleyici ve kitaplık kullanarak web, mobil, masaüstü, oyun ve IoT için uygulama oluşturabilirsiniz.