Tôi nghĩ việc viết code không khó nhưng để có một đoạn code đẹp, chúng ta phải chau chuốt rất nhiều. Và bạn có biết, thời gian để code thực chất ít hơn rất nhiều với thời gian đọc code, tỉ lệ có thể là 1 vs 10. Nếu như chúng ta code không có tâm, code bừa, code cho xong thì bạn sẽ thấy ảnh hưởng rất lớn. Thứ nhất, ban đầu có thể bạn sẽ thấy tiến độ dự án nhanh đó, nhưng một thời gian sau với những đống shit bạn đã code thì sẽ kéo hiệu suất của dự án xuống. Và càng ngày, chúng ta càng có nhiều bugs, càng ngày hiệu suất làm việc càng thấp, hơn nữa mỗi khi thêm những chức năng mới, code càng rối và càng bị bugs. Thứ hai, nếu bạn code bừa thì sẽ khó khăn do những người phía sau của bạn, khi bạn không còn làm ở dự án đó, những hậu bối sẽ bị chết ngộp bởi những đống shit của bạn.
Hãy tự hỏi bạn đang dành thời gian nhiều cho viết code hay đọc code? Bạn có thể nói rằng, à, tôi là một lập trình viên, công việc thường ngày của tôi là viết code. Ố ồ, thực vậy chứ? Hay công việc thường ngày của bạn là đọc code?
Hãy viết code và sau đó đưa đồng nghiệp của bạn review và bạn nhận được câu What The Fuck bao nhiêu lần nào? Hãy code và quan tâm tới những người đọc code của bạn và coi họ như chủ nợ của bạn, cho họ địa chỉ nhà và đưa code của bạn cho họ đọc. Liệu họ có đến nhà bạn, chém bạn sau khi đọc xong đống shit đó. 🙂
Cho nên theo tôi code đẹp là code có thể đọc. Việc đọc và hiểu những legacy code của bạn cực kỳ quan trọng. Và hãy tạo ra những luật chơi cho team của bạn, không có luật thì chúng ta có thể làm càng và mọi thứ sẽ rối loạn? Team bạn đã có luật chơi cho những developer chưa? Thực sự luật sẽ tạo ra tiêu chuẩn và chất lượng của code. Do đó, chúng ta cùng điểm qua một số cách để code dễ đọc hơn nhé.
Code theo một Style Guide
Style Guide là những nguyên tắc, quy chuẩn như cách đặt tên biến, tên file, cách tổ chức thư mục, cách tạo module, class, … Những hướng dẫn để code được đồng bộ hơn, những best practice, những việc cần làm và những việc cần tránh. Bạn có thể tham khảo một số style guide sau của Angular, Javascript, …
Đặt tên đúng ý nghĩa
Việc đặt tên cũng cực kỳ quan trọng. Chúng ta đặt tên mọi thứ trong dự án như, tên dự án, tên thư mục, tên file, tên biến, tên hàm, … Hãy cân nhắc và thảo luận cùng đồng nghiệp của bạn để chọn ra những tên ý nghĩa, đúng với chức năng của nó. Chọn tên có thể mất nhiều thời gian nhưng sẽ tiết kiệm thời gian đọc code.
Nhóm và sắp xếp các biến, hàm có trật tự trong một file
Tổ chức một file của bạn thật gọn gàng và sắp xếp ngăn nắp các biến, các hàm.
Viết những hàm ngắn hơn
Bạn hãy chia một hàm phức tạp thành nhiều hàm đơn giản hơn. Có thể một hàm khoảng 75 dòng. Nếu hàm của chúng ta quá dài, bạn có thể nghĩ hàm đó đang làm nhiều hơn một nhiệm vụ, có thể 2,3 nhiệm vụ. Hãy chia nhỏ chúng. Mỗi hàm chỉ nên làm một việc và mỗi file chỉ nên thuộc về một business.
Đặt tên đúng chính tả và đồng bộ với nhau
Lưu ý đến chính tả và đồng bộ của các biến, hàm. Hãy dùng cùng một tên để nói đến cùng một business.
Quy tắc 5 giây
Đọc một hàm trong 5 giây, nếu không hiểu nó có thể bạn sẽ xóa nó và viết lại. Và hàm đó có thể dài, có thể làm nhiều việc. Hãy viết lại nó. Nếu hàm quá dài, hãy abstract những hàm bên trong hàm lớn.
Định dạng code đẹp hơn, có thể như Prettier
Định dạng code với các khoảng cách, xuống dòng, tabs,… một cách đồng bộ. Code sẽ trông gọn gàng và dễ đọc hơn.
Sử dụng comment khôn ngoan hơn
Không dùng comment để giải thích đoạn code này là gì? Ví dụ //here is end of div, nên sử dụng khi giải thích tại sao lại làm cái này, hay giải thích một luồng dữ liệu.
Việc viết code dễ đọc sẽ giúp chúng ta dễ bảo trì code hơn, làm cho boss của bạn vui hơn :), cho những developer phía sau bạn, có thể cho bạn nữa có cuộc sống tươi sáng hơn. 🙂
Chúng ta sẽ cùng nhau tìm hiểu chi tiết hơn những giải pháp trên đây ở những bài sau nhé. Đón xem những bài đăng mới về Clean Code nhé.
Tham khảo: Ready for Readable code -John Papa
Hay qúa ad ơi 😀
Yeah