O'rnatish — .NET SDK, VS Code, birinchi dastur
Muammodan boshlaylik
Siz .NET o'rganishni boshlamoqchisiz. Microsoft saytiga kirasiz — "SDK", "Runtime", "ASP.NET Core Runtime" degan uchta tugma bor. Qaysinisini bosish kerak? Farqi nima?
Keyin VS Code ochiladi — qaysi kengaytma o'rnatiladi? "C#", "C# Dev Kit", "OmniSharp" — hammasi bor. Qaysi biri to'g'ri?
Bu savollar bilan o'tiriladigan vaqtni tejash uchun shu dars yozildi.
SDK va Runtime — farqi nima?
.NET Runtime — tayyor dasturni ishga tushiradi. Foydalanuvchi kompyuterida bo'lishi kerak.
.NET SDK (Software Development Kit) — dastur yozish uchun. Kompilyator, CLI vositalar, shablonlar — hammasi ichida. SDK ichida Runtime ham bor.
Hayotiy o'xshatma: avtomobil zavodi va avtomobil. Runtime — tayyor avtomobil, faqat haydash mumkin. SDK — zavod: avtomobil yasash, sinash, yetkazib berish hammasi mumkin. Zavodda avtomobil ham bor, alohida sotib olishga hojat yo'q.
Dasturchi sifatida sizga SDK kerak — u hamma narsani o'z ichiga oladi.
.NET SDK o'rnatish
dotnet.microsoft.com/download sahifasiga kiring.
LTS versiyasini tanlang — hozir .NET 8. LTS (Long-Term Support) 3 yil rasmiy qo'llab-quvvatlanadi. "Latest" versiyasi yangi, lekin qisqa muddat qo'llab-quvvatlanadi.
Operatsion tizimingizga mos o'rnatuvchini yuklab oling va o'rnating:
- Windows —
.exefayl, oddiy Next → Next → Install - macOS —
.pkgfayl, xuddi shunday - Linux (Ubuntu/Debian):
sudo apt-get update
sudo apt-get install -y dotnet-sdk-8.0
O'rnatish muvaffaqiyatli bo'lganini tekshirish:
dotnet --version
Natija: 8.0.xxx ko'rinishida versiya raqami chiqadi. Bu chiqmasa — PATH muammosi (quyida xatolar bo'limida).
VS Code va kengaytmalar
VS Code — eng qulay va bepul muharrir. Visual Studio (katta, og'ir, faqat Windows) dan farqli — VS Code yengil va ko'p platformali.
VS Code ni code.visualstudio.com dan yuklab oling.
Keyin bitta kengaytma o'rnating:
C# Dev Kit — Microsoft ning rasmiy kengaytmasi. Yozing va Ctrl+Shift+X (kengaytmalar paneli) da qidiring.
C# Dev Kit (Microsoft)
Bu kengaytma o'rnatilganda ichida C# va IntelliCode for C# Dev Kit ham avtomatik o'rnatiladi. Boshqa hech narsa kerak emas.
⚠️ "OmniSharp" degan eski kengaytma bor — o'rnatmang. C# Dev Kit yangi va to'liq almashtirib bo'ldi.
Birinchi dastur
Terminal oching (VS Code da Ctrl+~) va yangi papka yarating:
mkdir birinchi-dastur
cd birinchi-dastur
dotnet new console
dotnet new console — yangi konsol ilovasi shablonini yaratadi. Papkada ikki fayl paydo bo'ladi:
birinchi-dastur/
├── birinchi-dastur.csproj ← loyiha fayli
└── Program.cs ← kodingiz shu yerda
Program.cs ni oching:
Console.WriteLine("Hello, World!");
Ishga tushiring:
dotnet run
Natija:
Hello, World!
Nima bo'ldi?
dotnet run ikki ishni bajaradi: avval kodni kompilatsiya qiladi, keyin ishga tushiradi.
Program.cs faylidagi Console.WriteLine — bu .NET ning standart kutubxonasidan. Console — ekran bilan ishlash uchun sinf. WriteLine — bir qator yozib, keyingi qatorga o'tadi.
Siz faqat bir qator kod yozdingiz — namespace, class, Main funksiyasi yo'q. Bu C# 10 dan kiritilgan top-level statements — kichik dasturlar uchun keraksiz qismlarsiz yozish imkoniyati.
Eski usul (C# 9 gacha) shunday ko'rinardi:
using System;
namespace BirinchiDastur
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
}
}
}
Ikkisi bir xil natija beradi. Zamonaviy C# da top-level statements ishlatiladi — kamroq qozon kodi (boilerplate).
💡
.csprojfaylini hozircha ochishga hojat yo'q — loyiha sozlamalari shu yerda, biz keyinroq qaraymiz.
O'z kodingizni yozing
Program.cs ni o'zgartiring:
Console.Write("Ismingizni kiriting: ");
string ism = Console.ReadLine()!; // ← foydalanuvchidan matn olish
Console.WriteLine(quot;Salom, {ism}!");
Console.WriteLine(quot;Bugun {DateTime.Now:dd.MM.yyyy}");
dotnet run
Ismingizni kiriting: Jasur
Salom, Jasur!
Bugun 20.06.2026
Console.ReadLine() — foydalanuvchi yozib Enter bossuncha kutadi, yozilgan matnni qaytaradi.
quot;..." — string interpolation. Jingalak qavslar ichidagi ifoda baholanadi va matnga qo'shiladi.
! — hozircha e'tibor bermang, null bilan bog'liq, keyinroq tushuntiramiz.
Tez-tez uchraydigan xatolar
dotnet buyrug'i topilmadi:
'dotnet' is not recognized as an internal or external command
SDK o'rnatildi, lekin PATH yangilanmadi. Yechim: terminalni yopib qayta oching. Ishlamasa — kompyuterni qayta ishga tushiring. Hali ham ishlamasa — o'rnatuvchini qayta ishga tushiring va "Add to PATH" belgisini qo'yib qarang.
Versiya eski:
dotnet --version
# 6.0.xxx yoki 7.0.xxx chiqsa
.NET 8 SDK ni o'rnating — eski versiya ochilib qoladi, muammo bo'lmaydi. Bir kompyuterda bir nechta .NET versiyasi yonma-yon ishlashi mumkin.
dotnet run xato beradi:
error CS0103: The name 'Console' does not exist
Fayl nomi Program.cs bo'lishi kerak (katta P, .cs kengaytmasi). Boshqa nom bo'lsa — bu xato chiqadi.
Xulosa
Dasturchi uchun .NET SDK kerak — Runtime ham ichida. dotnet.microsoft.com dan LTS versiyasi (hozir .NET 8) yuklanadi.
VS Code + C# Dev Kit — boshqa hech narsa kerak emas.
dotnet new console — yangi loyiha. dotnet run — kompilatsiya + ishga tushirish.
Endi muhit tayyor. Keyingi darsdan C# tili bilan tanishamiz.
Keyingi dars
3-dars: Loyiha tuzilmasi — .csproj, namespace, using, Program.cs