.NET NEDİR?

.NET Framework, Microsoft tarafından geliştirilen, açık İnternet protokolleri ve standartları üzerine kurulmuş bir “uygulama” geliştirme platformudur. Sağladığı çoklu dil desteğiyle, tek dile bağlı kalmadan değişik tipte uygulamalar geliştirmemize olanak sağlar.

Buradaki uygulama kavramının kapsamı çok geniştir. Bir masaüstü uygulamasından bir web uygulamasına kadar her şey bu platform içinde düşünülmüştür ve desteklenmiştir. Bu uygulamaların birbirleriyle ve geliştirildiği ortam fark etmeksizin dünyadaki tüm uygulamalarla iletişimi için kolayca web servisleri oluşturulmasına imkan verilmiştir. Bu platform, işletim sisteminden ve donanımdan daha üst seviyede taşınabilir olarak tasarlanmıştır.

.Net mimarisi, ortak bir yürütme ortamı, ortak bir değişken tür sistemi, ve devingen bağlantılı kütüphanelerden oluşur. Buda, .Net kütüphanesi programın işletim sistemi ile kolayca uyum içinde çalışmasını sağlamıştır.

Microsoft .Net Framework 4.5 Mimarisi

.Net Framework, ileri düzey uygulama geliştirmek için oluşturulmuş ve windows işletim sistemi ile kapsamlı bir şekilde entegre edilmiş bir programlama modelidir. Bu model Dynamic Language Runtime (DLR), Common Language Runtime (CLR), Portable Class Library, Parallel Extension, Base Class Library (BCL) and WinRT bileşenleri ile programlanmıştır.

Microsoft .Net Framework 4.5 Mimarisinin Bileşenleri

  • Common Language Runtime (CLR)

Bu bileşenin ana görevi, .NET Framework programlarını yürütmek için ortam oluşturmaktır.  .Net tiplerinin yerini öğrenmek, bu tipleri kendi ortamına yüklemek ve yürütmektir. Ayrıca, tüm .NET programlarının bellek yönetimi ve tip güvenliğinden sorumludur.

  • Base Class Library (BCL)

Tüm .Net programlama dilleri için ortak olan çeşitli işlevlerin bir kütüphanesi olarak işlev görür. Yeniden kullanılabilir tiplerin sınıflarını ve arayüzlerini içerir.

  • Portable Class Library (PCL)

Visual Studio 2012 ile ortaya çıkmıştır. Birden çok .NET framework platformunda çalışan yönetilen derlemeleri yazmanıza ve geliştirmenize olanak tanır. PCL hedefe ulaşmak için .NET Framework, Silverlight, Windows Phone 7 veya Xbox 360 platformları gibi platformlardan birini seçebilir.

  • Managed Extensibility Framework (MEF)

MEF genişletilebilir uygulamaların oluşturulmasını sağlayan bir kütüphanedir. Uygulama geliştiricilerin herhangi bir yapılandırma kullanmadan uzantıları keşfetmelerine ve kullanmasına izin verir.

  • Dynamic Language Runtime (DLR)

Python gibi diller için çalışma ortamı sağlar. CLR’nin tam kontrolü altında gerçekleşir.

  • WinRT

WinRT veya Windows Çalışma Zamanı API’ları, Windows Mağazası uygulamarı geliştirmek için kullanıcı arayüzü işlevlerini sağlar.

  • Asp.Net

Zengin içerikli internet tabanlı web uygulamaları yapmanıza olanak sağlar.

  • Windows Store Apps

Windows 8 cihazlarında çalışmak üzere özel olarak tasarlanmış yeni bir uygulamadır ve yeni WinRT API’lerinin özelliklerinden yararlanabilir.

  • Desktop Apps (Windows Forms)

Windows platformları için (XP, Vista, 7, 8 gibi) uygulama geliştirmenize olanak sağlar.

  • Windows Presentation Foundation (WPF)

WPF, zengin bir kullanıcı deneyimi ile uygulamalar oluşturmak için kullanıcı arayüzleri oluşturmak için kullanılır.

  • Silverlight

Silverlight, tasarımcıların ve geliştiricilerin web sayfalarında gömülü Zengin İnternet Uygulamaları (RIA) oluşturmasını sağlar.

  • Ado.Net

Geliştiricilerin SQL Server, DB2, Oracle ve benzeri gibi temel veri kaynaklarından veriye erişmek ve bunları yönetmek için bir Veri Erişim Katmanı oluşturmasına olanak veren bir dizi yazılım bileşenidir.

  • Language-Integrated Query or LINQ

SQL veritabanları, XML, Ado.Net gibi çeşitili veri kaynaklarından C# veya Visual Basic kullanarak sorgu yapamamıza olanak sağlar.

  • Net Entity Framework

Veritabanlarına erişim izinlerini düzenler.

  • Parallel Extension

Paralel Uzantı kullanımıyla geliştiriciler donanım avantajı elde etmek için çalışma kodlarını çeşitli çoklu işlemcilerde dağıtabilirler.

  • Windows Communication Foundation (WCF)

WS-* standartlarını kullanarak bir servisin uç noktasından diğerine mesajlar olarak veri göndermek için kullanılır.

  • Asp.Net Web API

ASP.NET Web API’si, mobil cihazlar, iPhone ve tabletler ve tarayıcılar gibi çok çeşitli istemciler için kullanılan HTTP hizmetlerini oluşturmak için bir framework görevi görür.

  • Visual Studio

Geliştiricilerin çeşitli programların kodlarını yazarak ve değiştirerek hataların algılanması ve giderilmesinde yardımcı olan bir araç kütüphanesidir. Ayrıca  Windows Mağazası uygulamaları, mobil uygulamalar, masaüstü uygulamaları, ASP.NET web uygulamaları ve web servisleri geliştirmek için de kullanılır.