Bài viết được sự cho phép của tác giả Võ Xuân Phong
Giới thiệu về Go Mod
Để quản lý các modules trong Go một cách tiện lợi và dễ dàng hơn, từ phiên bản Go 1.11 đội ngũ Go đã cho ra mắt Go Modules.
Chúng ta có thể sử dụng Go Modules, gọi tắt là Go Mod để install các gói module một cách tự động khi chúng ta thực hiện thực thi chương trình.
Nếu không có Go Modules thì anh em có nhớ mỗi lần clone project về để tham khảo là phải sử dụng lệnh “go get” để tải thư viện, rất chi là mất thời gian luôn, nếu project ít thư viện thì không nói, project mà sử dụng nhiều module thư viện thì tải về bằng “go get” sẽ rất là nản.
Sử dụng Go Mod
Anh em có thể tải code tham khảo và thực hành với project Go ở đường link sau đây: Github
Project trên mình xây dựng trong GOPATH với link hướng dẫn chi tiết tại: https://anhlamweb.com/bai-viet-70/xay-dung-rest-api-co-ban-trong-golang.html
Và giờ từ project đó mình sẽ chuyển qua dùng Go Modules để quản lý các module thư viện dễ dàng hơn nha.
Anh em có thể để ý, sau khi clone project về với đường link Git ở trên thì có 2 file go.mod và go.sum.
go.mod : Định nghĩa đường dẫn của các module.
go.sum: Để lưu vết version của thư viện mà project đang sử dụng.
Anh em nhớ check lại version go mà mình đang sử dụng nhé, nếu Go 1.11 trở lên thì mới có Go Modules nhé.
Với việc sử dụng Go mod, đường dẫn tới project phải nằm ngoài thư mục src của GOPATH hoặc anh em có thể xóa biến môi trường của GOPATH đi luôn cũng được.
Bước 1: sau khi clone project về nếu anh em muốn chạy ngay chương trình thì cứ việc chạy lệnh go run main.go là được, go mod sẽ tự động tải các gói module về cho anh em luôn.
Bước 2: Bước này anh em muốn tự tay mình biểu diễn kỹ thuật, thì hãy xóa go.mod và go.sum đi sau đó chạy lệnh:
go mod init
Sau khi chạy lệnh trên thì file go.mod được khởi tạo.
Nội dung trong file go.mod
module github.com/PhongVX/golang-rest-api
go 1.12
require github.com/gorilla/mux v1.7.3 // indirect
Bước 3: Chạy chương trình và tự động tải các module bằng lệnh:
go run main.go
Sau khi chạy chương trình thì go.sum sẽ được tạo ra, lưu vết version của các module sử dụng trong project.
Nội dung trong file go.sum
github.com/gorilla/mux v1.7.3 h1:gnP5JzjVOuiZD07fKKToCAOjS0yOpj/qPETTXCCS6hw=
github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
Sau khi ứng dụng đã chạy, anh em có thể tham khảo bài viết này https://anhlamweb.com/bai-viet-70/xay-dung-rest-api-co-ban-trong-golang.html để test lại các API nhé. Chúc anh em thành công.
Bài viết gốc được đăng tải tại anhlamweb.com
Có thể bạn quan tâm:
- Golang là gì? 9 Framework tối ưu “cực căng” cho Golang
- Bắt đầu từ con số không với Ruby?
- 5 ngôn ngữ lập trình mới bạn cần phải biết trong năm 2017
Xem thêm các việc làm Developer hấp dẫn tại TopDev