Clean Code là gì? Tại sao phải clean code?
NỘI DUNG BÀI VIẾT
Clean code là gì?
Clean code là một thuật ngữ có nguồn gốc từ phát triển phần mềm dùng để đề cập đến việc triển khai code một cách rõ ràng, dễ hiểu, có tính logic, dễ theo dõi, và có kỷ luật. Mục tiêu chính của Clean code là giúp quá trình sản xuất phần mềm trở nên hiệu quả hơn cũng như để tối ưu hóa khi viết code (có thể đọc, thay đổi, mở rộng và bảo trì).
Vậy Clean Code là gì?
Clean Code dịch sang tiếng việt là code sạch, vậy code sạch là gì? tức là code không xấu =))
Về hình thức thì Clean Code thể hiện như sau:
- Cách trình bày code: cách căn lề, sử dụng tab, space… sao cho dễ đọc, dễ nhìn
- Cách đặt tên biến, hàm, class có theo coding convention không
- Cách phân phối lượng code (số dòng code trong file, số dòng code trong 1 method…)
Về nội dung:
- Cách đặt tên hàm tên biến phải dễ hiểu
- Cách viết comment cho code, khi nào cần viết comment, khi nào không
- Thiết kế xây dựng cấu trúc của đối tượng (Object) dữ liệu để dễ sử dụng, mở rộng
- Cách xử lý ngoại lệ (Exception) có ổn không.
- Khả năng maintain, mở rộng của code…
- …
Có mấy cái gạch đầu dòng thôi, thấy khó nhưng mà khó phết. Bản thân lập trình viên nào mới đi làm mà được senior review code sẽ phát hiện rất nhiều vấn đề liên quan tới clean code.
Sao tao phải quan tâm đến Clean code?
Lý do tại sao bạn phải quan tâm đến code của mình là code của bạn sẽ mô tả quá trình suy nghĩ của bạn cho người khác. Đó là lý do tại sao bạn phải bắt đầu suy nghĩ về việc làm cho code của bạn thanh lịch hơn, đơn giản và dễ đọc hơn.
Đặc điểm của Clean code
Dễ đọc và dễ hiểu
Clean code phải dễ đọc, dễ hiểu, tránh gây hiểu lầm cho người đọc về mục đích hoặc ý nghĩa. Cụ thể, code phải giúp người đọc dễ hiểu qua những khía cạnh sau:
- Phương thức vận hành của toàn bộ ứng dụng
- Có sự tương tác giữa các object
- Vai trò và chức năng của class
- Chức năng của tất cả các method
- Mục đích hoạt động của mỗi expression và biến
Dễ thay đổi
Clean code là làm cho code trở nên dễ mở rộng, có thể tái cấu trúc và sửa lỗi trong codebase. Hiểu đơn giản là khi bạn thực hiện thay đổi trên code thì chức năng gốc vẫn không bị thay đổi. Để làm được điều đó, code phải đáp ứng các tiêu chí sau đây:
- Class và method phải được khai báo gần, nhỏ và chỉ đảm nhiệm một chức năng duy nhất
- Class phải có open API rõ ràng, ngắn gọn
- Chức năng của class và method được hoạt động bình thường và có thể dự đoán được
- Dễ dàng kiểm thử code đã có sẵn hoặc dễ viết test case của component testing
- Người đọc có thể hiểu được và thay đổi test một cách đơn giản
Tổng kết
Clean code thực sự là một trong những kỹ năng quan trọng bậc nhất nếu bạn muốn trở thành một lập trình viên chuyên nghiệp.
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á!
Leave a Reply