# Reflection (Go) > package reflect, kiểm tra kiểu, thao tác giá trị, struct tags, trường hợp sử dụng, hiệu năng - 20 câu hỏi phỏng vấn - Senior - [Câu hỏi phỏng vấn: Go](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van.md) ## 1. Package reflect trong Go là gì? **Câu trả lời** Package reflect cho phép kiểm tra và thao tác các kiểu và giá trị tại thời điểm chạy (runtime). Nó được dùng để triển khai các thư viện tổng quát (marshaling JSON, ORM), nhưng việc sử dụng trực tiếp trong code ứng dụng không được khuyến khích vì nó hy sinh tính an toàn kiểu và hiệu năng. ## 2. Làm thế nào để lấy kiểu của một biến với package reflect? **Câu trả lời** Hàm reflect.TypeOf() trả về một reflect.Type biểu diễn kiểu động của interface được truyền làm đối số. Nếu biến là nil, reflect.TypeOf() trả về nil. Sử dụng .Kind() trên Type trả về cho phép lấy danh mục kiểu (int, string, struct, v.v.). ## 3. Sự khác biệt giữa reflect.Type và reflect.Value là gì? **Câu trả lời** reflect.Type biểu diễn metadata của kiểu (tên, kind, các phương thức, các trường) và được lấy qua reflect.TypeOf(). reflect.Value biểu diễn giá trị cụ thể và cho phép đọc hoặc sửa đổi nó qua reflect.ValueOf(). Cả hai bổ sung cho nhau: Type mô tả 'cái gì' và Value chứa 'dữ liệu'. ## Còn 17 câu hỏi nữa - Làm thế nào để sửa đổi giá trị của một biến thông qua reflection? - reflect.Kind là gì? Đăng ký miễn phí: https://sharpskill.dev/vi/login ## Các chủ đề phỏng vấn Go khác - [Kiến thức cơ bản về Go](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/go-basics.md): 25 câu hỏi, Junior - [Cấu trúc dữ liệu Go](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/go-data-structures.md): 20 câu hỏi, Junior - [Interface trong Go](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/go-interfaces.md): 18 câu hỏi, Junior - [Xử lý lỗi](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/error-handling.md): 20 câu hỏi, Junior - [Cơ bản về Goroutine](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/goroutines-basics.md): 20 câu hỏi, Junior - [Channels](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/channels.md): 22 câu hỏi, Junior - [Go Modules](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/go-modules.md): 18 câu hỏi, Mid-Level - [Máy chủ HTTP](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/http-server.md): 24 câu hỏi, Mid-Level - [HTTP Client](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/http-client.md): 18 câu hỏi, Mid-Level - [Mã hóa JSON](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/json-encoding.md): 20 câu hỏi, Mid-Level - [Database/SQL](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/database-sql.md): 22 câu hỏi, Mid-Level - [Gói context](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/context-package.md): 20 câu hỏi, Mid-Level - [Testing](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/testing.md): 22 câu hỏi, Mid-Level - [Các mẫu Concurrency](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/concurrency-patterns.md): 24 câu hỏi, Mid-Level - [Primitive đồng bộ hóa](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/sync-primitives.md): 22 câu hỏi, Mid-Level - [Framework web Go](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/go-web-frameworks.md): 20 câu hỏi, Mid-Level - [Thiết kế API REST](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/rest-api-design.md): 20 câu hỏi, Mid-Level - [gRPC](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/grpc.md): 22 câu hỏi, Mid-Level - [Quản lý bộ nhớ](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/memory-management.md): 24 câu hỏi, Senior - [Tối ưu hóa hiệu năng](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/performance-optimization.md): 22 câu hỏi, Senior - [Generics](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/generics.md): 20 câu hỏi, Senior - [Go Design Patterns](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/design-patterns.md): 24 câu hỏi, Senior - [Microservices](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/microservices.md): 24 câu hỏi, Senior - [Bảo mật và Xác thực](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/security-authentication.md): 24 câu hỏi, Senior - [Docker & Containerization](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/docker-containerization.md): 20 câu hỏi, Senior - [Kubernetes Basics](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/kubernetes-basics.md): 22 câu hỏi, Senior - [Go Nâng cao](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/advanced-go.md): 20 câu hỏi, Senior - [Phát triển CLI](https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/cli-development.md): 20 câu hỏi, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/vi/technologies/go/cau-hoi-phong-van/reflection