Гэр / Интернет дээр ажиллах / Microsoft net framework гэж юу вэ. NET Framework технологийн тойм. CTS нийтлэг төрлийн систем гэж юу вэ

Microsoft net framework гэж юу вэ. NET Framework технологийн тойм. CTS нийтлэг төрлийн систем гэж юу вэ

.NET Framework нь нэгдсэн систем юм Windows бүрэлдэхүүн хэсэг, энэ нь дараагийн үеийн XML програмууд болон вэб үйлчилгээг бий болгох, ажиллуулахыг дэмждэг. .NET Framework-ийг боловсруулахдаа дараах зорилгыг харгалзан үзсэн.

· Объектийн кодыг дотооддоо хадгалах, гүйцэтгэх, интернетээр түгээсэн кодыг орон нутагт гүйцэтгэх эсвэл алсаас гүйцэтгэхэд зориулагдсан тууштай объект хандалтат програмчлалын орчинг бүрдүүлэх.

Байршуулах зөрчилдөөнийг багасгах код гүйцэтгэх орчинг бүрдүүлэх програм хангамжболон хувилбарын хяналт.

Баталгаажуулах кодыг гүйцэтгэх орчинг бүрдүүлэх аюулгүй гүйцэтгэлкод, үүнд үл мэдэгдэх эсвэл бүрэн итгээгүй гуравдагч этгээдийн үүсгэсэн код орно.

· Скрипт бичих орчин эсвэл тайлбарласан кодтой холбоотой гүйцэтгэлийн асуудлыг арилгадаг код гүйцэтгэх орчинг бүрдүүлэх.

Хөгжүүлэгчдийн ажлын нэгдмэл зарчмыг хангах янз бүрийн төрөл Windows програмууд болон вэб програмууд зэрэг програмууд.

· .NET Framework кодыг өөр ямар ч кодтой нэгтгэсэн салбарын стандартын хамтын ажиллагааг хөгжүүлэх.

.NET Framework-ийн үндсэн хоёр бүрэлдэхүүн хэсэг нь Common Language Runtime (CLR) болон .NET Framework Class Library юм. .NET Framework-ийн цөм нь CLR юм. Ажиллах цагийг ажиллах үед кодыг удирдаж, санах ойн удирдлага, урсгал, алсын удирдлага зэрэг үндсэн үйлчилгээг үзүүлдэг агент гэж үзэж болно. Энэ нь аюулгүй байдал, найдвартай байдлыг баталгаажуулдаг хатуу бичих нөхцөл болон бусад төрлийн кодын нарийвчлалыг шалгахад хүргэдэг. Үнэн хэрэгтээ ажиллах үеийн гол ажил бол кодыг удирдах явдал юм. Ажиллах хугацаанд ханддаг кодыг удирдлагатай код гэж нэрлэдэг ба ажиллах хугацаанд ханддаггүй кодыг удирдагдаагүй код гэнэ. .NET Framework-ийн өөр нэг үндсэн бүрэлдэхүүн хэсэг болох ангийн номын сан нь энгийн программуудаас эхлээд программуудыг хөгжүүлэхэд ашигладаг объект хандалтат иж бүрэн цуглуулгыг өгдөг. тушаалын мөрэсвэл хамт GUIВэб маягт, XML вэб үйлчилгээ зэрэг хамгийн сүүлийн үеийн ASP.NET технологийн боломжуудыг ашигладаг программууд хүртэл хэрэглэгчээс.

.NET Framework нь нийтлэг хэлний ажиллах цагийг (CLR) өөрийн процессууд руу ачаалж, удирддаг кодыг ажиллуулдаг удирдлагагүй бүрэлдэхүүн хэсгүүдэд байршуулах боломжтой бөгөөд ингэснээр удирддаг болон удирдагдаагүй гүйцэтгэх хэрэгслүүдийг хоёуланг нь зөвшөөрдөг програмчлалын орчинг бүрдүүлдэг. .NET Framework нь олон тооны үндсэн ажиллах цагийг хангаад зогсохгүй, үндсэн ажиллах цагийн гуравдагч талын хөгжүүлэлтийг дэмждэг.


Жишээлбэл, ASP.NET нь удирдах кодыг өргөтгөх боломжтой, сервер талын орчныг хангахын тулд ажиллах цагийг зохион байгуулдаг. ASP.NET нь ASP.NET програмууд болон XML вэб үйлчилгээг идэвхжүүлэхийн тулд ажиллах цагтай шууд ажилладаг бөгөөд хоёуланг нь энэ сэдвийн сүүлд авч үзэх болно.

Internet Explorerнь ажиллах цагийг (MIME төрлийн өргөтгөл хэлбэрээр) зохион байгуулдаг, удирдлагагүй програмын жишээ юм. Ажиллах цагийг байршуулахын тулд Internet Explorer-г ашиглах нь танд удирддаг бүрэлдэхүүн хэсэг эсвэл Windows Forms хяналтыг HTML баримт бичигт оруулах боломжийг олгоно. Ажиллах цагийг ийм байдлаар зохион байгуулах нь удирддаг гар утасны кодыг (Microsoft® ActiveX®-ийн удирдлагатай төстэй) боломжтой болгодог ч хагас итгэмжлэгдсэн гүйцэтгэл, тусгаарлагдсан файл хадгалах гэх мэт зөвхөн удирддаг кодыг санал болгож чадах томоохон сайжруулалтуудтай.

Дараах зурагт нийтлэг хэлний ажиллах хугацаа болон ангийн номын сан нь таны программууд болон ерөнхий системтэй хэрхэн харьцаж байгааг харуулж байна. Зураг нь илүү том архитектурт удирддаг код хэрхэн ажилладагийг харуулж байна.

NET Framework-ийн контекст

Дараах хэсгүүдэд .NET Framework-ийн үндсэн бүрэлдэхүүн хэсгүүд болон онцлогуудыг илүү дэлгэрэнгүй тайлбарласан болно.


Жишээлбэл, ASP.NET нь ажиллах цагийг байршуулж, серверийн тал дээр удирддаг кодын өргөтгөх боломжтой орчинг бүрдүүлдэг. ASP.NET нь энэ сэдвийн дараа авч үзэх ASP.NET програмууд болон XML вэб үйлчилгээнүүдийг ажиллуулахын тулд ажиллах цагтай шууд ажилладаг.

Internet Explorer нь ажиллах цагийн орчныг (MIME төрлийн өргөтгөл хэлбэрээр) байршуулдаг, удирдлагагүй програмын жишээ юм. Internet Explorer дээр ажиллах цагийг байршуулах нь удирддаг бүрэлдэхүүн хэсэг эсвэл элементүүдийг оруулах боломжийг танд олгоно Windows удирдлагаМаягтыг HTML баримт бичигт оруулах. Орчны ийм байрлал нь хяналттай ажиллах боломжийг олгодог гар утасны код(Microsoft® ActiveX® удирдлагатай төстэй), гэхдээ хэсэгчилсэн итгэлцэл, тусгаарлагдсан файл хадгалах гэх мэт удирддаг кодын чухал ач холбогдолтой.

