0
0
Lập trình
Flame Kris
Flame Krisbacodekiller

Cách Viết Mã JavaScript Sạch: Thực Hành Tốt Nhất và Ví Dụ

Đăng vào 8 tháng trước

• 4 phút đọc

Giới Thiệu

Viết mã sạch không chỉ giúp chương trình của bạn chạy mượt mà mà còn tạo ra mã nguồn dễ đọc, dễ bảo trì và dễ gỡ lỗi. Khi dự án phát triển, mã lộn xộn có thể trở thành nợ kỹ thuật, làm chậm quá trình phát triển và khiến việc sửa lỗi trở nên khó khăn hơn. Trong bài viết này, chúng ta sẽ khám phá các thực hành viết mã sạch trong JavaScript với những ví dụ có thể áp dụng ngay hôm nay.

1. Sử Dụng Tên Biến & Hàm Có Ý Nghĩa

Ví Dụ Kém

javascript Copy
let x = 10;
let y = 20;
let z = x + y;

function d(a, b) {
  return a * b;
}

Ví Dụ Sạch

javascript Copy
let price = 10;
let tax = 20;
let totalPrice = price + tax;

function calculateDiscount(price, discountRate) {
  return price * discountRate;
}

👉 Tên biến và hàm nên giải thích mục đích thay vì chỉ lưu trữ dữ liệu.

2. Giữ Hàm Nhỏ & Tập Trung

Ví Dụ Kém

javascript Copy
function processUser(user) {
  console.log("Saving user to DB...");
  database.save(user);
  console.log("Sending welcome email...");
  emailService.send(user.email, "Welcome!");
  console.log("Logging user activity...");
  logger.log(user);
}

Ví Dụ Sạch

javascript Copy
function saveUser(user) {
  database.save(user);
}

function sendWelcomeEmail(user) {
  emailService.send(user.email, "Welcome!");
}

function logUserActivity(user) {
  logger.log(user);
}

function processUser(user) {
  saveUser(user);
  sendWelcomeEmail(user);
  logUserActivity(user);
}

👉 Mỗi hàm nên chỉ làm một việc duy nhất.

3. Tránh Sử Dụng Số & Chuỗi Ma

Ví Dụ Kém

javascript Copy
if (user.age > 18) {
  giveAccess(user);
}

Ví Dụ Sạch

javascript Copy
const MINIMUM_AGE = 18;

if (user.age > MINIMUM_AGE) {
  giveAccess(user);
}

👉 Sử dụng hằng số để làm cho mã tự giải thích.

4. Sử Dụng Định Dạng Nhất Quán

Các công cụ như Prettier và ESLint giúp giữ cho mã của bạn đồng nhất.

Ví Dụ Kém

javascript Copy
function add(a,b){return a+b;}
const result=add(5,10);console.log(result);

Ví Dụ Sạch

javascript Copy
function add(a, b) {
  return a + b;
}

const result = add(5, 10);
console.log(result);

👉 Sự nhất quán giúp mã dễ đọc và dễ đánh giá hơn.

5. Ưu Tiên constlet Thay Vì var

Ví Dụ Kém

javascript Copy
var count = 0;
for (var i = 0; i < 5; i++) {
  count += i;
}
console.log(i); // i vẫn có thể truy cập (có nguy cơ lỗi!)

Ví Dụ Sạch

javascript Copy
let count = 0;
for (let i = 0; i < 5; i++) {
  count += i;
}
console.log(count); // i không bị rò rỉ ra ngoài

👉 Sử dụng const cho các giá trị không thay đổi, let cho những giá trị có thể thay đổi.

6. Viết Bình Luận Một Cách Thông Minh

Ví Dụ Kém

javascript Copy
// tăng count lên 1
count = count + 1;

Ví Dụ Sạch

javascript Copy
// Theo dõi số lần đăng nhập của người dùng để ngăn chặn các cuộc tấn công brute force
loginAttempts++;

👉 Bình luận về lý do, không phải điều gì. Mã nguồn nên tự giải thích "điều gì".

7. Xử Lý Lỗi Một Cách Thanh Lịch

Ví Dụ Kém

javascript Copy
const data = JSON.parse(input); // bị lỗi nếu không hợp lệ

Ví Dụ Sạch

javascript Copy
let data;
try {
  data = JSON.parse(input);
} catch (error) {
  console.error("Dữ liệu JSON không hợp lệ:", error.message);
  data = {};
}

👉 Luôn giả định rằng mọi thứ có thể xảy ra sai.

8. Sử Dụng Nguyên Tắc DRY (Không Lặp)

Ví Dụ Kém

javascript Copy
function getUserFullName(user) {
  return user.firstName + " " + user.lastName;
}

function getAdminFullName(admin) {
  return admin.firstName + " " + admin.lastName;
}

Ví Dụ Sạch

javascript Copy
function getFullName(person) {
  return `${person.firstName} ${person.lastName}`;
}

👉 Tái sử dụng logic thay vì sao chép nó.

9. Sử Dụng Tham Số Mặc Định

Ví Dụ Kém

javascript Copy
function greet(name) {
  if (!name) {
    name = "Guest";
  }
  console.log(`Hello, ${name}`);
}

Ví Dụ Sạch

javascript Copy
function greet(name = "Guest") {
  console.log(`Hello, ${name}`);
}

👉 Giúp mã ngắn gọn và sạch hơn.

10. Viết Kiểm Tra 🧪

Mã sạch không chỉ là về phong cách - mà còn là độ tin cậy. Sử dụng Jest, Mocha, hoặc Vitest để kiểm tra.

javascript Copy
function add(a, b) {
  return a + b;
}

test("cộng hai số", () => {
  expect(add(2, 3)).toBe(5);
});

Kết Luận

Mã sạch là về sự rõ ràng, đơn giản và khả năng bảo trì. Hãy sử dụng tên gọi có ý nghĩa, viết các hàm nhỏ gọn, tránh sao chép, xử lý lỗi một cách hợp lý và giữ cho mã của bạn nhất quán. Viết mã JavaScript sạch không chỉ giúp bạn mà còn giúp cho chính bạn trong tương lai và các đồng nghiệp của bạn.

Các Thực Hành Tốt Nhất

  • Sử dụng tên biến có ý nghĩa.
  • Giữ các hàm nhỏ và tập trung.
  • Tránh lặp lại mã nguồn.
  • Xử lý lỗi một cách thanh lịch.
  • Duy trì định dạng nhất quán.

Câu Hỏi Thường Gặp

1. Tại sao mã sạch lại quan trọng?

Mã sạch giúp cho việc bảo trì và sửa lỗi dễ dàng hơn trong tương lai.

2. Làm thế nào để bắt đầu viết mã sạch?

Bắt đầu bằng cách áp dụng các nguyên tắc như đặt tên có ý nghĩa, viết hàm ngắn gọn và xử lý lỗi một cách hợp lý.

3. Có công cụ nào hỗ trợ viết mã sạch không?

Có, bạn có thể sử dụng Prettier và ESLint để giúp giữ mã của bạn đồng nhất.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào