Uber là một công ty công nghệ đặt trụ sở tại Silicon Valley, Hoa Kỳ, và là một trong những người sử dụng sớm ngôn ngữ Go. Họ đã chia sẻ nhiều dự án golang mã nguồn mở, như zap và jaeger nổi tiếng trong cộng đồng Gopher. Vào cuối năm 2018, Uber đã chia sẻ hướng dẫn kiểu Go nội bộ của mình trên GitHub. Sau một năm tích luỹ và cập nhật, hướng dẫn đã hình thành và nhận được sự chú ý rộng rãi từ các Gophers. Bài viết này là phiên bản tiếng Trung của hướng dẫn đó.
Kiểu mã quy định các quy ước kiểm soát mã của chúng ta. Những quy ước này không chỉ bao gồm định dạng tệp nguồn được xử lý bởi gofmt cho chúng ta.
Mục đích của hướng dẫn này là quản lý sự phức tạp này bằng cách mô tả chi tiết những xem xét khi viết mã Go tại Uber. Sự tồn tại của những quy tắc này là để làm cho cơ sở mã dễ quản lý trong khi vẫn cho phép kỹ sư sử dụng các tính năng của ngôn ngữ Go một cách hiệu quả hơn.
Hướng dẫn ban đầu được viết bởi Prashant Varanasi và Simon Newton nhằm mục đích giúp đồng nghiệp có thể sử dụng Go nhanh chóng. Trong nhiều năm qua, hướng dẫn đã được sửa đổi dựa trên phản hồi từ người khác.
Tài liệu này ghi lại các quy ước ăn đúng trong mã Go mà chúng ta tuân theo tại Uber. Nhiều trong số đó là hướng dẫn chung cho Go, trong khi những hướng dẫn mở rộng khác phụ thuộc vào các hướng dẫn bên ngoài sau đây:
Mục tiêu của chúng tôi là làm cho các ví dụ mã phù hợp để sử dụng với hai phiên bản Go phát hành phát hành.
Tất cả mã nên vượt qua các kiểm tra của golint
và go vet
mà không có lỗi. Chúng tôi khuyến nghị thiết lập trình soạn thảo của bạn để:
- Chạy
goimports
khi lưu - Chạy
golint
vàgo vet
để kiểm tra lỗi
Kho GitHub: https://github.com/uber-go/guide
Kho GitHub: https://github.com/xxjwxc/uber_go_guide_cn