Дараах зурагт нийтлэг хэлний ажиллах хугацаа (CLR) болон ангийн номын сан нь хэрэглэгчийн програмууд болон бүхэл системтэй хэрхэн холбоотой болохыг харуулж байна. Зураг нь илүү өргөн хүрээний архитектурт удирддаг код хэрхэн ажилладагийг харуулж байна.

NET Framework-ийн контекст

Дараах хэсгүүдэд .NET Framework-ийн үндсэн бүрэлдэхүүн хэсгүүд болон онцлогуудын дэлгэрэнгүй тайлбарыг өгсөн болно.

Оршил

ПЛАТФОРМ гэдэг нь наад зах нь программыг гүйцэтгэх орчин ба ... программын кодыг боловсруулах, хэрэгжүүлэх онцлогийг тодорхойлдог өөр нэг зүйл - програмчлалын парадигмууд, програмчлалын хэлүүд, үндсэн ангиудын багц юм.

Microsoft.NET (.NET Framework) нь програм хангамжийн платформ юм. Дараах үндсэн бүрэлдэхүүн хэсгүүдийг агуулна: нийтлэг хэлний ажиллах хугацаа (CLR) болон .NET Framework ангийн номын сан (.NET FCL).

CLS (Нийтлэг хэлний тодорхойлолт) - ерөнхий тодорхойлолтпрограмчлалын хэлүүд. Энэ нь .NET Framework дахь номын сан болон хөрвүүлэгч бичигчдэд зааварчилгаа өгдөг бүтэц, хязгаарлалтуудын багц юм. CLS-ийн дагуу баригдсан номын сангуудыг CLS-ийг дэмждэг ямар ч програмчлалын хэлнээс ашиглаж болно. CLS-тэй нийцтэй хэлүүд (Visual C#, Visual Basic, Visual C++ гэх мэт) бие биетэйгээ нэгтгэх боломжтой. CLS нь Microsoft.NET платформ дахь хэл хоорондын харилцан үйлчлэлийн үндэс суурь юм.

CLR (Common Language Runtime) - Runtime Environment буюу виртуал машин. Чуулганы гүйцэтгэлийг баталгаажуулна. .NET Framework-ийн үндсэн бүрэлдэхүүн хэсэг. Доод виртуал машинкапсуллагдсан (салангид) удирддаг хийсвэрийг ойлгох үйлдлийн систем өндөр түвшин, энэ нь програмын кодын гүйцэтгэлийг хангаж, дараахь ажлуудын шийдлийг багтаана.

§ кодын удирдлага (ачаалах, гүйцэтгэх),

§ объект байрлуулахдаа санах ойн удирдлага,

§ тусгаарлагч програмын санах ой,

§ кодын аюулгүй байдлын шалгалт,

§ завсрын хэлийг машины код болгон хувиргах,

§ мета өгөгдөлд хандах (өргөтгөсөн төрлийн мэдээлэл),

§ хэл хоорондын онцгой тохиолдлуудыг багтаасан онцгой тохиолдлуудыг зохицуулах,

§ удирддаг ба удирддаггүй кодын харилцан үйлчлэл (COM объектуудыг оруулаад),

§ хөгжүүлэлтийн үйлчилгээнд дэмжлэг үзүүлэх (профайл үүсгэх, дибаг хийх гэх мэт).

Товчхондоо, CLR нь угсралтын ажлыг гүйцэтгэхэд шаардлагатай үйлчилгээний багц юм. Энэ тохиолдолд угсралтын програмын кодыг удирдах боломжтой (код нь CLR-ээр гүйцэтгэх үед, тухайлбал санах ойн удирдлагын системийг идэвхжүүлдэг) эсвэл удирдах боломжгүй ("хуучин" програмын код).

CLR нь өөрөө үндсэн (mscoree.dll) болон үндсэн ангийн номын сан (mscorlib.dll) гэсэн хоёр үндсэн бүрэлдэхүүн хэсгээс бүрдэнэ. Эдгээр файлууд дискэн дээр байгаа нь компьютер дор хаяж .NET фреймворкийг суулгахыг оролдсоны баттай шинж тэмдэг юм.

Үндсэн ажиллах хугацааг mscoree.dll номын сан болгон хэрэгжүүлдэг. Ассемблейг холбох үед түүнд тусгай мэдээллийг суулгасан бөгөөд энэ нь програм (EXE) эхлүүлэх эсвэл номын сан ачаалах үед (удирдлагдаагүй модулиас DLL-д хандах - удирддаг угсралтыг ачаалах LoadLibrary функцийг дуудах) шалтгаан болдог. CLR-г ачаалж, эхлүүлэх. Процессын хаягийн орон зайд CLR-г ачаалсны дараа ажиллах цагийн цөм дараах үйлдлийг гүйцэтгэдэг.

§ угсралтын байршлыг олох,

§ угсралтыг санах ойд ачаалах,

§ угсралтын агуулгад дүн шинжилгээ хийх (анги, бүтэц, интерфейсийг тодорхойлох),

§ мета өгөгдөлд дүн шинжилгээ хийх,

§ завсрын хэлний (IL) кодыг платформд зориулсан зааварчилгаа (ассемблерийн код) болгон эмхэтгэх боломжийг олгодог.

§ холбоотой шалгалтуудыг гүйцэтгэдэг аюулгүй байдал,

§ програмын үндсэн урсгалыг ашиглан процессорын заавар болгон хөрвүүлсэн угсралтын кодын фрагмент руу удирдлагыг шилжүүлдэг.

FCL (.NET Framework Class Library) нь CLS-ийн тодорхойлолтод нийцсэн, Microsoft .NET платформд багтсан анги, интерфэйс болон төрлийн системийн (утга төрлүүдийн) объект хандалтат номын сан юм.

Энэ номын санд хандах боломжийг олгодог функциональ байдалсистем бөгөөд .NET програмууд, бүрэлдэхүүн хэсгүүд, хяналтуудыг хөгжүүлэх үндэс суурь болох зорилготой юм.

NET, ангийн номын сан нь CLR-ийн хоёр дахь бүрэлдэхүүн хэсэг юм.

NET FCL-ийг програмчлалын хэлийг боловсруулахад ашигласан зорилго, архитектураас үл хамааран БҮХ .NET программууд ашиглаж болно. Ялангуяа дараахь зүйлийг агуулна.

§ Ангиуд хэлбэрээр илэрхийлэгдэх (.NET платформ дээр бүх зүйл бүтэц эсвэл ангиуд дээр суурилагдсан) суурилагдсан (анхны) төрлүүд),

