ูู ุงูู .NET Frameworkุ ูู ุญุงุฌุชูู ู ูู ูู ุฌุฏูุง ูุถู ุงู ุฅู ูุบุงุช ุงูุจุฑู ุฌุฉ ุงูู ุฎุชููุฉ ุชุดุชุบู ู ุน ุจุนุถ ุจุณูุงุณุฉ: CLS ู CTS. ููุง ููุชููู ุนู ูู ูุงุญุฏ ูููู ููุงุฆุฏุชูู .
Common Language Specification (CLS)
- CLS is a part of CLR in the .NET Framework.
- ุจุชุชููู ุนูู ุงู specification ุจุชุงุน ุงู common language (IL)
- CLS stands for Common Language Specification and it is a subset of CTS. It defines a set of rules and restrictions that every language must follow which runs under the .NET framework.
ุฅูู ูู CLSุ
- ุงููCLS ูุนูู Common Language Specificationุ ูุฏู ุฌุฒุก ู ู ุงูู .NET ุจูุญุฏุฏ ู ุฌู ูุนุฉ ู ู ุงูููุงุนุฏ ูุงููููุฏ ุงููู ูุงุฒู ูู ูุบุฉ ุจุฑู ุฌุฉ ุจุชุดุชุบู ุนูู ุงูู .NET ุชุชุจุนูุง.
- ุงููุฏู ู ู CLS ูู ุฅูู ูุถู ู ุฅู ุงูููุฏ ุงูู ูุชูุจ ุจุฃู ูุบุฉ ู ู ุงููุบุงุช ุงูู ุฏุนูู ุฉ ูู .NET ููุฏุฑ ูุชูุงุนู ููุชูุงุตู ู ุน ูุบุงุช ุชุงููุฉ ุจุณูููุฉ.
ููู CLS ู ูู ุ
- ุจูุณูู ุงูุชูุงูู ุจูู ูุบุงุช ุจุฑู ุฌุฉ ู ุฎุชููุฉ ุฒู C#, VB.NET, F#, ูุบูุฑูุง.
- ุจูุถู ู ุฅู ุงูู ูููุงุช ุงููู ุจุชุชุนุงู ู ู ุน ุจุนุถูุง ุชููู ู ุชูุงููุฉ ู ุน ุจุนุถุ ูุฏู ุจูุณูู ุฅุนุงุฏุฉ ุงุณุชุฎุฏุงู ุงูููุฏ ูุชุทููุฑ ุงูุชุทุจููุงุช ุงููุจูุฑุฉ.
ุฃู ุซูุฉ ุนูู ููุงุนุฏ CLS:
- ุงุณุชุฎุฏุงู
ุฃููุงุน ุจูุงูุงุช ู
ุฏุนูู
ุฉ ู
ู CLS ุฒู
int
,string
,bool
. - ู ูุน ุงุณุชุฎุฏุงู ุฃููุงุน ุฎุงุตุฉ ุฃู ุบูุฑ ู ุฏุนูู ุฉ ูู ุจุนุถ ุงููุบุงุช.
- ุชุญุฏูุฏ ุฃุณู ุงุก ุงูู ูุงุถูุน ุจุดูู ู ูุญุฏ ุนุดุงู ุชููู ู ูููู ุฉ ููู ุงููุบุงุช.
Common Type System (CTS)
ุฅูู ูู CTSุ
- ุงููCTS ูุนูู Common Type Systemุ ูุฏู ูู ูุธุงู ุฃููุงุน ุงูุจูุงูุงุช ุงูู ูุญุฏ ูู .NET.
- ุงูู CTS ุจูุญุฏุฏ ุฃููุงุน ุงูุจูุงูุงุช ุงููู ุจููุฏุฑ ุงูู .NET Framework ูุชุนุงู ู ู ุนุงูุงุ ูุฏู ุจูุดู ู ุฃููุงุน ุงูุจูุงูุงุช ุงูุจุณูุทุฉ ูุงูู ุนูุฏุฉ.
ููู CTS ู ูู ุ
- ุจูุถู ู ุฅู ุฃู ููุน ุจูุงูุงุช ุจูุชู ุชุนุฑููู ูู ุฃู ูุบุฉ ุจุฑู ุฌุฉ ุจูุจูู ู ุชูุงูู ู ุน ุจุงูู ุงููุบุงุช.
- ุจูุณูู ุนู ููุฉ ุงูู Compilation ูุงูุชุญููู ููู IL (Intermediate Language) ุจุญูุซ ุชููู ู ุชูุงููุฉ ูู ุด ู ุญุชุงุฌุฉ ุชุนุฏููุงุช ุจูู ุงููุบุงุช ุงูู ุฎุชููุฉ.
ู ูููุงุช ุงูู CTS:
ุฃููุงุน ุงูู Types ูู CTS:
-
ุงูู CTS ุจููุณู ุงูู Types ูููุนูู ุฑุฆูุณููู:
- ุงููValue Types: ุฒู
int
,bool
,double
,struct
,enum
. ุจุชุฎุฒู ุงูููู ู ุจุงุดุฑุฉ ูู ุงูู Stack ุฃู ุฌูุง ุงููุงุฆูุงุช ุนูู ุงูู Heap. - ุงููReference Types: ุฒู
class
,string
,array
,delegate
. ุจุชุฎุฒู ู ุฑุฌุน ููุจูุงูุงุช ุนูู ุงูู Heap.
- ุงููValue Types: ุฒู
-
ุงุชููู ุช ุนููู ูุจู ูุฏุง Cs Value and Reference Types
ุฅุฒุงู CTS ู CLS ุจูุชุนุงู ููุง ู ุน ุจุนุถุ
- ุงูู CLS ูู ู ุฌู ูุนุฉ ู ู ุงูููุงุนุฏ ุงููู ุจุชุนุชู ุฏ ุนูู ุงูู CTS ูุถู ุงู ุชูุงูู ุงูู Types ุจูู ุงููุบุงุช ุงูู ุฎุชููุฉ.
- ู ุซูุงูุ ุงูู CLS ุจูุญุฏุฏ ุฅู ูุงุฒู ุชุณุชุฎุฏู ุฃููุงุน ุจูุงูุงุช ู ุฏุนูู ุฉ ู ู ุงูู CTS ุนุดุงู ุชููู ู ุชูุงููุฉ ู ุน ุจุงูู ุงููุบุงุช ูู ุงูู .NET.
ู ุซุงู ุชูุถูุญู
ุฎูููุง ูุงุฎุฏ ู ุซุงู ุจุณูุท ุนุดุงู ูููู ุงููุฑู ุจูู CLS ู CTS:
- ูู ุนูุฏู ููุงุณ ู
ูุชูุจ ุจู C# ุจูุณุชุฎุฏู
ููุน ุจูุงูุงุช
int
:
public class MyClass
{
public int MyProperty { get; set; }
}
- ุงูููุน
int
ุฏู ู ุฏุนูู ู ู CLS ูุจูุชู ุชุนุฑููู ูู CTS ููSystem.Int32
. - ูู ุญุฏ ูุชุจ ููุฏ ุจููุณ ุงูููุงุณ ุฏู ุจูุบุฉ ุชุงููุฉ ุฒู VB.NETุ ูููุฏุฑ ูุณุชุฎุฏู
MyClass
ุจููุณ ุงูุทุฑููุฉ ูุฃูint
ูSystem.Int32
ู ุชูุงูููู ุญุณุจ CTS ูCLS.
ุงูุฎูุงุตุฉ
- ุงููCLS ุจูุญุฏุฏ ุงูููุงุนุฏ ูุงููููุฏ ูุถู ุงู ุงูุชูุงูู ุจูู ูุบุงุช ุงูุจุฑู ุฌุฉ ุงูู ุฎุชููุฉ ูู .NET.
- ุงููCTS ูู ูุธุงู ุฃููุงุน ุงูุจูุงูุงุช ุงูู ูุญุฏ ุงููู ุจูุถู ู ุฅู ูู ุงูู Types ูู .NET ู ุชูุงููุฉ ูุณููุฉ ุงูุงุณุชุฎุฏุงู ุจูู ุงููุบุงุช ุงูู ุฎุชููุฉ.
- ุงูุงุชููู ุจูุดุชุบููุง ู ุน ุจุนุถ ุนุดุงู ูุญูููุง ุงูุชูุงูููุฉ ูุงูู ุฑููุฉ ูู ุชุทููุฑ ุงูุชุทุจููุงุช ุนูู ู ูุตุฉ .NET.
ููู ุงูู CLS ู CTS ุจูุณุงุนุฏู ุชูุชุจ ููุฏ ู ุชูุงูู ููุงุจู ูุฅุนุงุฏุฉ ุงูุงุณุชุฎุฏุงู ุจูู ูุบุงุช ู ุฎุชููุฉุ ูุฏู ุจูุณุงูู ูู ุชุญุณูู ููุงุกุฉ ูุชุทููุฑ ุงูุชุทุจููุงุช ุจุดูู ุฃุณูู ูุฃุณุฑุน.