ASP.NET, çok yönlülüğü ve sürekli güncelleniyor olması nedeniyle web geliştiricileri arasında popüler bir platformdur. Açık kaynaklı olması, geliştiricilerin katkıda bulunması konusunda oldukça önem taşır. Geliştiriciler, web projelerinin sahip olacağı etkileşim düzeyine ve kodlama üzerinde ne kadar kontrol sahibi olmak istediklerine bağlı olarak ASP.NET'i kullanmak isteyebilirler. Bu yazımızda ASP.NET'in ne olduğunu, .NET platformunu nasıl genişlettiğini, ASP.NET'in geliştiriciler için neden faydalı olduğunu ve neden ASP.NET ile hangi proje türlerinin oluşturulabileceğine değineceğiz.
ASP.NET, birçok web geliştiricisinin, bağlı istemcilerin yeni içeriğe gerçek zamanlı olarak erişmesine olanak tanıyan modern web uygulamaları, web hizmetleri ve hub'lar oluşturmak için kullandığı açık kaynaklı bir teknolojidir. Tüm web uygulamaları için kullanılan standart protokol olan hiper metin aktarım protokolü (HTTP) ile çalışmak üzere tasarlanmıştır.
ASP.NET, sunucu tarafı bir teknolojidir, bu nedenle ASP.NET’i kullanan web geliştiricileri, özelleştirilmiş bir kullanıcı arabirimi oluşturmak için sunucuda komut dosyaları dağıtır. Genellikle, web uygulamalarının çalışması için istemci tarafı komut dosyaları veya tarayıcılar tarafından çalıştırılan komut dosyaları gerekir.
Microsoft, ilk olarak 2002'de piyasaya sürülen ve Ağ Destekli Teknolojiler (.NET) platformu üzerine kurulan ASP.NET'i duyurdu. .NET Framework dahilinde herhangi bir .programlama dili ile ASP.NET uygulaması geliştirilebilir. ASP.NET, Microsoft'un da geliştirdiği Active Server Pages (ASP) teknolojisinin devamı olarak değerlendirilebilir. ASP.NET'in devamı, ilk olarak 2016'da piyasaya sürülen ASP.NET Core olmakla birlikte, en güzel sürümü ASP.NET Core 6.0’dır.
Basit bir metin düzenleyici ve ücretsiz programlama metin düzenleyicileri ile ASP.NET kodu yazılabilir. Bireysel geliştiriciler, kurumsal olmayan kullanım için ücretsiz bir Entegre Geliştirme Ortamı (IDE) olan Microsoft'un Visual Studio uygulamasının Topluluk Sürümünü de kullanabilir. Beşten fazla geliştiricisi olan şirketler, Visual Studio'ya erişmek için bir lisans satın alabilirler. Alternatif olarak, geliştiriciler ve şirketler, herkes için ücretsiz olan ancak çok daha küçük olan Visual Studio Code'u kullanabilir.
.NET GitHub'da mevcuttur; bu, binlerce geliştiricinin bu platformlara erişimi olduğu ve gelişimine katkıda bulunabileceği anlamına gelir.
İlginizi Çekebilir: ASP.NET Code Behind JavaScript Kullanımı
.NET ve ASP.NET Bileşenleri
.NET platformu tüm işletim sistemlerini destekler ve geliştiricilerin çok sayıda uygulama oluşturmak için kullanabilecekleri düzenleyiciler ve araçlar içerir. ASP.NET çerçevesi, kimlik doğrulama sistemi ve düzenleyici uzantıları gibi ek özelliklere sahiptir.
Ana .NET bileşenleri
.NET platformunun ana bileşenleri şunlardır:
- Diller: Bunlara C#, VB.NET ve J# ile derleyiciler dahildir. C# programlama dili, geliştiriciler tarafından yaygın olarak kullanılır.
- Programcıların dizeler, tarih dosyaları vb. ile çalışmasına izin veren temel kitaplıklar: .NET çerçevesinin bir dizi standart sınıf kitaplığı vardır. Geliştiriciler genellikle web uygulamaları için web kitaplığını kullanır.
- Windows, Linux ve macOS gibi işletim sistemleriyle uyumlu editörler ve araçlar: Linux işletim sistemlerinde çalışan bir platform olan Docker, .NET'i de destekleyebilir.
- Common Language Runtime: Tüm .NET programları, yine bir platform olan Common Language Infrastructure üzerinde çalışır. Tüm .NET programları, İstisnai durum yönetimi ve GC gibi önemli etkinlikleri gerçekleştirmek için CLR kullanır.
Önemli ASP.NET bileşenleri
- Kimlik doğrulama sistemi**: Buna kitaplıklar, bir veritabanı ve kullanıcı oturum açma işlemleri için şablon sayfaları dahildir. Ayrıca, sosyal medya web siteleri ve kullanıcıların harici olarak oturum açmasına izin veren diğer web siteleri için çok katmanlı kimlik doğrulama ve harici kimlik doğrulama araçları da vardır.
- Web isteklerini işlemek için bir temel çerçeve: ASP.NET çerçevesinin bir parçası olarak sunucular, web geliştiricilerinin C# ile yazdığı kodu değerlendirir ve kullanıcıya HTML gönderir. İstemci tarafı kodu JavaScript ile yazılmıştır.
- Code Behind: Visual Studio, her biri için ayrı dosyalar oluşturarak bir web sayfasının tasarımını kodlamadan ayırır. ASP.NET dosyası için genel bir dosya türü .aspx'tir ve web sayfası için kodlamayı içeren dosya türü .aspx.cs'dir.
- Düzenleyici uzantıları**:** Bunlar, sözdizimi vurgulama, kod tamamlama ve web sayfası geliştiricilerine yardımcı olacak diğer özellikleri içerir.
- Ortak web kalıpları için kitaplıklar**:** Yaygın kitaplıklardan biri Model Görünüm Denetleyicisidir.
- Razor**: Bu, web geliştiricilerinin C# ile dinamik web sayfaları oluşturmak için kullanacakları web sayfası sözdizimidir.
- Durum yönetimi (State management)**: Durum yönetimi, bir uygulamanın mevcut zamandaki durumunu hatırlama kavramıdır. HTTP durumsuz bir protokol olduğundan, kullanıcının başlattığı bir işlemi bir web sayfasından diğerine taşımak için ekstra kodlama gereklidir. ASP.NET bu yeteneğe sahiptir.
- Önbelleğe alma (Caching)**: Sayfalar, bir sayfayı hızlı bir şekilde alarak uygulamanın performansını artırmak için kullanıcının bilgisayarında geçici bir konumda depolanır.
ASP.NET’in avantajları
- Kurulumu ve yapılandırması kolaydır.
- Debugging, diğer programlama dillerine nazaran daha hızlı ve kolaydır.
- .NET Core ile birlikte Linux, macOS gibi işletim sistemlerinde de sorunsuz olarak çalışmaktadır.
- Kendisine ait kimlik doğrulama sistemi mevcut. Hem internal hem external (Facebook, Google, Twitter gibi) kimlik doğrulama işlemleri oldukça hızlı ve kolay yapılmaktadır.
- Entity Framework gibi gelişmiş özelliklere sahip bir ORM’e sahiptir. Entity Framework, veritabanı bağlantısının ve işlemlerinin oldukça hızlı ve kolay yapılmasını sağlar.
- Güvenlik konusu .NET için en önemli unsurlardan birisidir. Basit birkaç yapılandırma ile üst düzey güvenlik sağlayabilirsiniz.
Yazılım Geliştirici & Yazılım Uzmanı