§ график хэрэглэгчийн интерфэйсийг хөгжүүлэх ангиуд (Windows Form),

§ ASP.NET технологи (Вэб маягт) дээр суурилсан вэб програм, вэб үйлчилгээ хөгжүүлэх хичээлүүд,

§ XML болон интернет протокол (FTP, HTTP, SMTP, SOAP) боловсруулах хичээлүүд,

§ өгөгдлийн сантай ажилладаг програмуудыг хөгжүүлэх ангиуд (ADO.NET),

§ болон бусад олон зүйл.

NET програм нь Microsoft.NET платформ дээр ажиллах зориулалттай програм юм. Энэ нь CLS-тэй тохирох програмчлалын хэл дээр хэрэгждэг.

MSIL (Microsoft Intermediate Language, IL - Intermedia Language) нь Microsoft.NET платформын дунд шатны хэл юм. .NET програмуудын эх кодыг CLS-ийн тодорхойлолтод нийцсэн програмчлалын хэлээр бичдэг. CLS-ийн тодорхойлолтод нийцсэн програмчлалын хэлнүүдийн хувьд MSIL хөрвүүлэгчийг барьж болно. Тиймээс эдгээр хэл дээрх програмуудыг MSIL завсрын код руу хөрвүүлэх боломжтой. CLS-ийг дагаж мөрддөг тул өөр хэл дээр бичигдсэн програмын кодыг орчуулсны үр дүнд нийцтэй IL кодыг олж авдаг.

Үнэн хэрэгтээ MSIL бол виртуал процессорын ассемблер юм.

METADATA - програмын кодыг MSIL руу хөрвүүлэх үед программд ашигласан өгөгдлийн талаарх мэдээллийг агуулсан METADATA блок мөн үүсдэг. Үнэн хэрэгтээ эдгээр нь модульд тодорхойлсон өгөгдлийн төрлүүд, энэ модулийн өгөгдлийн төрлүүдийн талаархи мэдээллийг агуулсан хүснэгтүүдийн багц юм. Өмнө нь энэ мэдээллийг тусад нь хадгалдаг байсан. Жишээлбэл, програм нь Интерфейсийн тодорхойлолтын хэл (IDL) дээр тайлбарласан интерфэйсийн талаарх мэдээллийг агуулж болно. Мета өгөгдөл нь одоо удирддаг модулийн нэг хэсэг болсон.

Тодруулбал, мета өгөгдлийг:

§ төрлүүдийн талаарх мэдээллийг хадгалах. Эмхэтгэх үед толгой болон номын сангийн файлууд шаардлагагүй болно. Хөрвүүлэгч нь удирддаг модулиудаас шаардлагатай бүх мэдээллийг шууд уншдаг.

§ модулийг ажиллуулах явцад кодын баталгаажуулалт,

§ удирдлага динамик санах оймодулийг ажиллуулах явцад (санах ой чөлөөлөх),

§ стандартыг ашиглан программ боловсруулахдаа хэрэгсэл(Microsoft Visual Studio .NET)

§ Мета өгөгдөл дээр үндэслэн динамик зөвлөмжийг (IntelliSense) өгдөг.

MSIL орчуулгыг хэрэгжүүлдэг хэлүүд:

болон бусад олон хэл.

Гүйцэтгэх боломжтой - Хөрвүүлэгчээс (болон эх хэлнээс) үл хамааран .NET програмыг орчуулсны үр дүн нь удирддаг гүйцэтгэх боломжтой (удирддаг модуль) юм. Энэ бол стандарт зөөврийн гүйцэтгэх боломжтой (PE - Portable Executable) Windows файл юм.

Удирддаг модулийн элементүүдийг хүснэгтэд үзүүлэв.

Удирддаг модуль нь удирддаг код агуулдаг.

Удирдах код нь CLR дээр ажилладаг код юм. Код нь аргын мэдэгдлийг агуулсан эх модульд зарласан бүтэц, ангиудын үндсэн дээр бүтээгдсэн болно. Удирдагдсан код нь ажиллах цагийн орчны тодорхой түвшний мэдээллийн (мета өгөгдөл) нийцсэн байх ёстой. C#, Visual Basic болон JScript кодыг анхдагчаар удирддаг. Visual C++ кодыг анхдагчаар удирддаггүй боловч хөрвүүлэгч командын мөрөнд (/CLR) аргумент өгснөөр удирддаг кодыг үүсгэж болно. Удирдагдсан кодын нэг онцлог нь УДИРДЛАГАТАЙ ӨГӨГДӨЛ-тэй ажиллах боломжийг олгодог механизмууд байгаа явдал юм.

Удирдагдсан өгөгдөл - модулийн кодыг гүйцэтгэх явцад удирддаг санах ойд (удирддаг овоолго дээр) хуваарилагдсан объектууд бөгөөд CLR хог цуглуулагч устгадаг. C#, Visual Basic болон JScript .NET өгөгдлийг анхдагчаар удирддаг. C# өгөгдлийг удирдахгүй гэж тэмдэглэж болно.

Ассемблей нь .NET Framework дахь хэрэглээний үндсэн блок юм. Удирддаг модулиудыг угсралт болгон нэгтгэдэг. Ассемблер нь нэг буюу хэд хэдэн удирддаг модулиуд эсвэл нөөц файлуудын логик бүлэглэл юм. Ассемблер дахь удирддаг модулиуд нь Runtime Environment (CLR) дээр ажилладаг. Ассемблер нь гүйцэтгэх боломжтой програм (.EXE файлд) эсвэл номын сангийн модуль (.DLL файлд) байж болно. Үүний зэрэгцээ уг угсралт нь энгийн (хуучин хэв маяг!) гүйцэтгэх боломжтой програмууд болон номын сангийн модулиудтай ямар ч нийтлэг зүйлгүй.

Чуулганы тунхаг (Манифест) нь чуулганы салшгүй хэсэг юм. Өөр нэг мета өгөгдлийн хүснэгтүүд нь:

§ уг чуулганыг бичвэрийн нэр, түүний хувилбар, соёл, тоон гарын үсгийн хэлбэрээр (хэрэв уг чуулганыг програмын дунд хуваалцсан бол) тодорхойлно.

§ найрлагад орсон файлуудыг тодорхойлно (нэр, хэшээр),

§ угсралтад байгаа төрөл, нөөц, түүний дотор уг чуулганаас экспортолж буй зүйлсийн тодорхойлолтыг зааж өгөх,

§ бусад ассемблерээс хамаарлыг жагсаах,

§ Чуулган зөв ажиллахад шаардагдах эрхийн багцыг зааж өгнө.

