Thông thường khi cú pháp của ngôn ngữ yêu cầu tôi đặt tên cho một biến không bao giờ được sử dụng, tôi sẽ đặt tên cho nó _
.
Trong tâm trí của tôi, điều này làm giảm sự lộn xộn và cho phép tôi tập trung vào các biến có ý nghĩa trong mã. Tôi thấy nó không phô trương để nó tạo ra hiệu ứng "ngoài tầm nhìn, mất trí".
Một ví dụ phổ biến về nơi tôi làm điều này là đặt tên các truy vấn con trong SQL.
SELECT *
FROM
(
SELECT *
FROM TableA
JOIN TableB
ON TableA.ColumnB = TableB.ColumnB
WHERE [ColumnA] > 10
) _ --This name is required, but never used here
ORDER BY ColumnC
Một ví dụ khác là một biến vòng lặp không được sử dụng.
array = [[] for _ in range(n)] # Defines a list of n empty lists in Python
Tôi sử dụng kỹ thuật này rất ít, chỉ khi tôi cảm thấy rằng một tên mô tả không thêm gì vào mã, và trong một số ý nghĩa sẽ loại bỏ nó bằng cách thêm nhiều tên để nhớ. Trong một số cách, tôi xem nó tương tự như var
từ khóa trong C #, mà tôi cũng sử dụng một cách tiết kiệm.
Đồng nghiệp của tôi không đồng ý. Họ nói rằng thậm chí có một tên nhân vật (chữ cái) là tốt hơn _
.
Tôi có lầm không? Là nó thực hành xấu để làm điều này?
[table].[column]
định danh, nó giúp dễ đọc hơn rất nhiều khi chỉ sử dụng [T].[column]
. Nó phụ thuộc vào kịch bản của khóa học. Một chút lựa chọn như thế là hoàn toàn tốt, nhưng nếu một kịch bản rất lớn, tôi có thể sử dụng các tên mô tả nhiều hơn.