Định danh trống `_`
Thuộc phần Logic và luồng điều khiển trong hành trình GO của Coddy. Bài học 55 trên 68.
Đôi khi bạn cần nhập một package không phải để dùng các hàm hoặc biến mà package đó xuất ra, mà để kích hoạt tác dụng phụ của nó. Tác dụng phụ phổ biến nhất là chạy hàm init, hàm này tự động thực thi khi bạn nhập package.
Go cung cấp định danh trống _ cho mục đích này. Khi bạn nhập một package bằng định danh trống, Go sẽ nhập package đó và chạy mọi đoạn code khởi tạo, nhưng không yêu cầu bạn sử dụng bất kỳ định danh nào được export của package.
import _ "database/sql/driver"Điều này đặc biệt hữu ích khi bạn cần một package tự đăng ký với một hệ thống khác hoặc thực hiện các tác vụ thiết lập, nhưng không trực tiếp gọi bất kỳ hàm nào của package đó trong code. Nếu không có định danh trống, Go sẽ báo lỗi biên dịch vì bạn đã nhập một package nhưng không sử dụng.
Mã định danh trống cho Go biết: "Hãy nhập gói này để thực thi các tác dụng phụ của nó, nhưng mình sẽ không tham chiếu trực tiếp đến gói này trong code." Cách này giúp danh sách gói đã nhập gọn gàng mà vẫn có được hành vi khởi tạo bạn cần.
Tự làm thử
Bài học này không có thử thách code.
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Logic và luồng điều khiển
1Luồng điều khiển nâng cao
Switch với `fallthrough`Thoát khỏi vòng lặp lồng nhauTiếp tục một vòng lặp cụ thểCâu lệnh `goto`Ôn tập: điều khiển vòng lặp nâng cao4Dự án: Danh sách việc cần làm đơn giản
Thiết lập dự ánThêm một việc cần làm2Struct và phương thức
Định nghĩa phương thức cho structReceiver giá trịReceiver con trỏChọn receiverPhương thức và hàmÔn tập: hành vi của struct5Tìm hiểu chuyên sâu về map
Map chứa structCon trỏ làm giá trị của mapKiểm tra map nilSo sánh các mapÔn tập: bộ đếm tần suất từ8Dự án: Quản lý hàng tồn kho đơn giản
Tổng quan dự ánKiểm tra hàng tồn kho3Interface (cơ bản)
Interface là gì?Định nghĩa interfaceTriển khai interfaceDùng kiểu interfaceInterface rỗngKhẳng định kiểuType switchÔn tập: hình dạng và hành vi6Go theo cách viết thành ngữ: tập hợp
Cách dùng tập hợp trong GoTạo tập hợpThêm phần tử vào tập hợpKiểm tra phần tử có thuộc tập hợp khôngXóa phần tử khỏi tập hợpLặp qua tập hợpÔn tập: tên người dùng duy nhất9Package và phạm vi
Package là gì?Được xuất và không được xuấtTạo package đơn giảnBí danh packageĐịnh danh trống `_`Hàm `init`Ôn tập: xây dựng tiện íchTự luyện tập: Trình biên dịch Go online