Энэ мэдээллийг програмыг зөв ажиллуулахын тулд ажиллах үед ашигладаг.

Процессор нь IL кодыг ажиллуулж ЧАДАХГҮЙ. Мөн IL кодын орчуулгыг JIT хөрвүүлэгч гүйцэтгэдэг (яг цагт нь - in зөв мөч) шаардлагатай үед CLR дуудаж, процессор гүйцэтгэдэг. Энэ тохиолдолд JIT хөрвүүлэгчийн үр дүнг хадгална санамсаргүй хандалт санах ой. Орчуулсан IL кодын фрагмент болон холбогдох санах ойн блок хооронд захидал харилцаа тогтоогдсон бөгөөд энэ нь хожим CLR-д JIT хөрвүүлэгч рүү давтан дуудлагыг алгасаж, энэхүү санах ойн блокт бичигдсэн процессорын зааварт хяналтыг шилжүүлэх боломжийг олгодог.

CLR-д үүнийг зөвшөөрдөг багаар ажиллахөөр өөр програмчлалын хэл дээр хэрэгжсэн програм хангамжийн бүрэлдэхүүн хэсгүүдийн харилцан үйлчлэл.

Өмнө нь үүссэн мета өгөгдлийн блок дээр үндэслэн CLR нь .NET програмуудыг ажиллуулж буй хооронд ҮНЭМЛЭЛТЭЙ харилцан ажиллах боломжийг олгодог.

CLR-ийн хувьд аль програмчлалын хэл дээр бичигдсэнээс үл хамааран бүх ассемблей ижил байна. Хамгийн гол нь тэд CLS-ийг дагаж мөрддөг. Үнэн хэрэгтээ CLR нь програмчлалын хэлний хил хязгаарыг (хэл хоорондын харилцан ажиллах чадвар) устгадаг. Тиймээс CLS болон CTS-ийн ачаар .NET програмууд нь үнэндээ MSIL (IL) програмууд болж хувирдаг.

CLR нь програм хөгжүүлэгчдийн анхаарлын төвд байсаар ирсэн олон асуудлыг шийддэг. CLR-ийн гүйцэтгэдэг функцууд нь:

§ MSIL кодыг процессорын заавар болгон шалгах, динамик (JIT) эмхэтгэх,

§ санах ой, процесс, урсгалын удирдлага,

§ үйл явц хоорондын харилцан үйлчлэлийн зохион байгуулалт,

§ аюулгүй байдлын асуудлыг шийдвэрлэх (системд байгаа аюулгүй байдлын бодлогын хүрээнд).

AppDomain нь процессын хаягийн зай дахь програмыг тусгаарлахад ашигладаг логик угсралтын контейнер юм. Програмын үүсгэсэн бүх объектууд нь тодорхой хэрэглээний домэйн дотор үүсгэгддэг. Нэг үйлдлийн системийн процесст олон програмын домэйн байж болно. CLR нь програмын домэйн доторх санах ойг удирдах замаар програмуудыг тусгаарладаг.

CLR (CLR процесс) дээр ажиллаж байгаа код нь компьютер дээр нэгэн зэрэг ажиллаж байгаа бусад процессуудаас тусдаа байдаг.

Уг процесст тусгайлан хуваарилагдсан хаягийн зайд систем нь ердийн процессыг эхлүүлдэг. CLR нь олон удирддаг програмуудыг НЭГ ПРОЦЕСС-д ажиллуулах боломжийг олгодог. Удирддаг програм бүр өөрийн хэрэглээний домэйнтэй (богинохондоо AppDomain) холбоотой байдаг. Програмд ​​үндсэн домайнаас гадна хэд хэдэн нэмэлт домэйн үүсгэж болно.

CLR ажиллах цагийн бүтцийг зурагт үзүүлэв.

Домэйн шинж чанарууд:

§ домайнууд бие биенээсээ тусгаарлагдсан байдаг. Нэг домэйн дотор үүсгэсэн объектууд өөр домэйноос нэвтрэх боломжгүй,

§ CLR нь тэдгээр домэйнтэй холбоотой бүх ассемблейтэй хамт домайнуудыг буулгах боломжтой.

§ нэмэлт тохиргоо, домэйн хамгаалалт хийх боломжтой;

§ Домэйн хооронд өгөгдөл солилцохын тулд тусгай хамгаалалттай хандалтын механизм (маршалинг) хэрэгжсэн.

§ .NET Framework нь .NET угсралт (.NET-угсралт) бүхий өөрийн бүрэлдэхүүн загварыг боловсруулсан бөгөөд COM / COM + загвартай урагш болон хойшоо нийцэхийн тулд CLR нь суурилуулсан механизмтай (COM) Interop) нь .NET дүрмийн дагуу COM объектууд болон COM дүрмийн дагуу .NET угсралтад хандах боломжийг олгодог. Үүний зэрэгцээ .NET програмууд нь бүрэлдэхүүн хэсгүүдийн бүртгэлийг шаарддаггүй системийн бүртгэл Windows.

.NET програмыг ажиллуулахын тулд холбогдох програмыг байрлуулахад хангалттай энэ програмнэг лавлах дахь чуулганууд. Хэрэв угсралтыг хэд хэдэн программд ашиглах боломжтой бол үүнийг ашиглан байрлуулж, бүртгэнэ тусгай хэрэгсэл GAC (Global Assembly Cache) дотор.

CTS - нийтлэг төрлийн систем Стандарт системтөрөл. Бүх платформ хэлээр дэмжигддэг. .NET нь OOP-ийн хүүхэд учраас бид энд анхан шатны төрлүүд, ангиуд, бүтэц, интерфейс, төлөөлөгч, тооллогын талаар ярьж байна.

Common Type System нь синтаксийн бүтцийн бүтэц, GENERAL ажиллах цагийн төрлүүдийг хэрхэн зарлах, ашиглах, хэрэглэх зэргийг тодорхойлдог, ажиллах цагийн орчны чухал хэсэг юм. CTS нь ЕРӨНХИЙ УРЬДЧИЛСАН төрлүүдийн систем, тэдгээрийн ашиглалт, менежментийн талаархи үндсэн мэдээллийг агуулдаг (үнэ цэнэ хувиргах дүрэм). CTS нь олон хэлээр удирддаг програмуудыг нэгтгэхэд чухал үүрэг гүйцэтгэдэг.

Нэрийн орон зай нь төрлийн системийг зохион байгуулах арга юм ганц бүлэг. Нийтлэг хэлний үндсэн ангийн номын сан байдаг. Нэрийн орон зай гэсэн ойлголт нь энэхүү номын санд үр ашигтай зохион байгуулалт, навигацийг бий болгодог. Програмчлалын хэлээс үл хамааран тодорхой ангиудыг нийтлэг нэрийн орон зайд бүлэглэх замаар хандах боломжийг олгодог.

