Chào các bạn, trong bài viết này mình xin được chia sẻ một số kiến thức về clean code mình tổng hợp được. Hãy cùng mình tìm hiểu Clean code là gì và tại sao phải sử dụng chúng nhé.

Clean code là gì?

Clean code là thuật ngữ để chỉ đến những mã nguồn tốt, có các đặc điểm:

  • Đơn giản: Giải quyết vấn đề ngắn gọn, không phức tạp hóa.
  • Trực tiếp: Giải quyết đúng vấn đề đang đề cập đến.
  • Dễ đọc: Giúp các lập trình viên khác có thể hiểu được ý nghĩa của từng dòng code dễ dàng.
  • Dễ cải tiến: Có thể mở rộng, thay đổi mà không gây ra nhiều lộn xộn cho mã nguồn.
  • Có unit test và acceptance: Đảm bảo mã nguồn chạy đúng với từng trường hợp.
  • Định danh tốt: Thể hiện đúng ý nghĩa từng thành phần.
  • Có ít sự phụ thuộc: Giúp thay đổi và mở rộng dự án dễ dàng hơn.
  • Không có mã nguồn trùng lặp.
  • Thể hiện được ý tưởng của thiết kế: Bảo đảm được đúng với ý tưởng thiết kế.

Tại sao chúng ta phải sử dụng Clean code?

Để đảm bảo mã nguồn có chất lượng tốt, giúp ích cho việc cộng tác nhóm, dễ dàng bảo trì và mở rộng hệ thống.

Một số yếu tố ảnh hưởng tới clean code

1 – Định danh: Biến, hàm, lớp, package phải ngắn gọn, thể hiện được ý nghĩa. Không đặt tên chung chung, khó hiểu.

Ví dụ:

Mã nguồn không tốt: a, x, data, get …

Mã nguồn tốt: nameStudent, getName …

2 – Hàm: Hàm không quá dài, làm nhiều nhiệm vụ, có nhiều tham số.

Ví dụ:

Mã nguồn không tốt:

 int calculator(int number1, int number2, int number3, int number4){}Code language: CSS (css)

Hàm trên đặt tên hàm không rõ ràng và có quá nhiều tham số.

Mã nguồn tốt:

int calculatorSum(int number1, int number2){}Code language: CSS (css)

Hàm trên đặt tên rõ ràng và có ít hơn 3 tham số.

Ghi chú: Không nên lạm dụng ghi chú quá nhiều, không đúng mục đích.

3 – Định dạng mã nguồn (Format): Như các khoảng cách lùi đầu dòng…

4 – Thiết kế, kiến trúc tồi: Khiến việc mở rộng, thay đổi khó khăn.

5 – Thiếu các bản kiểm thử: dẫn đến không đảm bảo được chất lượng mã nguồn ổn định.

Một số quy ước đặt tên nên biết: 

  • Tên biến, lớp:  Nên đặt tên là các danh từ, cụm danh từ hay tính từ.
  • Tên hàm: Nên bắt đầu bằng động từ.
  • Tên biến và hàm nên theo quy tắc camel Case: Ký tự đầu tiên viết thường, các ký tự đầu tiên của từ sau viết hoa.
  • Tên lớp nên theo quy tắc Pascal Case: Viết hoa hết các ký tự đầu tiên của chữ đó.

Ví dụ:

Biến: nameStudent, listNameStudent …

Lớp: Animal, Student, Persion, Dog…

Hàm: searchByName(), getName(), sortByPrice()…

Trên đây là những kiến thức mình tổng hợp được về clean code. Nếu các bạn thấy bài viết của mình còn nhiều sai sót thì hãy góp ý cho mình bằng cách comment xuống bên dưới nhé!

Author: Đào Văn Phi

Tham khảo thêm: Test Coverage

Xem thêm chia sẻ và hướng dẫn về Clean Code của anh Nguyễn Khắc Nhật tại đây:

– Video hướng dẫn: http://bit.ly/2YQMUZn
– Slide: http://bit.ly/2NK0Q6a