Tôi làm theo quy tắc sau: Tên theo mục đích (Tại sao? - quyết định thiết kế) chứ không phải nội dung (Cái gì, như thế nào? - có thể thấy trong mã).
Đối với chức năng đó là hầu như luôn luôn là một hành động (động từ) tiếp theo là danh từ của các thông số và (hoặc kết quả. (Off-topic nhưng cho các biến không sử dụng "arrayOfNames" hoặc "listOfNames", đây là những loại thông tin nhưng đơn giản là "tên"). Điều này cũng sẽ tránh mâu thuẫn nếu bạn cấu trúc lại mã một phần.
Đối với các mẫu nhất định như đối tượng sáng tạo, hãy phù và luôn luôn sử dụng việc đặt tên tương tự như "Tạo ..." (và không đôi khi "Phân bổ ..." hoặc "Xây dựng ..." nếu không bạn hoặc các đồng nghiệp của bạn sẽ kết thúc trong việc gãi đầu vết thương của họ)
Có hai vấn đề khó khăn trong khoa học máy tính: (1) Vô hiệu hóa bộ nhớ cache; (2) Đặt tên cho mọi thứ; (3) Lỗi off-by-one. –
Trùng lặp: http://stackoverflow.com/questions/421965/anyone-else-find-naming-classes-and-methods-one-of-the-most-difficult-part-in-pro – gnovice
@Greg Hewgill: Tôi cá cược nếu Phil Karlton vẫn còn sống, anh ta sẽ thích điều đó. –