Apa Itu Tag Struct
Lampirkan metadata ke field
Apa Itu Tag Struct adalah pelajaran Go Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Go Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Go Academy mencakup 4 pelajaran total.
Apa Itu Tag Struktur
Tag struktur adalah string metadata yang dilampirkan pada sebuah bidang struktur. Tag ini tidak memengaruhi nilai bidang, tetapi membawa instruksi untuk pustaka yang membacanya.
Sintaks Tag
Tag muncul setelah jenis bidang dan dibungkus dalam tanda kutip string mentah. Setiap tag merupakan pasangan key:"value". Beberapa pasangan dipisahkan dengan spasi.
Tag yang umum terlihat seperti json:"name".
Struktur Bertag
Di sini, sebuah bidang memiliki tag json yang memberi tahu penyandi untuk menggunakan nama kunci dalam huruf kecil.
package main
import "fmt"
type User struct {
Name string "json:\"name\""
}
func main() {
u := User{Name: "Ann"}
fmt.Println(u.Name)
}Tag Hanyalah Metadata
Tag tidak mengubah cara kode Anda menggunakan bidang tersebut. u.Name tetap berfungsi secara normal. Tag hanya penting bagi pustaka yang memeriksanya melalui refleksi.
Beberapa Tag pada Satu Bidang
Satu bidang dapat memiliki beberapa kunci tag, yang masing-masing digunakan oleh pustaka berbeda.
package main
import "fmt"
type Product struct {
Name string "json:\"name\" db:\"product_name\""
}
func main() {
p := Product{Name: "Pen"}
fmt.Println(p.Name)
}Kunci Tag yang Umum
Kunci tag yang sering digunakan meliputi:
json- penyandian JSONxml- penyandian XMLdb- pemetaan kolom basis datavalidate- aturan validasi
Membaca Tag melalui Refleksi
Paket reflect memungkinkan Anda membaca tag saat runtime. field.Tag.Get("json") mengembalikan nilai untuk kunci json.
package main
import (
"fmt"
"reflect"
)
type User struct {
Name string "json:\"name\""
}
func main() {
t := reflect.TypeOf(User{})
f := t.Field(0)
fmt.Println(f.Tag.Get("json"))
}Metode Tag.Get
Tag.Get(key) mengembalikan nilai untuk sebuah kunci, atau string kosong jika kunci tersebut tidak ada. Tag.Lookup(key) juga melaporkan apakah kunci tersebut ada.
package main
import (
"fmt"
"reflect"
)
type User struct {
Name string "json:\"name\""
}
func main() {
f := reflect.TypeOf(User{}).Field(0)
val, ok := f.Tag.Lookup("json")
fmt.Println(val, ok)
}Konvensi Format Tag
Format tag standar adalah key:"value" tanpa spasi di sekitar titik dua. Pustaka mengharapkan konvensi ini. Tag yang formatnya tidak benar mungkin diabaikan secara diam-diam.
Mengapa Menggunakan Tag
Tag memungkinkan Anda menyimpan aturan pemetaan di dekat bidang yang dijelaskannya, alih-alih dalam konfigurasi terpisah. Satu struktur dapat digunakan untuk keluaran JSON, baris basis data, dan validasi, semuanya dikendalikan oleh tag.
Tag pada Bidang yang Tidak Diekspor
Tag pada bidang yang tidak diekspor (diawali huruf kecil) terlihat melalui refleksi, tetapi sebagian besar penyandi melewati seluruh bidang yang tidak diekspor. Pastikan bidang yang ingin Anda serialisasikan diekspor (diawali huruf kapital).
Pemeriksaan Singkat
Apa tujuan sebuah tag struktur?
Ringkasan
Tag struktur:
- Metadata yang dilampirkan pada bidang dalam bentuk
key:"value" - Tidak memengaruhi kode normal; dibaca melalui refleksi
- Digunakan oleh json, xml, db, validate, dan lainnya
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Apa Itu Tag Struct” gratis?
Ya — teks lengkap “Apa Itu Tag Struct” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Go Academy, upgrade ke CoddyKit PRO. Kursus Go Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Apa Itu Tag Struct”?
Lampirkan metadata ke field Kamu berlatih Go Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Go Academy?
Tidak diperlukan pengalaman sebelumnya. Go Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Apa Itu Tag Struct” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Go Academy ini?
Ya. Setiap pelajaran Go Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Apa Itu Tag Struct
- Tag JSON
- Pustaka Validasi
- Penguraian Tag Kustom