.NET Framework
.NET ya da bir diğer tabirle .NET Framework, Microsoft tarafından geliştirilmeye başlayan ve çok çeşitli uygulamalar geliştirmek için kullanılan açık kaynak kodlu bir geliştirici platformudur.
.NET için .NET Framework tabiri de kullanılır ancak framework, yazılım kütüphanelerinin yer aldığı bir ortamken .NET bir kütüphaneden daha geniş kapsamlı ve farklı işlevleri barındıran bir platformdur. Klasikleşmiş bir tabir olarak .NET ve .NET Framework birbirlerinin yerine kullanılıyor olsa da .NET, .NET Framework’u da kapsayan çok çeşitli ve detaylı bir platformdur. Platform kavramı ise bir yazılımı oluşturmaya yarayan altyapıların yer aldığı parçaların bulunduğu ortamı ifade eder.
.NET Nedir?
.NET, Microsoft tarafından tasarlanmış ve geliştirilmiş bir yazılım çerçevesidir. Bu ücretsiz platformlar arası çerçeve ile C#, F#, VB.NET gibi birçok kodlama dili üzerinde çalışılabilir. .NET kullanılarak bilgisayarlar, mobil cihazlar, web siteleri, web uygulamaları ve nesnelerin interneti için yazılım geliştirilebilir. “Dot net” olarak okunan .NET, 60’tan fazla programlama dilini desteklemesi sebebiyle çok yönlü bir geliştirici ortamdır.
Farklı yazılım dillerinde kodlama yapan geliştiriciler bir araya gelerek belirli bir .NET çerçevesi için tek bir yazılım ürünü yazabilirler. Bu çok yönlülüğü, çeşitli endüstrilerdeki şirketler arasındaki kullanışlılığı, kullanım kolaylığı ve stabil çalışması gibi nedenlerden dolayı yazılım geliştirme sektöründe benimsenmiş ve popüler bir araçtır.
Microsoft tarafından 2000 yılı itibariyle geliştirilmeye başlayan ve 2002 yılında 1.0 sürümü ile yayınlanan .NET’in temel amacı ve birincil odak noktası yüksek maliyetlere karşı stabil bir bir uygulama ihtiyacına karşılık vermek, farklı işlevlere ve ihtiyaçlara karşı farklı programları kullanma zorluklarını önlemek ve kolay dağıtılabilir bir sistem ortaya çıkarmaktır.
.NET Hangi Dilleri Destekler?
Popüler kullanımı nedeniyle genellikle C# ile bağdaştırılan .NET, Microsoft tarafından kullanılan 11 farklı programlama dili ile geliştirmeye olanak sağlarken, Microsoft’ın geliştirilmesine imkan sağlamadığı diğer diller için de .NET Framework kütüphanesini kullandırtır. Böylece toplamda 60’tan fazla yazılım dili için destek sağlar. Microsoft tarafından tasarlanan ve geliştirilmesine destek verilen programlama dilleri şunlardır;
- C#
- C++.NET
- VB.NET
- F#.NET
- J#.NET
- JSCRIPT.NET
- Windows Powershell
- ASML
- IRON RUBY
- IRON PHYTON
- C OMEGA
.NET Hangi Alanlarda Kullanılır?
Belirli görevleri ele almak ve ilgili yazılım ürünlerini geliştirmek için programlama dilleri ve çerçeveleri oluşturulur. En kapsamlı geliştirme çerçevelerinden biri olan .NET’in geliştiricileri tarafından kullanılabilecek ürün yelpazesi oldukça geniştir. Kendine has özellikleri, kullanım kolaylığı ve geniş yelpazesi ile finans ve ticaretten bilim ve sosyolojiye kadar çok çeşitli endüstiler için yazılım geliştirmeye olanak sağlayan .NET için geliştirilen yazılım çeşitleri şu şekilde gruplandırılabilir;
Web Geliştirme
Web geliştirme, .NET’in en yoğun kullanıldığı alandır. .NET üzerinde bir web uygulaması geliştirmek için C# veya ASP.NET dili ile MVC çerçevelerini bilmeyi gerektirir. İstemci veya sunucunun ne olduğunu, HTTP, REST, JavaScript gibi protokollerin nasıl tasarlandığını ve ön uç ile arka uç arasındaki farkın ne olduğunu anlamak da önemlidir.
İstemci Uygulamaları
İstemci uygulamaları, son kullanıcıların kişisel bilgisayarlarında ve mobil cihazlarında çalışan ürünlerdir. Örneğin; Windows işletim sisteminin not defteri ve hesap makinası gibi çeşitli bileşenleri .NET kullanılarak geliştirilmiştir. .NET kullanılarak gelişmiş özelliklere ve işlevlere sahip masaüstü uygulamalrı geliştirilebilir.
Ekonomi ve ticaret alanlarında kullanılan NinjaTrader ve TradeSignal gibi popüler uygulamalar .NET altyapısı ile tasarlanmış ve geliştirilmiştir. Masaüstü istemci uygulamalarının geliştirilebilmesi için genellikle Windows Presentation Foundation (WPF) veya Windows Forms teknolojileri kullanılır..NET altyapısı kullanılarak mobil cihazlar ve akıllı telefonlar için de istemci uygulamaları geliştirilebilir. .NET Core ve Xamarin.Forms'un yardımıyla, herhangi bir akıllı telefon veya tablet sahibinin kullanımına sunmak için bir uygulama yazılabilir ve App Store veya Google Play'de yayınlanabilir.
Oyun Geliştirme
.NET, .NET sürümlerinden biri olan Mono'ya dayalı bir oyun motoru olan Unity için oyun geliştirmeye olanak sağlar. Popüler oyun uygulamalarından olan Inside, Pokemen Go, Endless Legend gibi oyunlar Unity kullanılarak hazırlanmıştır. .NET ile oyun yazmak C# ile kodlama yaparken Mono ve Unity platformlarının kütüphanelerini kullanmayı gerektirir. Bu yazılımlarda C# kodunun çevirisi Mono ve Unity tarafından gerçekleştirilir.
Nesnelerin İnterneti (IoT)
Nesnelerin interneti (IoT), birbirleriyle, dış çevreyle ve internetle etkileşime girebilen “nesnelerin” geliştirme alanıdır. Örneğin, bir akıllı su ısıtıcısını, ev aydınlatma sistemlerini, sürücüsüz arabaları, konuşma tanıma sistemlerini ve hazır çerçevelere dayalı otomatik diyalog sistemlerini kontrol etmek için nesnelerin interneti kullanılır. .NET, nesnelerin interneti ile ilgili çalışmalar ve yazılımlar için altyapı sağlar.
Kurumsal Sistemler (CRM)
İstemci uygulamalarının aksine CRM’ler son kullanıcılar için değil iş için kullanılan ürün geliştirme alanıdır. .NET ile kurumsal sistemler için bilgi ve belge yönetim sistemleri ve müşteri yönetim sistemleri gibi yazılımlar geliştirilebilir..NET ile kurumsal sistemler ve CRM’ler geliştirilebilmek için C# ve JavaScript yazılımlarının yanı sıra SiteCore platformunu ve SharePoint bişeşenlerini kullanmak gerekebilir.