SDK va Runtime

SDK va Runtime

SDK (Dasturiy ta’minotni ishlab chiqish to’plami):

SDK – bu .NET platformasida ilovalarni ishlab chiqish uchun mo’ljallangan asboblar va kutubxonalar to’plami. Bunga quyidagilar kiradi:
Kompilyatorlar: C#, F# yoki VB.NET dasturlash tillarida manba kodini bajariladigan kodga aylantirish uchun.
Kutubxonalar va dasturchilar asboblari: Har xil turdagi ilovalarni (masalan, veb-ilovalar, ish stoli ilovalari) ishlab chiqish uchun zarur bo’lgan sinf kutubxonalari to’plami (masalan, asosiy sinf kutubxonasi – BCL).
Hujjatlar va kod misollari: Ishlab chiquvchilarga ilovalarni yaratish, sinab ko’rish va disk raskadrovka qilishda yordam beradigan manbalar.

Runtime (CLR – Common Language Runtime)

CLR (Common Language Runtime) .NET dasturlarini ishga tushiradigan ish vaqti muhitidir. U quyidagilarni ta’minlaydi:

Xotirani boshqarish va axlat yig’ish: Avtomatik xotirani boshqarish, foydalanilmagan resurslarni bo’shatish va axlat yig’ish.
Istisnolarni boshqarish: istisnolarni boshqarish va dasturni bajarish paytida xatolarni qayta ishlash.
Ko’p ish zarralarini qo’llab-quvvatlash: bir nechta dastur iplari bilan ishlash mexanizmlari.

SDK va Runtime o’rtasidagi o’zaro ta’sir:

SDK dasturchi tomonidan ilovalarni yozish va yaratish uchun ishlatiladi. U ilovalar yaratish uchun zarur bo’lgan vositalar va kutubxonalarni taqdim etadi.
Ish vaqti dasturni bajarish jarayonida uni bajarish uchun ishlatiladi. U kerakli ijro muhitini ta’minlaydi va ilovaning bajarilishi jarayonini boshqaradi.

Shunday qilib, SDK va Runtime .NET ilovalarini ishlab chiqish va ishga tushirish uchun birgalikda ishlaydi, ishlab chiquvchilarni .NET platformasida dasturiy ta’minotni yaratish va muvaffaqiyatli ishga tushirish uchun barcha zarur vositalar va muhit bilan ta’minlaydi.

Misol
Aytaylik men dasturchiman va .NET (C#) da biror ilova ishlab chiqdim, yoki Telegramga o’xshagan dastur… xullas nima farqi bor…. Keyin uni do’stimni kompyuteriga o’tkazdim. Do’stim esa dasturchi emas. Shu bilan birgalikda .NET SDK ham o’rnatmaydi, SDK dasturchiga kerak xolosda. Chunki yozgan kodini build qilib berishi kerak bo’ladi. Oddiy odam esa kod yozmaydi. Dasturchi bo’lmagan oddiy odamga .NET Runtime beriladi. Yani Runtime dasturini kompyuteriga install qilgandan keyin, bizning dasturni ochishda muammo bo’lmaydi. Aks holda .NET Frameworkini o’rnat didi.