2-bo‘lim
Muhitni sozlash va birinchi loyiha
.NET SDK ni o'rnatish, "dotnet new console -lang VB" bilan loyiha yaratish, fayllar tuzilishi, dotnet run va dotnet build farqi.
Ushbu bo‘lim mundarijasi
Visual Basic da yozish uchun bitta narsa kerak: .NET SDK. U kompilyatorni ham, loyiha yaratadigan vositani ham o'z ichiga oladi.
SDK ni o'rnatish #
dotnet.microsoft.com saytidan .NET SDK ni yuklab oling. Diqqat:
Runtime emas, aynan SDK kerak - Runtime faqat tayyor dasturlarni
ishga tushiradi, yangi dastur yozishga yaramaydi.
| Tizim | Usul |
|---|---|
| Windows | Saytdan .exe o'rnatuvchini yuklab ishga tushiring |
| Linux (Debian/Ubuntu) | sudo apt install dotnet-sdk-10.0 |
| macOS | Saytdan .pkg, yoki brew install dotnet-sdk |
O'rnatilganini tekshiring:
dotnet --version
10.0.401
Raqam boshqacha bo'lishi mumkin - muhimi, xato chiqmasligi. Agar "command not found" desa, terminalni yopib qaytadan oching.
dotnet --version ishlasa ham, dotnet new ishlamasligi mumkin.
Bu sizda faqat Runtime borligini bildiradi.
Tekshirish uchun dotnet --list-sdks ni bajaring. Ro'yxat bo'sh
bo'lsa - SDK o'rnatilmagan.
Birinchi loyiha #
dotnet new console -lang VB -o salom
Bu buyruq salom nomli papka yaratadi. -lang VB qismi juda muhim:
usiz dotnet C# loyihasini yasaydi.
Loyiha fayli #
salom.vbproj - oddiy matn fayli:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<RootNamespace>salom</RootNamespace>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>
</Project>
| Sozlama | Ma'nosi |
|---|---|
OutputType | Exe - ishga tushadigan dastur |
RootNamespace | Kodning asosiy nom maydoni |
TargetFramework | Qaysi .NET versiyasiga mo'ljallangan |
Ishga tushirish #
cd salom
dotnet run
Hello World!
Program.vb ni oching va matnni o'zgartiring:
Module Program
Sub Main(args As String())
Console.WriteLine("Salom, Namangan!")
End Sub
End Module
Salom, Namangan!
run va build farqi #
| Buyruq | Nima qiladi |
|---|---|
dotnet run | Kompilyatsiya qiladi va darhol ishga tushiradi |
dotnet build | Faqat kompilyatsiya qiladi, natija bin/ ga tushadi |
dotnet clean | bin/ va obj/ ni tozalaydi |
O'rganish paytida deyarli har doim dotnet run ishlatiladi.
Kompilyator xatoni shunday ko'rsatadi:
Program.vb(4,9): error BC30451: 'Consol' is not declared.
(4,9) - 4-qator, 9-ustun. BC30451 - xato kodi; uni qidiruvga
yozsangiz, izohini topasiz. Bu yerda shunchaki Console so'zi
noto'g'ri yozilgan.
Muharrir tanlash #
| Muharrir | Izoh |
|---|---|
| Visual Studio | Windows uchun eng to'liq. VB ni to'g'ridan-to'g'ri qo'llaydi |
| VS Code | Yengil, har uch tizimda. C# Dev Kit kengaytmasi VB ni ham tushunadi |
| Rider | Pullik, lekin kuchli |
Boshlang'ich uchun VS Code yetarli: yengil va bepul.
Option sozlamalari #
Visual Basic da faylning eng boshiga qo'yiladigan uchta muhim ko'rsatma bor. Ular kompilyator qanchalik qat'iy bo'lishini belgilaydi.
Option Strict On
Option Explicit On
Module Dastur
Sub Main()
Dim son As Integer = 10
Dim natija As Double = son / 4
Console.WriteLine(natija)
End Sub
End Module
2.5
| Ko'rsatma | Nima qiladi |
|---|---|
Option Explicit On | Har bir o'zgaruvchi Dim bilan e'lon qilinishi shart |
Option Strict On | Yashirin xavfli turlar almashinuvini taqiqlaydi |
Option Infer On | Dim x = 5 da turni o'zi topadi |
Standart holatda Option Strict o'chiq. Bu degani kompilyator
"12" + 3 kabi shubhali ifodalarni jim o'tkazib yuboradi va xato
dastur ishlayotganda chiqadi.
Option Strict On bilan esa bunday joylar kompilyatsiya paytida
ko'rinadi. Xatoni bir soatdan keyin emas, bir soniyada topgan
yaxshiroq.
Butun loyiha uchun yoqish - .vbproj ichiga bitta qator qo'shish
kifoya: <OptionStrict>On</OptionStrict>.
Bir nechta qator chiqarish #
Module Dastur
Sub Main()
Console.WriteLine("Birinchi qator")
Console.Write("Ikkinchi ")
Console.Write("va uchinchi bitta qatorda")
Console.WriteLine()
Console.WriteLine("To'rtinchi qator")
End Sub
End Module
Birinchi qator
Ikkinchi va uchinchi bitta qatorda
To'rtinchi qator
Farqi bitta: WriteLine yozgandan keyin yangi qatorga o'tadi,
Write esa o'sha joyda qoladi.
Visual Basic da izoh ' (apostrof) bilan boshlanadi va qator oxirigacha
davom etadi. // yoki # emas.
' Bu izoh - kompilyator uni umuman ko'rmaydi
Dim narx As Integer = 500 ' qator oxirida ham bo'ladi
dotnet --list-sdksni bajaring va natijani yozib oling.salomnomli yangi konsol loyihasi yarating.-lang VBni tushirib qoldirsangiz nima bo'lishini sinab ko'ring.Program.vbdagi matnni o'z ismingizga o'zgartiring.dotnet builddan keyinbin/ichida qanday fayllar borligini ko'ring.Consoleso'zini ataylab xato yozing va xato kodini o'qing.Option Strict Onni qo'shing va loyiha hali ham ishlashini tekshiring.WritevaWriteLinefarqini o'z misolingizda ko'rsating.- Kodga ikkita izoh qo'shing: biri alohida qatorda, biri qator oxirida.
dotnet cleandan keyinbin/papkasiga nima bo'lishini yozing.
Xulosa #
- Yozish uchun SDK kerak, Runtime emas.
- Loyiha
dotnet new console -lang VB -o nombilan yaratiladi;-lang VBni unutish - eng ko'p uchraydigan xato. Program.vb- siz yozadigan yagona fayl;bin/vaobj/o'zi paydo bo'ladi.dotnet run- kompilyatsiya qilib ishga tushiradi,dotnet build- faqat kompilyatsiya qiladi.- Xato xabaridagi
(qator,ustun)vaBCkodi muammoni topishning eng tez yo'li. Option Strict Onni yoqing: u xatolarni dastur ishlashidan oldin ko'rsatadi.- Izoh
'bilan yoziladi.
Keyingi bo'limda o'zgaruvchilar va ma'lumot turlarini o'rganamiz.
O‘qish tarixini saqlamoqchimisiz?
Tizimga kirsangiz, tugatgan bo‘limlaringiz saqlanadi va qoldirgan joyingizdan davom etasiz.
Xatolik topdingizmi?
Imlo xatosi, ishlamaydigan kod yoki noto‘g‘ri ma‘lumotni ko‘rsangiz - bizga xabar bering. Har bir xabar administrator tomonidan ko‘rib chiqiladi.