ilgiliforum facebook   ilgiliforum google plus   ilgiliforum instagram   ilgiliforum youtube   ilgiliforum tumblr   ilgiliforum pinterest   ilgiliforum rss  

Microsoft .NET ve .NET Framework Hakkında Sıkça Sorulanlar

 
Bu konu ile benzer olabilecek diğer forum sayfaları
 
 
 
 
Microsoft .NET ve .NET Framework Hakkında Sıkça Sorulanlar
Bu makalemizde "Microsoft .NET" ve ".NET Framework" konusunda sıkça sorulan terminolojilere yer veriyoruz.
 
Yazar: Selçuk Giray Özdamar
Yazıldığı Tarih: 08.05.2005
 
 
 
 
 
 
Microsoft .NET nedir?
Microsoft .NET insanların, bilginin, sistemlerin ve cihazların iletişimini sağlayan bir platformdur. İstemci ve sunucu uygulamaların yanısıra geliştirme araçlarını da kapsamaktadır. Bu oluşum içerisinde aynı zamanda:
 
Web tabanlı uygulamarın, web servislerinin ve her türlü uygulamanın geliştirilip çalıştırılabildiği bir platform olan .NET Framework de bulunmaktadır. .NET Framework ile uygulamalar iletişim standartlarına(SOAP, XML, HTTP vb) uygun olarak geliştirilebilmektedir.
Visual Studio .NET gibi entegre geliştirme ortamlarına(Integrated Development Environment - IDE ) ve araçlara sahiptir. Bu araçlar sayesinde .NET Framework ile uygulama geliştirme daha kolay hale gelmekte ve verimlilik maksimum düzeye ulaşmaktadır.
 
Not : Visual Studio .NET'in stabil son versiyonu Visual Studio .NET 2003 olmakla birlikte geçtiğimiz Nisan ayı içerisinde Visual Studio.NET 2005'in Beta 2 versiyonu çıkmıştır. Kod adı "Whidbey" olan Visual Studio.NET 2005'in son stabil versiyonunun ise Eylül ayında çıkması beklenmektedir.
Web servisleri ve web tabanlı uygulamalar ile entegre çalışabilen ve bu uygulamaların kolaylıkla yönetilebildiği Windows Server 2003, Microsoft SQL Server ve Microsoft Biztalk Server gibi sunucuları da kapsamaktadır.
İstemci(client) ve masaüstü uygulamaların rahatlıkla çalışabildiği Windows XP, Windows CE ve Microsoft Office gibi platformları da kapsamaktadır.
 
 
.NET Framework nedir?
Microsoft .NET Framework, uygulamaların ve web servislerinin inşa edilebildiği(build), yayımının yapılabildiği(deploy) ve çalıştırılabildiği(run) bir platformdur.
"Build - Deploy - Run" .NET Framework platformu için üç anahtar kelimedir. Verimliliği yüksek, standartlara uygun ve çoklu dil desteği bulunan bir platformdur. Internet ölçekli uygulamaların operasyonu ve yayımlanması için karşımıza çıkan zorluklar .NET Framework'ün sağladığı servisler sayesinde rahatlıkla aşılabilmektedir. .NET Framework iki temel bölümden oluşmaktadır: Common Lanuguage Runtime, Hiyerarşik düzendeki sınıf kütüphanesi.
 
.NET Framework:
20 den fazla programlama diline destek vermekte
Uygulama geliştiricilerin iş mantığı(business logic) içeren kod kısmına yoğunlaşmalarını sağlamakta
Güvenli, sağlam, yüksek performanslı uygulamaların geliştirilebilmesini sağlamaktadır. Eskiye göre; geliştirme, yayımlama ve yönetimin çok daha kolay olduğu bir platformdur.
Desteklenen Programlama Dilleri
 
APL Fortran Pascal
C++ Haskell Perl
C# Java Language Python
COBOL Microsoft JScript RPG
Component Pascal Mercury Scheme
Curriculum Mondrian SmallTalk
Eiffel Oberon Standard ML
Forth Oz Microsoft Visual Basic
 
 
 
