C# 9 ve .NET 5 ile Modern Cross-Platform Geliştirme

Merhabalar, yeni bir makale serisi ile karşınızdayım. Bu makale serimde başlıktan da anlaşılacağı üzere 2020 yılın son çeyreğinde duyurulan C# 9 ve .NET 5 ile birlikte gelen yenilikleri sizlerle paylaşacağım. Bilindiği üzere Microsoft, .NET Core ile birlikte devrim niteliğinde bir karar ile .NET teknolojisini, farklı platformlarda (cross platform) uygulama geliştirmek için geliştirdiği açık kaynaklı bir ücretsiz yazılım geliştirme platformuna dönüştürdü. Bugün ise bu platformu C# 9 ve .NET 5 ile daha ileriye taşıdı. Şimdi hep birlikte bu yeni teknolojiyi tanıyalım.

.NET 5 Nedir?

.NET 5, .NET Core’un 3.1’den sonraki ana sürümüdür. Bu yeni sürümü .NET Core 4.0 yerine iki nedenle .NET 5.0 olarak adlandırıldı.

  • .NET Framework 4.x ile olası karışıklığı önlemek için.
  • .NET 5’in, .NET’in ana uygulaması olduğunu vurgulamak içi “Core” adı kaldırıldı. Ayrıca .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.0 tabanlıdı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 ile karıştırılmasını önlemek için “Core” adını korur.

.NET 5, .NET Core’un yeni bir sürümü değil, geleceğidir. .NET Framework’ün neredeyse tamamen yeniden tasarlanmasıdır. Aslında .NET 5, .NET Core’un 2016 sürümünden bu yana ilk büyük güncellemedir.

Sonuç olarak, .NET 5 ile birlikte artık yalnızca bir .NET platformu olacak ve herkes (macOS, iOS, Android, Linux, Windows, tvOS, WebAssembly, watchOS ve daha fazlası) bu platformun özelliklerinden yararlanabilecek. Ayrıca yeni dil özellikleri, çalışma zamanı yetenekleri, yeni API’ler de olacak.

.NET 5: Bağımsızlık, Esneklik, Çapraz platform

Resmi Microsoft Blogu, .NET 5’in içeriklerini aşağıda ki gibi sıralar.

  • Side-by-side (yan yana kurulumlar)
    yeni bir sürüm yükleyebilir ve mevcut uygulamaları bozma konusunda endişelenmezsiniz.
  • self-contained applications (kendi kendine yeten uygulamalar)
    uygulamalar .NET’e gömülebilir, böylece .NET’in bilgisayarda olması gerekmez.
  • Sadece Windows işletim sisteminin bir bileşeni olmamak
    .NET, işletim sistemi planından bağımsız olarak yeni sürümler gönderir. (Bunun anlamı, yeni sürümlerin ve kullanımdan kaldırılmış sürümlerin artık işletim sisteminden bağımsız olarak gerçekleşmesidir)

Konumuza kısa bir giriş yaptıktan sonra bu makale serimize, sırasıyla aşağıda ki linkler üzerinden devam edeceğiz.


0 – Başlangıç

Bu bölümde C# 9 ve .NET 5’e geçmeden önce ön hazırlık olarak okumanızı tavsiye ettiğim makalelerim bulunmaktadır.

  1. .NET 5’i daha iyi anlamak için, “.NET 5 Nedir?” adlı makalemi okuyunuz.
    https://alkanfatih.com/net-5-nedir/
  2. macOS ile .NET geliştirme için siteminizi hazırlayınız. “macOS ile .NET Core Geliştirmek (makale-1: macOS .NET Core SDK ve Visual Studio Kurulumu)” makale serisini takip ediniz.
    https://alkanfatih.com/macos-ile-net-core-gelistirmek-makale-1-macos-net-core-sdk-ve-visual-studio-kurulumu/

1 – Merhaba C# 9, Hoş geldin .NET 5