Naming convention là gì?

Naming Convention – là một tập hợp các tiêu chuẩn được quy định sẵn dùng để biểu thị cho các thành phần: tên biến, tên hàm, kiểu dữ liệu,…

Phong cách đặt tên phổ biến

1. Camel Case

  • Camel Case là kiểu đặt tên con lạc đà.
  • Quy tắc: Chữ cái đầu tiên được viết thường. Các từ tiếp theo sẽ viết hoa chữ cái đầu tiên.
  • Sử dụng: Phổ biến cho việc đặt tên biến, hàm trong JavaScript, Go, C#, Python.
// Csharf

string userName = "Viblo";  
int number = 100;  

 

2. Pascal Case

  • Pascal Case là một biến thể khác của Camel Case.
  • Quy tắc: Các từ sẽ viết hoa chữ cái đầu tiên.
  • Sử dụng: Phổ biến cho việc đặt tên lớp, phương thức trong C#, Java.
Csharf

class UserProfile {}

3. Snake Case

  • Snake Case là kiểu đặt tên con rắn.
  • Quy tắc: Các từ được ngăn cách bởi dấu gạch dưới (_), tất cả các kí tự chữ cái sẽ được viết hoa hoặc viết thường.
  • Sử dụng: Phổ biến cho việc đặt tên biến, hàng số trong Python, Ruby, PHP.
python

user_name = "Viblo"  # Biến
TOTAL_SCORE = 100  # Hằng số

4. Kebab Case

  • Kebab Case là kiểu đặt tên cây thịt xiên que.
  • Quy tắc: Các từ được ngăn cách bởi dấu gạch ngang (-), tất cả các kí tự chữ cái sẽ được viết hoa hoặc viết thường.
  • Sử dụng: Phổ biến cho việc đặt tên file, CSS class.
css

.user-name {
    color: blue;
}

Quy tắc đặt tên chung

  1. Ý nghĩa và rõ ràng
  • Quy tắc: Tên biến, hàm, lớp nên phản ánh rõ chức năng hoặc mục đích của nó.
  • Tốt: caculateTotalAmount()fetchUserData()
  • Kém: calc()fetch()
  1. Nhất quán
  • Quy tắc: Sử dụng phong cách đặt tên nhất quan trong toàn bộ dự án.
  • Ví dụ: Nếu bạn sử dụng camelCase cho hàm, hãy dùng camelCase cho tất cả các hàm trong dự án.
  1. Ngắn gọn nhưng rõ ràng
  • Quy tắc: Tên nên đủ ngắn để không gây rối, nhưng vẫn phải rõ ràng.
  • Tốt: userProfiletotalAmount
  • Kém: usrProftAmnt
  1. Tránh viết tắt
  • Quy tắc: Trừ khi viết tắt đã phổ biến hoặc dễ hiểu.
  • Tốt: maximumRetries
  • Kém: maxR
  1. Không dùng từ viết tắt không rõ ràng
  • Quy tắc: Sử dụng các từ đầy đủ và dễ hiểu.
  • Tốt: numberOfUsers
  • Kém: numUsr
  1. Tránh sử dụng ký tự đặc biệt
  • Quy tắc: Tránh sử dụng ký tự đặc biệt không cần thiết như @,$,%,…
  1. Tên danh sách và tập hợp
  • Quy tắc: Thường thêm hậu tố số nhiều như items, users, results.
  • Tốt: userListerrorMesages
  • Kém: usermesage

About the Author

Ngọc Tri

View all author's posts

Leave a Comment

Your email address will not be published. Required fields are marked *

Bài viết khác

Return first

Return first là gì Khi trong hàm gặp một trường hợp đặc biệt (như lỗi, dữ liệu không hợp lệ…), ta trả về kết quả ngay lập tức và kết thúc hàm. Lợi ích khi dùng Return First trong Go Code gọn, dễ đọc Ít phải thụt dòng. Đọc từ trên xuống dưới như một […]

RabbitMQ

RabbitMQ là gì ? RabbitMQ là một hệ thống Message Broker, cho phép các thành phần trong hệ thống giao tiếp với nhau bằng cách gửi và nhận các tin nhắn thông qua các hàng đợi. Các thành phần chính trong RabbitMQ Producer là nơi gửi tin nhắn vào RabbitMQ (có thể là một api […]

Seed Data(Goose)

Seed Data là gì? Seed data là tập hợp các cậu lệnh sql hoặc đoạn code để đưa dữ liệu ban đầu vào CSDL. Mục đích Khởi tạo hệ thống với dữ liệu mặc định. Tạo dữ liệu test nhanh chóng. Hỗ trợ kiểm thử tự động (unit test, integration test). Tạo môi trường demo cho […]

Migration

Migration là gì? Migration là một cơ chế cho phép quản lý các thay đổi cấu trúc của cơ sở dữ liệu thông qua các file chứa câu lệnh định nghĩa (SQL hoặc code). Như là tạo bảng mới, thêm, sửa, xóa, cột, thêm index, tạo quan hệ giữa bảng Ưu điểm   Đồng bộ: Mọi […]

Ngôn ngữ lập trình Golang

Golang là gì? Go (hay còn gọi là Golang) là một ngôn ngữ lập trình được thiết kế dựa trên tư duy lập trình hệ thống. Go được phát triển bởi Robert Griesemer, Rob Pike và Ken Thompson tại Google vào năm 2007. Điểm mạnh của Go là bộ thu gom rác và hỗ trợ […]

Tìm hiểu Git và GitHub

Git là gì? Git là một hệ thống quản lý phiên bản phân tán (Distributed Version Control System – DVCS), nó là một trong những hệ thống quản lý phiên bản phân tán phổ biến nhất hiện nay. Git cung cấp cho mỗi lập trình viên kho lưu trữ (repository) riêng chứa toàn bộ lịch sử thay đổi. Version Control System […]