Sobes.tech
Junior — Middle

Verilənlər strukturlarını yaradarkən istifadəçi etiketlərindən istifadə təcrübənizi paylaşın.

sobes.tech Süni İntellekt

AI-dan cavab

Go dilində, istifadəçi tərəfindən təyin olunan etiketlər (struct tags) strukturların sahələrinə meta məlumat əlavə etmək üçün istifadə olunur və bunlar serializasiya, doğrulama, verilənlər bazası ilə işləmə və digər tapşırıqlarda istifadə edilə bilər.

İstifadəçi tərəfindən təyin olunan etiketlərlə işləmə təcrübəsi adətən aşağıdakıları əhatə edir:

  • Kitabxanaların davranışını idarə etmək üçün etiketlərin təyin edilməsi, məsələn, json:"sahə_adi" JSON serializasiyasında sahənin adını göstərmək üçün.
  • Öz məntiqiniz üçün xüsusi etiketlərin yaradılması, məsələn, validate:"required,min=3" doğrulama qaydalarını təsvir etmək üçün.
  • Etiketləri oxumaq və proqramın davranışını dinamik şəkildə dəyişdirmək üçün refleksiya (reflect) istifadə etmək.

Xüsusi etiket nümunəsi və onun refleksiya ilə oxunması:

package main

import (
    "fmt"
    "reflect"
)

type User struct {
    Name  string `custom:"required"`
    Email string `custom:"optional"`
}

func main() {
    u := User{Name: "Alice", Email: "alice@example.com"}
    t := reflect.TypeOf(u)

    for i := 0; i < t.NumField(); i++ {
        field := t.Field(i)
        tag := field.Tag.Get("custom")
        fmt.Printf("Sahə: %s, Xüsusi etiket: %s\n", field.Name, tag)
    }
}

Bu yanaşma müxtəlif alətlər və kitabxanalar üçün əlavə məlumatlarla çevik və genişlənə bilən məlumat strukturları yaratmağa imkan verir.