Нэрийн орон зай Зорилго
Систем
Систем.Өгөгдөл Өгөгдлийн санд хандахын тулд
System.Data.Common
System.Data.OleDb
System.Data.SqlClient
Систем.Цуглуулга Контейнерийн объектуудтай ажиллах ангиуд
Систем. Оношлогоо Кодыг хянах, дибаг хийх ангиуд
Систем.Зураг Графикийг дэмжих ангиуд
System.Drawing.Drawing2D
Систем.Зураг.Хэвлэх
System.IO I/O дэмжлэг
System.Net Сүлжээгээр өгөгдөл дамжуулахад дэмжлэг үзүүлэх
Систем. тусгал Ажиллах үед захиалгат төрлүүдтэй ажиллах
System.Reflection.Emit
System.Runtime.InteropServices "Энгийн код" - DLL, COM серверүүдтэй харилцах дэмжлэг. алсаас хандах
System.Runtime.Remoting
Систем.Аюулгүй байдал Криптограф, зөвшөөрөл
Систем. Threading Урсгалтай ажиллах
Систем.ВЭБ Вэб програмуудтай ажиллах
Систем.Windows.Form Windows интерфейсийн элементүүдтэй ажиллах
System.XML XML мэдээллийн дэмжлэг

Удирдлагагүй ажиллах боломжтой модулиудыг ажиллуулах (ердийн Windows програмууд) шууд өгдөг Windows систем. Удирдлагагүй модулиуд нь Windows орчинд "энгийн" процесс хэлбэрээр ажилладаг. Ийм модулиудын хангах ёстой цорын ганц шаардлага бол Windows орчинд зөв ажиллах явдал юм. Тэд "зөв" ажиллах ёстой (системийг бүү өлгө, санах ой алдагдахаас зайлсхий, бусад процессуудыг хааж болохгүй, үйл явцын өмнөөс ажиллахын тулд үйлдлийн системийн хэрэгслийг зөв ашиглах). Энэ нь хамгийн их тохирох гэсэн үг юм ерөнхий дүрэм Windows дээр ажиллах.

Үүний зэрэгцээ, удирдлагагүй модулийг зөв ажиллуулахтай холбоотой асуудлууд (санах ойн харилцан үйлчлэл, хуваарилалт, суллах асуудал) нь програм хөгжүүлэгчдийн асуудал юм. Жишээлбэл, сайн мэддэг COM технологи нь програм доторх нэг төрлийн бус бүрэлдэхүүн хэсгүүдийн харилцан үйлчлэлийг зохион байгуулах арга юм.

Объект гэдэг нь өргөн утгаараа аливаа утгыг бичихийн тулд программыг гүйцэтгэх явцад хуваарилагдсан санах ойн хэсэг (стек эсвэл овоолго дээр) юм. Энэ нь санах ой дахь байршлаар (хаяг) төрлөөр (эзлэгдсэн талбайн хэмжээ, утгыг тайлбарлах арга, утгын хүрээ, объектыг удирдах үед зөвшөөрөгдсөн үйлдлүүдийн багц) тодорхойлогддог. ).

Хог хаягдал цуглуулах нь CLR-д тухайн объектыг програмын удирддаг санах ойд ашиглах боломжгүй болсон үед тодорхойлох боломжийг олгодог механизм юм. Хог цуглуулах нь удирддаг санах ойг чөлөөлдөг. Хэрэглээний хөгжүүлэгчийн хувьд хог цуглуулах механизм байгаа нь санах ойг чөлөөлөх талаар санаа зовохоо больсон гэсэн үг юм. Гэсэн хэдий ч, энэ нь програмчлалын хэв маягийг өөрчлөхийг шаардаж болох юм Онцгой анхааралсистемийн нөөцийг чөлөөлөх журамд өгөх ёстой. Та програмын хяналтан дор байгаа системийн нөөцийг чөлөөлөх аргуудыг хэрэгжүүлэх ёстой.

Стек нь объектын утгыг (хувьсагч ба тогтмол) түр хадгалах, аргуудыг дуудах үед параметр дамжуулах, буцах хаягийг хадгалах зориулалттай санах ойн тусгайлан зохион байгуулалттай хэсэг юм. Стекийн удирдлага нь овоотой харьцуулахад маш энгийн. Энэ нь стекийн дээд талд байгаа харгалзах регистрийн утгын өөрчлөлт дээр суурилдаг. Стекийн хэмжээг багасгахад объектууд зүгээр л алга болно.

C# хэл дээрх програм

