.NET ve Ekosistemine Bakış

Loading

.NET, Microsoft tarafından geliştirilen, Mobil , Web , Masaüstü , Nesnelerin interneti (IoT) gibi alanlarda uygulamalar geliştirilebilen bir ekosistemdir. Bu ekosistem ölçeklenebilir ve performanslı yazılım geliştirmeyi destekleyen Diller (C# , F# , VisualBasic) , Araçlar(Visual Studio , Visual Studio Code) , Kütüphaneler içerir. Sunulduğu tarihten (2002 .NET 1.0) beri sürekli geliştiren sorunlarına çözümler üreten aktif bir topluluğa sahiptir.

Bu ekosistem yapısında  CLR (Common Language Runtime) ve FCL (Framework Class Library) olmak üzere iki ana bileşeni vardır.

=> CLR : CLR aslında Ortak Dil Çalışma Zamanı olarak isimlendirilir. Yazılan kodları derler ve bu esnada C# Compiler çalışarak .dll dosyaları ve .exe çıktıları oluşur sonrasında kodlar makine diline(assembly kodlarına) çevrilmiş olur.

Mesela C# dili ile bir uygulama yazdığımızda ve bunu derlediğimizde Compiler devreye girer ve uygulamanın .dll ve .exe çıktılarını oluşur.

Yani (MSIL – Microsoft Intermediate Language) dönüşmüş olur. Sebebi Makinalar yazdığımız kodları anlayamazlar. Bunların Makina diline çevrilmeleri gerekir Microsoft ta kodları MSIL(orta dil) ye çevirir ve .exe dosyası olarak kaydeder. Sonra da JIT(Just in Time) adı verilen derleyici ile makina diline çevrilir. ve Uygulama çalışır

=> FCL : Framework Class Library .NET platformunda yazılım geliştirmeyi kolaylaştıran bir çok kütüphanelerden oluşan büyük bir kütüphanedir.

-.NET Framework : .NET uygulamalarıdır. Windows’ta çalışan web hizmetleri , Masaüstü uygulamalar geliştirilebilen , programlama dilleri ve kütüphaneler barındıran bir ortamıdır..

.NET Ekosisteminin Programlama Dilleri

C# (C sharp), F# (F sharp) ve Visual Basic, NET geliştirmesine yönelik Microsoft destekli üç dildir.

C# : Basit, modern ve nesne odaklı bir programlama dilidir. C#, C dil ailesine benzer bir söz dizilimine sahiptir

F# : kolay anlaşılır bir fonksiyonel programa dilidir. Kısa, sağlam ve yüksek performanslı kod yazmayı kolaylaştıran açık kaynaklı bir dildir. Aynı zamanda standart kütüphaneye sahiptir.

Visual Basic : Microsoft tarafından geliştirilen nesne odaklı bir programlama dilidir. Öğrenilmesi ve okunması oldukça basit ve yüksek seviyeli bir dil dir.

Ortak Dil Altyapısı (CLI) dilleri : Ortak Dil Altyapısı (CLI), uygulama kodunu değiştirmeden farklı bilgisayar sistemlerinde üst düzey dil programı uygulamalarını çalıştırmak için kullanılan bir Microsoft özelliğidir. .NET Ortak Dil Altyapısı (CLI) uygulamasıdır. Kısaca , .NET uyumlu diller oluşturmak için bir şablon olarak düşünebilirsiniz.

.NET uygulama Türleri

Uygulama türleri, hızlı ve verimli .NET proje geliştirmesini destekleyen geliştirici araçları ve kütüphanelerinden oluşan bir sistemdir. Aşağıda listelenenler gibi, farklı uygulama türleri vardır.

Web uygulamaları

Asp.Net ortamı .NET ekosistemini genişletir. Web uygulamaları REST API (Web servisler), HTML, CSS ve JavaScript ve Kütüphaneleri , Python gibi teknolojileri destekler.

Mobil uygulamalar

Xamarin i iOS ve Android dâhil olmak üzere tüm önemli mobil işletim sistemlerinde .NET uygulamalarını çalıştırmak için kullanılabilir. Xamarin, açık kaynaklı bir mobil kullanıcı arabirimi çerçevesi olan Xamarin.Forms’u barındırır. .NET geliştiricileri, mobil platformlarda tutarlı bir kullanıcı deneyimi oluşturmak için Xamarin.Forms’u kullanır.

Masaüstü uygulamaları

Masaüstü uygulaması geliştirmek için Windows Form , WPF, Windows’ta geniş bir kullanıcı arayüzü sunan ve tasarımı için kullanılanortamdır.

Diğer uygulamalar

ML.NET ortamında C# ve F# dilleri ile Windows, Linux ve macOS işletim sistemlerinde makina öğrenmesi, yapay zekâ ile ilgili çalışmalar imkanı sağlamaktadır bunları .NET uygulamalarınıza entegre edilebilir. Sensörler , gömülü sistemler ve diğer akıllı cihazlar üzerinde uygulamalar geliştirmek için .NET IoT Kütüphaneleri kullanılabilir. NuGet deposunda birçok işlevsel kütüphane barındırmaktadır. Hemen hemen her amaç için birçok .NET kütüphanesi oluşturmak, paylaşmak ve kullanmak için Nuget deposuda kullanılabilir..

Sağlıcakla kalın……

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Mesut Yiğit

Kaliteli bilgilerin bulunduğu, paylaşımcı ve her daim geliştirici bir öğrenimin benimsendiği Teknik ve diğer konularda kendime ve geleceğe notlar