06 / 68

Comments

Izohlar

Dasturlashda izohlar (comments) kod nima ish bajarayotganini tushuntirish va tavsiflash uchun yoziladigan maxsus eslatmalardir.

Masalan:

example.go
// age o'zgaruvchisini e'lon qilamiz
age := 24

// o'zgaruvchini ekranga chiqaramiz
fmt.Println(age)

Bu yerda // age o'zgaruvchisini e'lon qilamiz va // o'zgaruvchini ekranga chiqaramiz qatorlari kodda ishlatilgan izohlardir.

[!NOTE] Izohlar dastur mantig'iga va ishlashiga hech qanday ta'sir ko'rsatmaydi. Ular faqat dasturchilar (kodni o'quvchilar) uchun mo'ljallangan bo'lib, Go kompilyatori tomonidan butunlay e'tiborsiz qoldiriladi.


Goda izohlarning turlari

Go dasturlash tilida izohlarning 2 ta asosiy turi mavjud:

  1. Bir qatorli izohlar (//)
  2. Ko'p qatorli izohlar (/* ... */)

1. Bir qatorli izohlar (Single Line Comments)

Go tilida bir qatorli izoh yaratish uchun ikkita qiya chiziq // belgisidan foydalanamiz.

example.go
package main

import "fmt"

func main() {
    // o'zgaruvchini e'lon qilamiz
    age := 25

    // o'zgaruvchini ekranga chiqaramiz
    fmt.Println("Yosh:", age)
}

Natija:

kod
Yosh: 25

Kod satrining o'zida izoh yozish

Bir qatorli izohni to'g'ridan-to'g'ri kod yozilgan satr oxiriga ham qo'yish mumkin:

example.go
age := 25 // xodimning yoshi

Bunday holda kompilyator:

  • // belgisigacha bo'lgan kodni odatdagidek bajaradi;
  • // belgisidan keyingi satr oxirigacha bo'lgan barcha yozuvlarni e'tiborsiz qoldiradi.

2. Ko'p qatorli izohlar (Multiline Comments)

Ko'p qatorli izohlar /* bilan boshlanadi va */ bilan tugaydi. Ularni blokli izohlar (block comments) deb ham atashadi:

example.go
package main

import "fmt"

func main() {
    /* Ushbu kod xodimning oylik maoshini
       saqlash uchun salary o'zgaruvchisini
       yaratadi va ekranga chiqaradi */
    salary := 30000

    fmt.Println("Maosh:", salary)
}

Natija:

kod
Maosh: 30000

[!TIP] Ko'p qatorli izohlar (/* ... */) asosan dasturni sinash yoki vaqtincha katta kod bloklarini o'chirib turish uchun qulay. Oddiy kod yozishda esa Go uslubiga ko'ra bir nechta ketma-ket bir qatorli // izohlaridan foydalanish ko'proq tavsiya etiladi:

example.go
// xodimning oylik maoshini
// saqlash uchun o'zgaruvchi
salary := 30000

Kodni sinash va disk raskadrovka (debugging) uchun izohlardan foydalanish

Izohlar dasturdagi xatolarni qidirishda va tuzatishda juda katta yordam beradi.

Masalan, dasturni ishga tushirishda xatolik yuz bersa, kodni butunlay o'chirib tashlamasdan, ma'lum bir qismini vaqtincha izohga olib sinab ko'rishimiz mumkin:

example.go
package main

import "fmt"

func main() {
    age := 25
    height := 170

    fmt.Println("Yosh:", age)
}

Bu dasturni ishga tushirsak, Go kompilyatori quyidagi xatoni beradi:

kod
height declared and not used

Chunki Go tilida e'lon qilingan har bir o'zgaruvchi albatta ishlatilishi shart.

Agar height hozircha kerak bo'lmasa, uni o'chirib tashlash o'rniga shunchaki izohga olib qo'yamiz:

example.go
package main

import "fmt"

func main() {
    age := 25
    // height := 170

    fmt.Println("Yosh:", age)
}

Natija:

kod
Yosh: 25

Endi dastur hech qanday xatosiz ishlaydi. Keyinchalik height kerak bo'lganda, uni osonlikcha izohdan chiqarib ishlatish mumkin bo'ladi.


Nima uchun izohlardan foydalanish kerak?

  1. Kodni tushunishni osonlashtiradi: Yaxshi yozilgan izohlar sizga va boshqa dasturchilarga kodning maqsadi va vazifasini tezda tushunib olishga imkon beradi.
  2. Disk raskadrovka (Debugging) uchun qulay: Xato berayotgan kod qismlarini o'chirmasdan vaqtincha to'xtatib turishga yordam beradi.
  3. Jamoaviy hamkorlik: Katta loyihalarda jamoa a'zolari bir-birlarining kodini tezroq anglashlari uchun izohlar muhim ahamiyatga ega.