Darsliklar Go Lang Izoh

Go Lang Go Lang Izoh

Izoh (comment) — kod ichida yozilgan, kompilyator tomonidan e’tiborga olinmaydigan matn. Go’da izohning ikki shakli bor, ular C++ va Java’dagi bilan deyarli bir xil.

Izohdastur bajarilishiga ta’sir qilmaydigan, faqat odam o’qishi uchun mo’ljallangan matn qismi. Go’da bundan tashqari izohlar godoc hujjatlashtirish tizimida ham ishlatiladi.

Bir qatorli izoh

// belgisidan keyingi qator oxirigacha bo’lgan matn izoh hisoblanadi:

package main

import "fmt"

func main() {
    // Bu izoh, kompilyator uni o'tkazib yuboradi
    fmt.Println("UzbekDevs") // qatorning oxirida ham izoh yozish mumkin
}
UzbekDevs

// qatorning boshida yoki kod qatoridan keyin yozilishi mumkin — ikkala holatda ham undan keyingi matn bajarilmaydi.

Ko’p qatorli izoh

Bir necha qatorni birdaniga izohga aylantirish uchun /* ... */ qamrovi ishlatiladi:

package main

import "fmt"

func main() {
    /*
        Bu bir necha qatordan iborat izoh.
        Kompilyator bu blokning hech qaysi qatorini bajarmaydi.
    */
    fmt.Println("Kod davom etmoqda")
}
Kod davom etmoqda

/* */ ko’pincha faylning boshida litsenziya matni yoki paket haqida umumiy tavsif yozishda, shuningdek kod qatorini vaqtincha o’chirishda ishlatiladi.

godoc — izohdan hujjat yasash

Go’ning o’ziga xosligi: funksiya yoki tur ustidan, bo’sh qatorsiz yozilgan izoh rasmiy hujjatga aylanadi. Konvensiya bo’yicha izoh aynan shu nom bilan boshlanishi kerak:

package main

import "fmt"

// Yigindi ikkita butun sonni qo'shib, natijasini qaytaradi.
func Yigindi(a, b int) int {
    return a + b
}

func main() {
    fmt.Println(Yigindi(15, 27))
}
42

// Yigindi ... — bu shunchaki izoh emas, go doc buyrug’i yoki pkg.go.dev saytida Yigindi funksiyasi uchun rasmiy tavsif sifatida avtomatik ko’rsatiladi. Shu sabab Go’da izoh yozish — hujjat yozish bilan deyarli bir xil ish.

TODO izohlari

Amaliyotda tugallanmagan qismlarni belgilash uchun TODO kabi kalit so’zli izohlar keng qo’llaniladi:

package main

import "fmt"

func hisoblash() int {
    // TODO: haqiqiy hisob-kitob logikasini qo'shish kerak
    return 0
}

func main() {
    fmt.Println(hisoblash())
}
0

Bu shunchaki kelishuv — Go tili TODOni maxsus tanimaydi, lekin ko’plab tahrirlovchilar va jamoaviy loyihalar bunday izohlarni avtomatik qidirib, ro’yxatga oladi.