[MẸO] Ưu tiên := cho khai báo biến ngắn trong Go

By khoanc, at: 13:47 Ngày 04 tháng 9 năm 2024

Thời gian đọc ước tính: __READING_TIME__ minutes

[TIPS] Prefer := for Short Variable Declaration in Go
[TIPS] Prefer := for Short Variable Declaration in Go

Một trong những tính năng tiện lợi nhất của Go là cú pháp := để khai báo biến ngắn. Nó cho phép bạn khai báo và khởi tạo một biến trên cùng một dòng, giúp mã của bạn ngắn gọn và dễ đọc hơn. Hãy cùng tìm hiểu lý do tại sao cú pháp rút gọn này nên là lựa chọn hàng đầu của bạn trong hầu hết các trường hợp.

 

Tại sao sử dụng :=?

 

Tính đơn giản và dễ đọc: Cú pháp := đơn giản hóa việc khai báo biến bằng cách kết hợp cả khai báo và khởi tạo trên một dòng duy nhất. Điều này giúp giảm mã boilerplate và làm cho việc giới thiệu một biến mới trở nên rõ ràng ngay lập tức.


Suy luận kiểu dữ liệu: Với :=, bạn không cần phải chỉ định rõ kiểu dữ liệu của biến. Go sẽ tự động suy luận kiểu dữ liệu dựa trên giá trị được gán, điều này giúp giảm sự dài dòng mà không làm mất đi tính rõ ràng.

 

count := 42   // count tự động là kiểu int
name := "Go"  // name tự động là kiểu string


Phạm vi khối lệnh: Các biến được khai báo bằng := có phạm vi trong khối lệnh mà chúng được khai báo, giúp bạn tránh các vấn đề liên quan đến việc sử dụng lại biến hoặc thay đổi trạng thái toàn cục không mong muốn.

 

Khi nào không nên sử dụng :=

 

Mặc dù cú pháp rút gọn rất mạnh mẽ, nhưng có những trường hợp bạn nên tránh sử dụng nó:

Biến cấp gói: Ở cấp độ gói, bạn cần khai báo biến bằng từ khóa var:= chỉ hợp lệ bên trong các hàm.

var globalCount int // Khai báo ở cấp độ gói


Gán lại giá trị: Nếu bạn đang gán lại giá trị cho một biến đã tồn tại trong cùng phạm vi, hãy sử dụng toán tử gán chuẩn = thay vì :=.

count = 50 // Gán lại một giá trị mới

 

Ví dụ về := trong thực tế

 

Dưới đây là một ví dụ đơn giản cho thấy cách := có thể giúp đơn giản hóa mã của bạn:

package main

import "fmt"

func main() {
    // Khai báo và khởi tạo nhiều biến với :=
    message := "Hello, Go!"
    count := 10
    isReady := true

    fmt.Println(message, count, isReady)
}


Trong ví dụ này, := được sử dụng để khai báo và khởi tạo ba biến với các kiểu dữ liệu khác nhau, giúp giữ cho mã ngắn gọn và dễ đọc.

Tag list:
- Go variable declaration best practices
- Golang
- Go short variable declaration
- Golang :=
- Go type inference
- Go language tips
- Go := shorthand

Liên quan

Outsourcing

Đọc thêm
Python Learning

Đọc thêm

Theo dõi

Theo dõi bản tin của chúng tôi và không bao giờ bỏ lỡ những tin tức mới nhất.