Common Language Runtime (CLR) nedir?
Common Language Runtime çalışma zamanı servislerinden sorumludur. Programlama dillerinin entegrasyonu(language integration), güvenlik(security), bellek(memory), süreç(process) ve thread(iş parçacığı) yönetimi çalışma zamanı servislerindendir. CLR bunun yanı sıra geliştirme zamanında da bazı rollere sahiptir, örneğin tip güvenliğinin sağlanması gibi.
 
 
 
Common Language Runtime, .NET Framework ile yazılmış uygulamaların işletiminden sorumlu bir motor gibi görev yapmaktadır.
 
 
 
 
 
CLR'nin sağladığı ve sorumlu olduğu bazı servisler aşağıda listelenmektedir:
 
Kod yönetimi(Code Management): Loading ve Execution
Uygulama belleğinin izolasyonu
Tip güvenliğinin(type safety) doğrulanması
IL(Intermediate Language) kodunun doğal makina koduna(native code) dönüşümünün sağlanması
Metadata(tipe ait detaylandırılmış bilgiler) bilgisine erişimin sağlanması
Yönetilebilir nesnelerin(managed object) bellek yönetiminin sağlanması
Kod erişim güvenliğinin(code access security) uygulanması
İstisna yönetimi(Exception Management)
Yönetilebilir kodlar, COM nesneleri ve hazır DLL'lerin birbirleri arasında işletimlerinin sağlanması
Nesne otomasyonunun sağlanması
Uygulama geliştiriciler için servislerin sağlanması(debugging vb.)
 
 
Sınıf Kütüphaneleri
Temel sınıflar; giriş/çıkış(input/output), string işlemleri, güvenlik yönetimi, ağ iletişimi, thread yönetimi, metin işleme ve kullanıcı arayüz tasarımı gibi standart fonksiyonları kapsamaktadır.
 
ADO.NET sınıfları; OLE DB, ODBC, Oracle ve SQL Server arayüzleri üzerinden veriye erişimi sağlamaktadır. XML sınıfları ise XML manipulasyonu, XML veri içerisinde arama yapabilme ve dönüşüm fonksiyonları gibi temel fonksiyonlara sahiptir. ASP.NET sınıfları web tabanlı uygulamalar ve web servisleri geliştirebilmek için destek sağlamaktadır. Windows Forms sınıfları ise masaüstü uygulamaları geliştirebilmeyi sağlamaktadır.
 
Sınıf kütüphaneleri, .NET Framework dilleri arasında ortak, tutarlı bir geliştirme arayüzü sağlamaktadır.
 
 
 
Common Type System (CTS) nedir?
CLR içerisine inşa edilmiş güçlü ve zengin bir tip sistemidir(type system). Çoğu programlama dilinde bulunan tipleri ve bu dillerin operasyonlarını desteklemektedir. Birçok programlama dilinde bulunan tiplerin Common Type System içerisinde gerçekleştirimi yapılmış durumdadır.
 
 
 
Common Language Specification (CLS) nedir?
Common Language Specification(CLS), bünyesinde barındırdığı birtakım yapıları ve kısıtları ile kütüphane(library) ve derleyici(compiler) yazabilmek için rehberlik yapmaktadır. CLS, yazılan bir kütüphanenin CLS'yi destekleyen diğer programlama dilleri ile entegre şekilde çalışabilmesini ve bu diller tarafından da kullanılabilmesini sağlamaktadır. CLS, CTS'nin bir altkümesidir. CLS uygulama geliştiriciler için büyük önem arzetmektedir. Öyle ki bir uygulama geliştirici yazdığı kodun diğer kod geliştiriciler tarafından da kullanılabilir olmasını gözönünde bulundurmalıdır. CLS'nin kriterleri ve kuralları gözönünde bulundurularak yazılan bir API(Application Program Interface), diğer programlama dilleri içerisinden kullanılabilmekte, Common Language Runtime tarafından da işletilebilmektedir.
 
 
 
Microsoft Intermediate Language (MSIL) nedir?
MSIL işlemciden bağımsız komut setinden oluşmaktadır. Bu komut seti içerisinde nesnelerin yüklenmesi, depolanması ve initialize edilmesini sağlayan komutların yanı sıra aynı zamanda nesneler üzerinde metod çağrımını sağlayan komutlar da yeralmaktadır. .NET Framework ile yazılmış bir kaynak kodun derlenmesi sonucu MSIL kodu oluşmaktadır. MSIL, Metadata ve CTS sayesinde .NET dilleri arasında bir bütünleşme sağlanmaktadır. MSIL kodun çalıştırılmasından önce varolan MSIL kodu doğal makina koduna(native code) dönüştürülmektedir. Interpretation dediğimiz yorumlama işlemi yapılmaz.
 
 
 