Программ гэдэг нь угсралт үүсгэсэн хэллэгүүдийн сайн зохион байгуулалттай (C# хөрвүүлэгчийн эсэргүүцэх боломжгүй) дараалал юм.

Ерөнхийдөө программист нь ангиллын мэдэгдлүүдийг агуулсан файлыг үүсгэдэг бөгөөд энэ нь хөрвүүлэгч рүү оролт болгон өгдөг. Эмхэтгэлийн үр дүнг орчуулагч угсралт хэлбэрээр илэрхийлдэг бөгөөд програмистын сонголтоор тодорхойлогддог. Зарчмын хувьд угсралт нь хоёр төрлийн байж болно.

§ Зөөврийн гүйцэтгэх файл (.exe өргөтгөлтэй PE файл), CLR-ээр шууд гүйцэтгэхэд тохиромжтой,

§ Динамик холбоос номын сангийн файл (.dll өргөтгөлтэй DLL файл) зориулагдсан дахин ашиглахпрограмын бүрэлдэхүүн хэсэг болгон.

Ямар ч тохиолдолд, оролтын код дээр үндэслэн орчуулагч нь манифест болох IL дээр модуль байгуулж, ассемблей үүсгэдэг. Ирээдүйд угсрах ажлыг JIT эмхэтгэлийн дараа хийх эсвэл бусад програмын нэг хэсэг болгон ашиглаж болно.

Энэ бол хамгийн алдартай, олон үйлдэлт, идэвхтэй хөгжиж буй програмчлалын хэлнүүдийн нэг юм Энэ мөч. Үүний тусламжтайгаар та энгийн ялалтын хэлбэрээс эхлээд бараг бүх програм хангамжийг хөгжүүлэх боломжтой програмууд, том клиент/сервер вэб програмууд, тэр ч байтугай гар утасны програмуудболон компьютерийн тоглоомууд.Мөн .NET Framework дээр тулгуурлан ажилладаг. Энэ нь юу болохыг олж мэдье.

C#-д зориулсан .NET Framework болон CLR Runtime дээр миний видеог үзээрэй

C# програмчлалын хэлХарьцангуй шинэхэн боловч тэрээр аль хэдийн өөртөө итгэлтэй болж чадсан. Эхний хувилбар нь 2002 оны 2-р сард гарсан. Үүнийг бичиж байх үеийн хэлний хамгийн сүүлийн хувилбар нь 2017.08.16-нд гарсан C# 7.2 юм.

Нэрнээс нь харахад C# хэлний синтакс нь C төрлийн хэлнүүдийн бүлэгт багтдаг бөгөөд энэ бүлгийн бусад алдартай хэлтэй төстэй (C++, Java). Тиймээс, хэрэв та эдгээр хэлний аль нэгийг мэддэг бол C# програмчлалын хэлийг эзэмших нь танд илүү хялбар байх болно.

C# хэл нь объект хандалтат хэл тул удамшил, полиморфизм, капсулжуулалт, хүчтэй хувьсагч бичих, операторын хэт ачаалал гэх мэтийг дэмждэг. Эдгээр бүх ойлголтыг дараагийн нийтлэлүүдэд нарийвчлан авч үзэх болно. Програмчлалын хэлийг ашиглан объект хандалтат дизайны парадигмыг ашигласны ачаар том хэмжээтэй, уян хатан төслүүдийг боловсруулахад маш хялбар байдаг. Энэ бүхний зэрэгцээ C# хэлний шинэ хувилбарууд тогтмол гарч, хөгжүүлэгчийн амьдралыг хялбаршуулах, хөгжүүлэлтийн хурдыг нэмэгдүүлэх, програмын гүйцэтгэл, найдвартай байдлыг сайжруулах шинэ функцуудыг нэмж өгдөг.

.NET платформ

.NET Framework компанийн програм хангамжийн платформ юм Microsoft Бүх хэлэнд нэг нийтлэг хэлийг гүйцэтгэх орчин ашиглагддаг тул янз бүрийн програмчлалын хэл дээр хөгжүүлэх боломжийг олгодог Common Language Runtime (CLR). Тиймээс .NET платформын үндсэн шинж чанарууд нь:

  • Хөндлөн платформ– .NET Framework ихэнх орчин үеийн үйлдлийн системүүдээр дэмжигддэг Windows, түүнчлэн дэмжигдсэн програмуудыг үүсгэх чадвар Линукс системүүдтэр ч байтугай гар утасны програмууд.
  • Олон хэлтэй- Ашиглаж буй програмчлалын хэл дээр бичигдсэн эх код нь нийтлэг хэл рүү орчуулагдсан тул Common Intermediate Language (CIL) код руу хөрвүүлэгддэг тул ямар ч дэмжигдсэн програмчлалын хэл дээр хөгжүүлэх, бүр өөр өөр програмчлалын хэлийг нэг шийдэлд ашиглах боломжтой болно. Хамгийн алдартай дэмжигдсэн хэлүүд нь C#, VB.NET, C++, F# юм.
  • Анги, технологийн өргөн хүрээний номын сан- шаардлагатай ажлуудыг шийдвэрлэхэд ашиглахад бэлэн асар олон тооны номын сан байдаг. Ихэнхдээ та програмын доод түвшний логикийг огт хэрэгжүүлэх шаардлагагүй, nuget багц менежерээр дамжуулан хялбархан хүргэх бэлэн шийдлийг ашиглахад хангалттай. Нэмж дурдахад .NET платформ нь танд хэрэгтэй бараг бүх төрлийн програм хангамжийг боловсруулахад хялбар болгодог.

Удирдлагатай болон удирдагдаагүй код. JIT эмхэтгэл

Удирдах коднь нийтлэг хэлний ажиллах цаг (CLR) -аар удирддаг код юм. Энэ нь хяналтын орчин нь програмын гүйцэтгэлийг түр зогсоож, түүнийг гүйцэтгэх явцад ямар ч үед програмын төлөв байдлын талаар тодорхой мэдээлэл авах боломжтой гэсэн үг юм. Ашигласан програмчлалын хэлний эх кодыг удирддаг CIL код руу хөрвүүлдэг (мөн өндөр түвшний ассемблер гэж нэрлэдэг).

Ангийн номын сан эсвэл програм үүсгэсний дараа эх кодыг CIL-д үргэлжлүүлэн хадгална. Програмыг эхлүүлэх эсвэл номын санд хандах үед Just-In-Time хийгдэнэ ( JIT) програмыг гүйцэтгэж буй орчинд тусгайлан зориулсан машины код болгон програмыг эмхэтгэх. Үүний зэрэгцээ чухал онцлог нь зөвхөн хандсан програм эсвэл номын сангийн хэсгийг л эмхэтгэсэн (мэдээжийн хэрэг, холбоосууд). Энэ нь системийн гүйцэтгэлийг нэмэгдүүлэх, нөөцийг хэмнэх боломжийг олгодог.

Удирдлагагүй код- энэ бол шууд машины гүйцэтгэх код руу хөрвүүлэгдсэн код бөгөөд үйлдлийн системээр шууд гүйцэтгэгддэг.

Үүнээс гадна би нийтлэлийг уншихыг зөвлөж байна. Мөн VKontakte групп, Telegram, YouTube сувагт бүртгүүлээрэй. Програмистуудад илүү хэрэгтэй, сонирхолтой зүйл байдаг.

C#
  • Нийтлэг хэлний ажиллах хугацаа) болон ангийн номын сан...
  • .NET Framework болон CTS тодорхойлолт
    C# хэл болон түүний дэмжлэг нь одоогоор Microsoft-ын боловсруулсан .NET Framework-тэй холбоотой. Нэрлэсэн платформ (харна уу) нь дараахь зүйлийг агуулна: нийтлэг хэлний ажиллах хугацаа (CLR - Нийтлэг хэлний ажиллах хугацаа Framework Class Library).Үүнийг тэмдэглэх нь зүйтэй ...
    (ПРОГРАМЧЛАЛТ. BASIC C#)
  • .NET Framework болон Visual Studio суулгаж байна
    Windows 7 болон 8-ийн орчинд .NET платформ аль хэдийн суулгасан бөгөөд юу ч суулгах шаардлагагүй. .NET платформ дээр хэрэглүүр хөгжүүлэхийн тулд Visual Development системийг суулгах шаардлагатай C# 2012 (эсвэл 2013) Экспресс хувилбар - үнэгүй хувилбар Visual Studio хөгжүүлэлтийн орчин (богиносгосон, гэхдээ бараг ...
    (Объект хандалтат програмчлал)
  • C# ТӨРӨЛ БА .NET FRAMEWORK ПЛАТФОРМЫН ТӨРЛҮҮД
    C# хэл болон түүний дэмжлэг нь одоогоор Microsoft-ын боловсруулсан .NET Framework-тэй холбоотой. Нэрлэсэн платформ (харна уу) нь дараахь зүйлийг агуулна: нийтлэг хэлний ажиллах хугацаа (CLR - Нийтлэг хэлний ажиллах хугацаа) болон ангийн номын сан...
    (ПРОГРАМЧЛАЛТ. BASIC C#)
  • .NET Framework болон CTS тодорхойлолт
    C# хэл болон түүний дэмжлэг нь одоогоор Microsoft-ын боловсруулсан .NET Framework-тэй холбоотой. Нэрлэсэн платформ (харна уу) нь дараахь зүйлийг агуулна: нийтлэг хэлний ажиллах хугацаа (CLR - Нийтлэг хэлний ажиллах хугацаа) болон ангийн номын сан (FCL - Framework Class Library).Үүнийг тэмдэглэх нь зүйтэй ...
    (ПРОГРАМЧЛАЛТ. BASIC C#)
  • Тэмдэглэл: Microsoft .NET санаачлага. Бүрэлдэхүүн хэсгүүдийн нийцтэй байдал, найдвартай байдал, дахин ашиглалтын асуудал. .NET хүрээ. Common Language Runtime (CLR). Псевдо-машины хэл CIL (удирдлагатай ассемблер). JIT хөрвүүлэгч. Програмчлалын хэлүүд. Чуулганууд. мета өгөгдөл. Хог цуглуулагч. .NET Framework ангийн номын сан

    Орчин үеийн мэдээллийн системийг хөгжүүлэх асуудлууд

    Интеграцийн асуудал

    • Өөр өөр API (эсвэл API хувилбар) эсвэл өөр өөр өгөгдлийн танилцуулгын форматыг ашиглан өөр хэл дээр бичигдсэн модулиуд;
    • Нэг програм хангамжийн багц дотор янз бүрийн платформд зориулан боловсруулсан програмууд;
    • Төрөл бүрийн програм хангамжийн загваруудыг ашигладаг системүүд.

    Ялангуяа хуучин кодтой (legacy) нэгтгэх асуудал байнга гардаг. Интеграцийн асуудлыг шийдвэрлэх үед үл нийцэх асуудал үүсдэг.

    Зөөврийн асуудал

    Олон платформыг дэмжихийн тулд програмууд улам бүр нэмэгдэж байна (жишээлбэл, програмтай ажиллах чадвар). Windows платформболон MacOS).

    Хувилбарын асуудал

    Windows хөгжүүлэгчид DLL там гэж нэрлэгддэг хувилбарын нийцтэй байдлын асуудлыг мэддэг. Шинэ програмд ​​суулгасан бүрэлдэхүүн хэсгүүд нь хуучин програмын бүрэлдэхүүн хэсгүүдийг орлуулах үед энэ "там" үүсдэг. Үүний үр дүнд хуучин програм буруу ажиллаж эхлэх эсвэл ажиллахаа больсон.

    Нөөцийн менежмент

    Програмчлалын асуудлын нэг бол нөөц, файл, санах ой, дэлгэцийн зайг удирдах, зөв ​​гаргах явдал юм. сүлжээний холболтууд, өгөгдлийн сангийн нөөц гэх мэт.Эдгээр нөөцийн буруу менежмент нь программыг буруу ажиллуулахад хүргэдэг.

    Аюулгүй байдлын төрөл

    Аюулгүй байдлын төрлийг дурьдвал энэ нь өгөгдлийн төрлүүдийг буруу харьцах гэсэн үг юм: төрлөөс гадуур санах ойн хэсгүүдэд хандах оролдлого, төрөлд байхгүй аргуудыг дуудах оролдлого, эсвэл А төрлийг параметр болгон авах аргыг дуудах оролдлого. B төрлийн параметрийн объект болгон дамжуулна.

    Алдаа засах

    Win32 API ашиглан Windows программуудыг хөгжүүлэх үед зарим функц нь үл хамаарах зүйлийг буцаадаг бол зарим нь төлөвийн кодыг буцаадаг бол зарим нь HRESULT -ийг буцаадаг. Тиймээс алдаатай ажиллах тууштай механизм байдаггүй бөгөөд зарим үл хамаарах зүйлийг үл тоомсорлож болох бөгөөд энэ нь кодыг аюултай болгодог.

    Эдгээр болон бусад дизайны асуудлууд мэдээллийн систем Microsoft .NET платформыг шийдвэрлэхэд тусалдаг.

    .NET дээр мэдээллийн системийг хөгжүүлэх асуудлыг шийдвэрлэх

    Нэг төрлийн бус байдлын асуудлыг шийдэх нэг арга бол програмуудыг өөр өөр платформын серверт шилжүүлэхэд хялбар болгодог стандарт програмчлалын интерфэйсийг боловсруулж, хадгалах явдал юм. Гэсэн хэдий ч програмууд нь мэдээллийн сан, харилцаа холбоо болон интерфэйс нь програмчлалын хэл эсвэл орчны бүрэлдэхүүн хэсэг биш бусад үйлчилгээг ашиглаж болно. Нэг төрлийн бус байдлын асуудлыг шийдэхийн тулд үйлдвэрлэгчдийн ашигладаг өөр нэг арга бол стандарт протоколуудыг дэмжих явдал юм. Нэг протоколыг дэмждэг системүүд нь өөр өөр машины бүтэц, үйлдлийн системд тулгуурласан байсан ч өөр хоорондоо харилцах боломжтой.

    Технологи. NET нь HTTP болон XML зэрэг өргөн хэрэглэгддэг стандартуудыг ашиглан программуудын харилцан үйлчлэлийг хэрэгжүүлж, олон тооны програм хангамжийн үйлчилгээнд интернетээр нэвтрэх боломжийг олгодог програм хангамжийг хөгжүүлэх, ашиглах арга юм. Технологи орно. NET Framework - хөгжүүлэлтийг хялбаршуулж, хурдасгах, бүрэн хэмжээний объект хандалтатыг дэмждэг програмуудыг хөгжүүлэх, гүйцэтгэх платформ юм. програмчлалВэбийн хувьд хамгийн түгээмэл олон төрлийг арилгадаг програм хангамжийн алдаа, бүх хэл дээр нийтлэг API өгдөг.

    Microsoft .NET-ийг юу бүрдүүлдэг

    NET Framework нь програм хөгжүүлэлтийн хүрээ юм. Үүний гол бүрэлдэхүүн хэсэг нь Common Language Runtime болон ангийн номын сан юм. NET Framework ангийн номын сан.

    Нийтлэг хэлний ажиллах хугацаа

    Common Language Runtime (CLR) нь үйлдлийн системийн үйлчилгээг хийсвэрлэж, удирддаг програмуудыг гүйцэтгэдэг нийтлэг хэлний ажиллах хугацаа бөгөөд аливаа үйлдэл нь CLR-ээс зөвшөөрөл авах ёстой.

    .NET платформын бүх кодыг CLR-ээр CIL завсрын код руу хөрвүүлдэг. Тиймээс хөгжүүлэгчид өөр өөр програмчлалын хэл дээр .NET-д зориулж бичсэн кодыг хялбархан нэгтгэж чаддаг. Нэг .NET-тэй нийцтэй хэлээр хийж болох бүх зүйлийг (ховор тохиолдлоос бусад) өөр аль ч хэлээр хийж болно. Эдгээр хэл дээрх кодыг нэг хэл дээрх код болгон эмхэтгэсэн - CIL.

    CLR нь үйлдлийн системийн дээд талд байрладаг бөгөөд удирддаг програмуудад зориулсан виртуал орчинг бүрдүүлдэг. .NET платформын кодыг CLR гүйцэтгэдэг эсвэл түүнээс гадуур ажиллуулахыг зөвшөөрдөг.

    CLR-ийн код нь Common Intermediate Language (CIL) псевдомашин хэлний командууд юм. Эдгээр зааврыг ажиллах үед хүссэн (цагт нь) тохирох процессорын төрлийн машины код болгон хөрвүүлдэг. Ихэвчлэн аргыг эхний дуудлагын үеэр нэг удаа эмхэтгэдэг. Үр дүн нь дараа нь дахин дуудлагын саатлаас зайлсхийхийн тулд санах ойд хадгалагдана. JIT хөрвүүлэгч нь тухайн код ажиллаж байгаа процессорт тусгайлан зориулж кодын оновчлолыг гүйцэтгэдэг.

    CIL зааврыг процессорын зааварт хөрвүүлснээр JIT хөрвүүлэгч нь төрлийн аюулгүй байдлын код баталгаажуулалтыг гүйцэтгэдэг.

    Тус тушаалд хандах зөвшөөрөлгүй санах ойн бүсэд хандах командыг гүйцэтгэх нь бараг боломжгүй юм. Удирдлагатай програмын хувьд алдаатай эхлүүлсэн заагчтай холбоотой асуудал арилдаг бөгөөд энэ нь төрлийн аюулгүй байдлыг зөрчсөн тул төрлийг өөр зүйл рүү хөрвүүлэхийг хориглоно. CLR нь эвдэрсэн стек хүрээтэй аргуудыг дуудахыг зөвшөөрдөггүй.

    Удирдлагатай кодоор хуваарилагдсан нөөцийг хог цуглуулагч гаргадаг. Өөрөөр хэлбэл, программист зөвхөн санах ойг хуваарилдаг боловч түүнийг задлахгүй - үүнийг CLR хийдэг. Хог цуглуулагч нь объектын бүх лавлагааг бүртгэдэг. програмаар үүсгэгдсэн, мөн тэдгээр объектуудыг эзэлсэн санах ой нь өөр газар хэрэгтэй үед устгадаг. Энэ нь удирддаг кодын програмуудад санах ой алдагдах асуудлыг шийддэг.

    Кодын баталгаажуулалт нь CLR-ийн нэг процесс дотор олон програм ажиллуулах чадварын үндэс суурь болдог. Процесс нь виртуал тасалгаанд хуваагддаг - хэрэглээний домэйнууд ( application domain ). Энэ нь процессуудад хуваарилагдсан санах ойг ашиглах үр ашгийг сайжруулдаг. Програмын домэйнууд нь процессуудтай адил аюулгүй байдаг, учир нь тэдгээрийн хил хязгаарыг удирддаг програмууд зөрчиж болохгүй.

    .NET Framework Ангийн номын сан (FCL)

    .NET нь ангийн номын сангуудыг агуулдаг. NET Framework Ангийн номын сан (FCL) нь хэдэн мянган төрлийн тодорхойлолтыг агуулсан бөгөөд тус бүр нь зарим функцээр хангадаг. "Холбогдох" төрлүүдийн багцыг тусдаа нэрийн талбарт цуглуулдаг. Тиймээс Системийн нэрийн талбар нь үндсэн анги Object-ыг агуулж байгаа бөгөөд үүнээс бусад бүх төрлүүд эцэстээ үүсэлтэй байдаг.

    Тиймээс аж ахуйн нэгж бүр NET бол өөрийн гэсэн талбар, аргуудтай объект юм.

    Нэмж дурдахад, систем нь бүхэл тоо, тэмдэгт, мөр, онцгой тохиолдлыг зохицуулах төрлүүд, консолын I/O, нэг төрлөөс нөгөөд аюулгүй хөрвүүлэх төрлүүд, өгөгдөл форматлах, санамсаргүй тоо үүсгэхболон математикийн үйлдлүүдийг гүйцэтгэх. Системийн нэрийн талбар дахь төрлүүдийг бүх программууд ашигладаг.

    Одоо байгаа FCL төрлийг өөрчлөхийн тулд та өөрийн үүсгэсэн төрлийг үүсгэж болно. Та өөрийн нэрийн орон зайг үүсгэж болно. Энэ бүхэн мөрийн хөтөлбөрөөс санал болгож буй зарчмуудад тодорхой нийцэх болно. NET

    Энд хамгийн нийтлэг нэрийн орон зайн зарим нь байна Товч тодорхойлолттэнд агуулагдсан төрлүүд.

    Үндсэн FCL нэрийн орон зай
    Нэрийн орон зай Агуулга
    Систем Өгөгдлийн үндсэн төрлүүд ба туслах ангиуд
    Систем.Цуглуулга Хэш хүснэгт, хувьсах массив болон бусад контейнер
    Систем.Өгөгдөл Өгөгдөл хандалтад зориулсан ADO .NET ангиуд
    Систем.Зураг График гаралтын ангиуд (GDI+)
    System.IO I/O ангиудыг файл болон урсгал
    System.Net Хамтран ажиллах ангиуд сүлжээний протоколууд, жишээ нь HTTP-тэй
    Систем. тусгал Мета өгөгдөл унших, бичих ангиуд
    System.Runtime.Remoting Тархсан програмуудад зориулсан ангиуд
    System.ServiceProcess Windows үйлчилгээг бий болгох ангиуд
    Систем. Threading Threads үүсгэх, удирдах ангиуд
    Систем.Вэб HTTP дэмжлэгт зориулсан ангиуд
    Систем.Вэб.Үйлчилгээ Вэб үйлчилгээ хөгжүүлэх хичээлүүд
    Систем.Вэб.Үйлчилгээ. Вэб үйлчилгээний үйлчлүүлэгчийн протоколыг хөгжүүлэх ангиуд
    System.Web.UI ASP .NET-ийн ашигладаг үндсэн ангиуд
    System.Web.UI. вэб удирдлага ASP .NET серверийн удирдлага
    System.Wndows.Forms GUI хэрэглээний ангиуд
    System.Xml XML өгөгдлийг унших, оруулах ангиуд

    Бүх удирддаг програмуудыг ашигладаг