Přehled knihovny tříd .NET
Rozhraní .NET API zahrnují třídy, rozhraní, delegáty a typy hodnot, které urychlují a optimalizují proces vývoje a poskytují přístup k funkcím systému. Pro usnadnění interoperability mezi jazyky je většina typů .NET kompatibilní se specifikací CLS a lze ji proto použít z libovolného programovacího jazyka, jehož kompilátor odpovídá specifikaci společného jazyka (CLS).
Typy .NET jsou základem, na kterém se sestavují aplikace, komponenty a ovládací prvky .NET. .NET obsahuje typy, které provádějí následující funkce:
- Představují základní datové typy a výjimky.
- Zapouzdřujte datové struktury.
- Proveďte vstupně-výstupní operace.
- Přístup k informacím o načtených typech
- Vyvolání kontrol zabezpečení .NET
- Poskytuje přístup k datům, bohaté grafické uživatelské rozhraní na straně klienta a serverově řízené grafické uživatelské rozhraní.
.NET poskytuje bohatou sadu rozhraní a také abstraktní a konkrétní třídy (ne abstraktní). Konkrétní třídy můžete použít tak, jak jsou, nebo v mnoha případech odvozovat vlastní třídy. Chcete-li použít funkce rozhraní, můžete buď vytvořit třídu, která implementuje rozhraní, nebo odvodit třídu z jedné z tříd .NET, které implementuje rozhraní.
Zásady vytváření názvů
Typy .NET používají schéma pojmenování tečky, které označuje hierarchii. Tato technika seskupuje související typy do oborů názvů, aby je bylo možné prohledávat a snadněji odkazovat. První část celého názvu (až do nejvíce pravé tečky) je název oboru názvů. Poslední částí názvu je název typu. System.Collections.Generic.List<T>
Například představuje List<T>
typ, který patří do System.Collections.Generic
oboru názvů. Typy lze System.Collections.Generic použít k práci s obecnými kolekcemi.
Toto schéma pojmenování usnadňuje vývojářům knihoven rozšíření .NET k vytváření hierarchických skupin typů a jejich pojmenování konzistentním a informativním způsobem. Umožňuje také jednoznačně identifikovat typy úplným názvem (tj. jejich oborem názvů a názvem typu), což brání kolizím názvů typů. Při vytváření názvů pro své obory názvů se očekává, že vývojáři knihoven budou používat následující konvenci:
CompanyName.TechnologyName
Obor názvů Microsoft.Word
například odpovídá tomuto pokynu.
Použití vzorů pojmenování k seskupení souvisejících typů do oborů názvů je užitečný způsob, jak sestavovat a dokumentovat knihovny tříd. Toto schéma pojmenování však nemá žádný vliv na viditelnost, přístup k členům, dědičnost, zabezpečení nebo vazbu. Obor názvů lze rozdělit mezi více sestavení a jedno sestavení může obsahovat typy z více oborů názvů. Sestavení poskytuje formální strukturu pro správu verzí, nasazení, zabezpečení, načítání a viditelnost v modulu CLR (Common Language Runtime).
Další informace o oborech názvů a názvech typů naleznete v tématu Common Type System.
System – obor názvů
Obor System názvů je kořenový obor názvů pro základní typy v .NET. Tento obor názvů zahrnuje třídy, které představují základní datové typy používané všemi aplikacemi, Object například (kořen hierarchie dědičnosti), Byte, , CharArray, Int32a String. Mnoho z těchto typů odpovídá primitivním datovým typům, které váš programovací jazyk používá. Při psaní kódu pomocí typů .NET můžete použít odpovídající klíčové slovo jazyka, pokud je očekáváno základní datový typ .NET.
Následující tabulka uvádí základní typy, které .NET poskytuje, stručně popisuje jednotlivé typy a označuje odpovídající typ v jazyce Visual Basic, C#, C++ a F#.
Kategorie | Název třídy | Popis | Datový typ Jazyka Visual Basic | Datový typ C# | Datový typ C++/CLI | Datový typ F# |
---|---|---|---|---|---|---|
Celé číslo | Byte | 8bitové celé číslo bez znaménka. | Byte |
byte |
unsigned char |
byte |
SByte | 8bitové celé číslo se signedm. Nedodržuje předpisy CLS. |
SByte |
sbyte |
char nebo signed char |
sbyte |
|
Int16 | 16bitové celé číslo se signedm. | Short |
short |
short |
int16 |
|
Int32 | 32bitové celé číslo se signedm. | Integer |
int |
int nebo long |
int |
|
Int64 | 64bitové celé číslo se signedm. | Long |
long |
__int64 |
int64 |
|
UInt16 | 16bitové celé číslo bez znaménka. Nedodržuje předpisy CLS. |
UShort |
ushort |
unsigned short |
uint16 |
|
UInt32 | 32bitové celé číslo bez znaménka. Nedodržuje předpisy CLS. |
UInteger |
uint |
unsigned int nebo unsigned long |
uint32 |
|
UInt64 | 64bitové celé číslo bez znaménka. Nedodržuje předpisy CLS. |
ULong |
ulong |
unsigned __int64 |
uint64 |
|
Plovoucí desetinná čárka | Half | Poloviční přesnost (16bitové) číslo s plovoucí desetinnou čárkou. | ||||
Single | Jednopřesnost (32bitové) číslo s plovoucí desetinnou čárkou. | Single |
float |
float |
float32 nebo single |
|
Double | Číslo s plovoucí desetinnou čárkou s dvojitou přesností (64bitová verze). | Double |
double |
double |
float nebo double |
|
Logický | Boolean | Logická hodnota (true nebo false). | Boolean |
bool |
bool |
bool |
Jiný důvod | Char | Znak Unicode (16bitový). | Char |
char |
wchar_t |
char |
Decimal | Desetinná (128bitová) hodnota. | Decimal |
decimal |
Decimal |
decimal |
|
IntPtr | Celé číslo, jehož velikost závisí na základní platformě (32bitová hodnota na 32bitové platformě a 64bitová hodnota na 64bitové platformě). | nint |
unativeint |
|||
UIntPtr | Celé číslo bez znaménka, jehož velikost závisí na základní platformě (32bitová hodnota na 32bitové platformě a 64bitová hodnota na 64bitové platformě). Nedodržuje předpisy CLS. |
nuint |
unativeint |
|||
Object | Kořen hierarchie objektů. | Object |
object |
Object^ |
obj |
|
String | Neměnný řetězec znaků Unicode s pevnou délkou. | String |
string |
String^ |
string |
Kromě základníchdatovýchm objektům obsahuje kromě základních datových typů System i obor názvů více než 100 tříd, od tříd, které zpracovávají výjimky, jako jsou základní koncepty modulu runtime, jako jsou Obor System názvů obsahuje také mnoho oborů názvů druhé úrovně.
Další informace o oborech názvů najdete v prohlížeči rozhraní .NET API a procházejte knihovnu tříd .NET. Referenční dokumentace k rozhraní API poskytuje dokumentaci ke každému oboru názvů, jeho typům a jednotlivým členům.
Datové struktury
.NET obsahuje sadu datových struktur, které jsou pracovními chrapami mnoha aplikací .NET. Jedná se většinou o kolekce, ale také další typy.
- Array - Představuje pole objektů silného typu, ke kterým lze přistupovat pomocí indexu. Má pevnou velikost pro svoji konstrukci.
- List<T> - Představuje seznam objektů silného typu, ke kterým lze přistupovat pomocí indexu. Podle potřeby se automaticky změní velikost.
- Dictionary<TKey,TValue> – Představuje kolekci hodnot indexovaných klíčem. K hodnotám je možné přistupovat prostřednictvím klíče. Podle potřeby se automaticky změní velikost.
- Uri – Poskytuje reprezentaci objektu identifikátoru URI (Uniform Resource Identifier) a snadný přístup k částem identifikátoru URI.
- DateTime – Představuje okamžik v čase, obvykle vyjádřený jako datum a čas dne.
Rozhraní API nástroje
.NET obsahuje sadu rozhraní API nástrojů, která poskytují funkce pro mnoho důležitých úloh.
- HttpClient – Rozhraní API pro odesílání požadavků HTTP a příjem odpovědí HTTP z prostředku identifikovaného identifikátorem URI.
- XDocument – Rozhraní API pro načítání a dotazování dokumentů XML pomocí LINQ.
- StreamReader – Rozhraní API pro čtení souborů.
- StreamWriter – Rozhraní API pro zápis souborů.
Rozhraní API modelu aplikace
Existuje mnoho modelů aplikací, které je možné použít s .NET, například:
- ASP.NET – webová architektura pro vytváření webů a služeb. Podporováno ve Windows, Linuxu a macOS (závisí na verzi ASP.NET).
- .NET MAUI – aplikační platforma pro vytváření nativních aplikací, které běží ve Windows, macOS, iOS a Androidu pomocí jazyka C#.
- Windows Desktop – zahrnuje Windows Presentation Foundation (WPF) a model Windows Forms.