Managed Code ve Managed Data nedir?
Kodun çalıştırılabilmesi için gerekli servislerin ve hizmetlerin Common Language Runtime'dan alındığı koda "Managed Code(Yönetilebilir Kod)" denilmektedir. CLR tarafından gerekli servis ve hizmetlerin alınabilmesi için yönetilebilir kodun bilgisinin(metadata) bulunması gerekmektedir. Kodun çalıştırılabilmesi için çalışma zamanında bu bilgi CLR tarafından kullanılacaktır. C#, Visual Basic .NET ve Jscript.Net ile yazılan kodlar yönetilebilir kodlardır. Visual Studio.NET içerisinde yazılan C++ kodu varsayılan olarak yönetilemeyendir. C++ kodunun derleme sonrası oluşan kodun yönetilebilir olmasını sağlamak için derleme işlemi sırasında "/CLR" parametresinin de belirtmek gerekmektedir.
 
Veri(data) için gerekli yer tahsisinin CLR tarafından yapıldığı veriye "Managed Data(Yönetilebilir Veri)" denilmektedir. Aynı şekilde veri için bellekte tahsis edilmiş yerin tekrar geri alınması işlemi CLR içerisinde bulunan Garbage Collector tarafından yapılmaktadır. C#, Visual Basic .NET ve Jscript.Net verileri varsayılan olarak yönetilebilir verilerdir. C# verileri program içerisinde belirtilecek anahtar kelimelerle yönetilemeyen(unmanaged) veri olarak belirlenebilmektedir. Visual Studio.NET C++ verisi varsayılan olarak yönetilemeyen veridir. /CLR parametresinin verildiği durumda veri yönetilebilir olmaktadır. Ancak C++'ın yönetilebilir uzantıları (Managed Extension) ile yazılan bir sınıfın "_gc" anahtar kelimesi ile tanımlanması bu sınıftan oluşturulan nesnelerin yönetilebilir olmasını sağlamaktadır. Anahtar kelimeden(_gc) anlaşılacağı gibi veri Garbage Collector tarafından yönetilmektedir. C++ ile yazılan bu yönetilebilir sınıf diğer .NET dilleri tarafından da kullanılabilmekte. Yönetilebilir C++ sınıfı özelliklerini bir C# sınıfından kalıtım(inheritance) ile alabilmektedir. Ancak C++ yönetilebilir sınıfı kalıtım(inheritance) yoluyla en fazla bir adet sınıftan özelliklerini alabilmektedir.

ALINTIDIR
 
 
Forumlar okunmak ve paylaşmak içindir...

 
 

 ~ 

Bu konunun linki : 

Yukarıdaki linki arkadaşlarınıza göndermek için kullanabilirsiniz ve bu sayfada; Microsoft .NET ve .NET Framework Hakkında Sıkça Sorulanlar hakkında bilgiler nedir yazıları veya şiirleri gibi sözleri veya resimleri Microsoft .NET ve .NET Framework Hakkında Sıkça Sorulanlar siteleri gibi benzer birçok forum konularını bulabilirsiniz.

 ~ 

Son Forum Mesajları

Kaynak linkimizi belirtmek koşulu ile her türlü bilgiyi kopyalayabilirsiniz. Forum içerisinde yazılan tüm mesajların hukuki sorumlulukları mesajları yazanlara aittir. Üyeler, üyelik sözleşmesi gereği bu kuralı kabul etmiş sayılır. Ziyaretçilerimiz bu forumu kullanmadan önce Forum Kurallarını okumak zorundadırlar. Aksi durumda meydana gelecek bütün olumsuz durumlardan ziyaretçilerin bizzat kendileri sorumludur. Sitemizde telif, kişi haklarına; yasalara aykırı olduğunu düşündüğünüz bir konu görürseniz bize aşağıdaki iletişim adresinden ulaşabilirsiniz.

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750, 800, 850, 900, 950, 960

© 2006-2019 ilgiliFORUM.com