Reflection di golang - RealYukiSan/explore-go GitHub Wiki

Reflection menurut saya singkatnya adalah merupakan sebuah kemampuan dimana program dapat mengenali strukturnya sendiri, hal ini juga dapat digunakan untuk debugging, dan digunakan juga di dalam sebuah metaprogramming seperti compiler, assembler, dan interpreter.

pengimplementasian atau pemodelan reflection di setiap bahasa itu berbeda (dan tidak semua bahasa mendukung itu), jadi reflection yang dimaksud di page ini adalah reflection dalam konteks golang.

pastikan sebelum anda membaca lebih lanjut untuk me-refresh pemahaman tentang type dan interface pada golang, karena konsep tersebut erat kaitannya dengan reflection, type interface pada golang itu sebenarnya kurang lebih mirip seperti typescript. hanya saja, type pada golang itu di check ketika compile code, sedangkan type pada typescript itu di check di typescript server (lsp)?

Interface itu merupakan tipe data, mungkin lebih tepatnya custom tipe data? yang berisikan kumpulan method, dan perlu diingat bahwa concrete type != interface type. jadi interface type tidak dapat mengandung interface type lagi

referensi: laws of reflection