.NET sınıf kitaplığına genel bakış
.NET API'leri, geliştirme sürecini hızlandıran, iyileştiren ve sistem işlevselliğine erişim sağlayan sınıflar, arabirimler, temsilciler ve değer türleri içerir. Diller arasında birlikte çalışabilirliği kolaylaştırmak için çoğu .NET türü CLS ile uyumludur ve bu nedenle derleyicisi ortak dil belirtimine (CLS) uygun olan herhangi bir programlama dilinde kullanılabilir.
.NET türleri.NET uygulamalarının, bileşenlerinin ve denetimlerin temelleridir. .NET, aşağıdaki işlevleri gerçekleştiren türleri içerir:
Temel veri türlerini ve özel durumları temsil etme.
Veri yapılarını kapsülleme.
I/O gerçekleştirin.
Yüklenen türler hakkında bilgilere erişin.
.NET güvenlik denetimlerini çağırma.
Veri erişimi, zengin istemci tarafı GUI ve sunucu denetimli, istemci tarafı GUI'sini sağlar.
.NET, soyut ve somut (soyut olmayan) sınıfların yanı sıra zengin bir arabirim kümesi sağlar. Somut sınıfları olduğu gibi kullanabilir veya çoğu durumda onlardan kendi sınıflarınızı türetin. Arabirimin işlevselliğini kullanmak için arabirimi uygulayan bir sınıf oluşturabilir veya arabirimi uygulayan .NET sınıflarından bir sınıf türetebilirsiniz.
Adlandırma kuralları
.NET türleri, hiyerarşiyi ifade eder, nokta söz dizimi adlandırma şeması kullanır. Bu teknik, ilgili türleri daha kolay aranacak ve başvurulacak şekilde ad alanları halinde gruplar. Tam adın en sağdaki noktaya — kadar olan ilk bölümü ad alanı — adıdır. Adın son bölümü tür adıdır. Örneğin, System.Collections.Generic.List<T> ad List<T> alanına ait olan türünü temsil System.Collections.Generic eder. içinde System.Collections.Generic türleri, genel koleksiyonlarla çalışmak için kullanılabilir.
Bu adlandırma şeması, .NET'i genişleten kitaplık geliştiricilerinin hiyerarşik tür grupları oluşturmalarını ve bunları tutarlı, bilgilendirici bir şekilde adlandırmalarını kolaylaştırır. Ayrıca türlerin tam adlarıyla (ad alanı ve tür adına göre) belirsiz bir şekilde belirlenerek tür adı çakışmalarını önlemeye de olanak sağlar. Kitaplık geliştiricilerinin ad alanları için ad oluştururken aşağıdaki kuralı kullanmaları beklenir:
CompanyName. TechnologyName
Örneğin, ad alanı Microsoft.Word bu kılavuza uygun.
ad alanları içinde ilgili türleri grup için adlandırma desenleri kullanımı, sınıf kitaplıklarını derlemek ve belgelendirmek için kullanışlı bir yol sağlar. Ancak bu adlandırma şemasının görünürlük, üye erişimi, devralma, güvenlik veya bağlama üzerinde hiçbir etkisi yoktur. Bir ad alanı birden çok derleme arasında bölümlenmiş olabilir ve tek bir derleme birden çok ad alanının türlerini içerebilir. Derleme, ortak dil çalışma zamanında sürüm, dağıtım, güvenlik, yükleme ve görünürlük için resmi yapı sağlar.
Ad alanları ve tür adları hakkında daha fazla bilgi için bkz. Common Type System.
Sistem ad alanı
Ad System alanı, .NET'te temel türler için kök ad alanıdır. Bu ad alanı, tüm uygulamalar tarafından kullanılan temel veri türlerini temsil eden sınıflar içerir; örneğin, (devralma hiyerarşisinin Object kökü), Byte , , , ve Char Array Int32 String . Bu türlerin çoğu, programlama dilinizin kullandığı ilkel veri türlerine karşılık gelen verilerdir. .NET türlerini kullanarak kod yazarken, bir .NET temel veri türü beklendiği zaman dilinizin karşılık gelen anahtar sözcüğünü kullanabilirsiniz.
Aşağıdaki tabloda .NET'in temini yapılan temel türler listelenin, her türü kısaca açıklar ve Visual Basic, C#, C++ ve F# dillerinde karşılık gelen türü gösterir.
| Kategori | Sınıf adı | Description | Visual Basic veri türü | C# veri türü | C++/CLI veri türü | F# veri türü |
|---|---|---|---|---|---|---|
| Tamsayı | Byte | 8 bitlik bir imzasız tamsayı. | Byte |
byte |
unsigned char |
byte |
| SByte | 8 bit imzalı bir tamsayı. CLS uyumlu değil. |
SByte |
sbyte |
char veya signed char |
sbyte |
|
| Int16 | 16 bit imzalı tamsayı. | Short |
short |
short |
int16 |
|
| Int32 | 32 bit imzalı tamsayı. | Integer |
int |
int veya long |
int |
|
| Int64 | 64 bit imzalı tamsayı. | Long |
long |
__int64 |
int64 |
|
| UInt16 | 16 bitlik bir imzasız tamsayı. CLS uyumlu değil. |
UShort |
ushort |
unsigned short |
uint16 |
|
| UInt32 | 32 bitlik bir imzasız tamsayı. CLS uyumlu değil. |
UInteger |
uint |
unsigned int veya unsigned long |
uint32 |
|
| UInt64 | 64 bitlik bir imzasız tamsayı. CLS uyumlu değil. |
ULong |
ulong |
unsigned __int64 |
uint64 |
|
| Kayan nokta | Half | Yarı duyarlıklı (16 bit) kayan nokta numarası. | ||||
| Single | Tek duyarlıklı (32 bit) kayan nokta numarası. | Single |
float |
float |
float32 veya single |
|
| Double | Çift duyarlıklı (64 bit) kayan nokta numarası. | Double |
double |
double |
float veya double |
|
| Mantıksal | Boolean | Boole değeri (true veya false). | Boolean |
bool |
bool |
bool |
| Diğer | Char | Unicode (16 bit) karakteri. | Char |
char |
wchar_t |
char |
| Decimal | Ondalık (128-bit) bir değer. | Decimal |
decimal |
Decimal |
decimal |
|
| IntPtr | Boyutu temel alınan platforma bağlı olan imzalı bir tamsayı (32 bitlik bir platformda 32 bitlik bir değer ve 64 bit platformda 64 bit değer). | nint |
unativeint |
|||
| UIntPtr | Boyutu temel alınan platforma bağlı olan bir imzasız tamsayı (32 bitlik bir platformda 32 bit değer ve 64 bit platformda 64 bit değer). CLS uyumlu değil. |
nuint |
unativeint |
|||
| Object | Nesne hiyerarşisinin kökü. | Object |
object |
Object^ |
obj |
|
| String | Unicode karakterlerinin sabit, sabit uzunluklu bir dizesi. | String |
string |
String^ |
string |
Temel veri türlerine ek olarak, ad alanı, özel durumları ele alan sınıflardan uygulama etki alanları ve atık toplayıcı gibi çekirdek çalışma zamanı kavramlarıyla ilgili sınıflara kadar System değişen 100'den fazla sınıf içerir. Ad System alanı birçok ikinci düzey ad alanı da içerir.
Ad alanları hakkında daha fazla bilgi için .NET API Browser'ı kullanarak .NET Sınıf Kitaplığı'ne göz atabilirsiniz. API başvuru belgeleri her bir ad alanı, türleri ve üyelerinin her biri hakkında belgeler sağlar.