two black computer monitors on black table

İlk cevaplamamız gereken soru ben neden .Net Core kullanmalıyım .Net Framework nerelerde yetersiz kalıyordu ki ben  .Net Core tercih etmeliyim.
.Net Core ilk çıktığı zamanlarda öylesine 2 şey vaat etti ki zaten bu iki sebep bize yeterli oldu. Bunlardan bir tanesi Cross platform services olması ,şöyle düşünelim .Net Framework ‘de biz sadece Windows ortamında geliştirme yapabiliyoruz ve sadece Windows ortamında yayınlayabiliyoruz. Fakat .Net core da durum böyle değil ister Linux ister Windows, ister bir Mac OS işletim sistemin de uygulama geliştirebilirsiniz.

Aynı şekilde geliştirdiğimiz uygulamaları Windows ortamında yayınlamak zorunda değiliz gidip bir Linux serverin’de de yayınlayabilirsiniz.

.Net Core ve .Net Framework birbirinden farklı iki framework buda şu anlama geliyor sizin .net core’ da yazdığınız bir diyalel .Net framework’ da çalışamıcak , aynı şekilde .net framework da yazdığınız bir diyalel .Net Core’ da çalışmıcak.

Peki Microsoft bu sorunu çözmek için ortaya .net standart library ortaya çıkarttı.
Buda şu anlama geliyor proje tipiniz ister .Net Core olsun , ister .Net Framework olsun eğer ki siz projenizi eklerken .Net Standart library seçtiyseniz bu hem .Net Core da çalışıcak hem .Net framework ta çalışıcak hem de dilerseniz Xamarın’da da çalıştırabilirsiniz. .Net Standart dediğimiz şeyde bu.

NET Core ve .NET Standard Nedir?

Hemen akla şöyle bir soru geliyor diyelim ki benim .Net framework’ da geliştirdiğim bir uygulamam var .net framework’a geçirmem lazım ne yapmam lazım bi defa direk geçiş yok, ilk olarak .net framework’taki diyalellerimi oradaki paketlerimi .net standarda taşımam lazım.Sonrası zaten bizim için kolay olacak.

Buradaki tüm diyalellerimi ben eğer .net core projesinde çalıştırabilirsem tek yapmam gereken artık orda hangi proje tipi ile çalışıyorsam belki burada wppiay ile çalışıyordur burada da artık wppiay core ile çalışmaya başlayabilir.

.Net Core kısaca özetlemek gerekirse;

  • Cross platform çalışıyor,
  • Açık kaynak kodlu(Open source)
  • Faster
  • Ef Core İs Faster Than Ef  .Net
  • WPF, Windows Forms (.Net Core 3.1, 3.0)
  • Has 3 modules
  1. MVC
  2. Razor Pages
  3. Web API

En önemli iki özelliği ve .Net Framework ile arasındaki en önemli iki farkı cross platform ve open source dur.

Bunun yanında .net framework’a göre performansı oldukça iyi, bir diğeri ise biz Entity Framework’u projelerimizde oldukça fazla kullanıyoruz. Entity framework un core versiyonu .Net Framework da ki versiyonuna göre çok daha hızlı çalışıyor.!

WPF ve Windows Forms uygulamalarını (.Net Core 3.0) ‘dan önce .net core tarafında geliştirilemiyordu 3.0 ile beraber windows forms eklendi (3.1) versiyonu ile de WPF eklendi.(.Net Core ile geliştirmeleri yapabiliyoruz.)

.Net Core Web uygulamaları 3 farklı proje tipini ayrılıyor. Bunlar MVC, Razor pages ve web Apı , MVC ve Web API projeleri birbirlerine çok benziyor. Aralarındaki tek fark MVC ile geriye html sayfa döndürüyoruz, Web API ile ise return case döndürüyoruz.

Aklınıza takılan bir konu olursa lütfen yorumlarda belirtin!!