Asp.Net Core Nedir? Ne Gibi Değişiklikler Bizi Bekliyor?

By Burak Tungut - 10.7.2016 - 4 Yorum - Kategori Asp.Net Core

Selamlar herkese!

Bir Ramazan bayramını daha geride bıraktık. Umarım herkes için güzel bir bayram olmuştur. Herkesin geçmiş bayramını kutlamak isterim :)
Beni soracak olursanız sadece 2 gün tatil yapabildim. Asıl tatilimi bir kaç hafta sonraya bırakıyorum.

Bayram tatiline çıkmadan bir kaç hafta önce Microsoft tarafında harika gelişmeler oldu diyebilirim. Uzun zamandır ben ve çoğu meslektaşım Asp.Net 5'in gelişmelerini takip ediyorduk. Hatta kulaklarını çınlatayım Yiğit ile her yeni gelişmeyi şirketin Slack kanalından paylaşıp uzun uzun tartışıyorduk. Sonra bir haber aldık ki "Asp.Net 5 Öldü". Hatta bu başlıkla bazı paylaşımlar yapıldı, Scott Hanselman'ın blog'un da dahi bulabilirsiniz.
Tabi ölen bir şey yok aslında. Sadece bu yeni mimarinin adını değiştirmeye karar vermişler. Artık .Net Core ve Asp.Net Core olarak isimlendireceğiz bu teknolojileri. 

Bu yazımı biraz sohbet havasında geçirmek istiyorum çünkü çok çok detaylı konulara değinmeyeceğiz. Asıl amacım bu yazıda Asp.Net Core'a bir giriş yapmak, ne olup, ne olmadığı hakkında bilgiler verebilmek. Yer yer official dökümanından alıntılar / çevirilerde bulabilirsiniz. Umarım çeviri yapmama çok kızmazsınız :) Giriş niteliği taşıyan bir yazıda ne kadar yaratıcılık beklenir ki :) ?

Asp.Net Core Nedir?

"Evet şimdi kitaplarımızın 18. sayfasını açıp tanımı okuyalım. Kim sesli okumak ister?" tadında bir giriş yapmayacağız tabi ki :)
Asp.Net Core aslında Asp.Net (ve .Net Framework) 'in yeniden dizayn edilerek bir çok konseptin değiştirildiği yep yeni bir teknoloji. Üstelik cross-platform çalışabilmek üzere geliştirilmekte. Diğer bir deyiş ile uygulamalarınızı sadece IIS'te Windows bir makinada host etmek zorunda değilsiniz. İsterseniz Linux'ta hatta Mac'te dahi host edebilirsiniz.

Terimlerde karışıklık olmaması adına şöyle bir not düşmek isterim;

.Net Framework bir uygulama çatısı iken, Asp.Net onun üzerine kurulmuş ve web uygulamaları yapmamızı sağlayan bir teknoloji (ya da framework diye de nitelendirebiliriz)
.Net Core ise tıpkı .Net Framework gibi bir uygulama çatısı iken Asp.Net Core onun üzerine kurulmuş ve yine web uygulamaları yapmamızı sağlayan bir teknoloji.

Halilye karşılaştırmalara yer verdiğimiz noktalarda eğer Asp.Net Core'dan bahsediyorsak karlılaştırdığımız nokta Asp.Net'te ki hali ve .Net Core'dan bahsediyorsakta karşılaştırdığımız nokta .Net Framework olacak.

Asp.Net Core Mimarisi

Asp.Net Core açık kaynak olarak geliştirmekte. Amacı ise Asp.Net'te geliştirebildiğiniz projeleri yine geliştirebilirken IoT ve cloud bazlı projelerinizi daha efektif ve esnek bir şekilde geliştirebilmek. Efektif ve esnek diyorum çünkü hali hazırda var olan .Net Framework ve Asp.Net ile de zaten IoT ve cloud bazlı projeler geliştirebiliyorsunuz. Ancak .Net Core'un getirdiği ve değiştirdiği bazı geleneksel yaklaşımlar sayesinde tüm bunları daha efektif ve esnek yapabiliyor, çok daha performanslı uygulamalar geliştirebiliyorsunuz.

Çünkü Asp.Net Core optimize edilebilir bir mimariye sahip. Asp.Net'e göre karşılaştırdığımızda sadece "Hello World" yazabilmek için dahi onlarca referansa ve System.Web'e bağımlı değilsiniz. Projenizin ihtiyacına göre pipeline'i zenginleştirebiliyor, istediğiniz modülleri NuGet üzerinden dahil edebiliyorsunuz.

Nasıl ki ORM kullanmak istediğiniz bir Asp.Net uygulamanıza NuGet üzerinden EntityFramework'ü referans olarak ekleyebiliyorsanız artık Asp.Net Core ile IIS'in dahi bağımlılığını NuGet üzerinden ekleyebileceksiniz. Daha önce duymadıysanız ilk benden duyun, artık IIS'e bağımlı değilsiniz :)

Official dökümanda bulacağınız bazı kök değişiklikleri aşağıda listeledim. Bir çoğuna ilerleyen yazılarımda detaylarıyla değineceğiz.

Devamı
1
Facebook
Son Yorumlar