Nếu bạn là lập trình viên, chắc chắn đã từng nghe đến khái niệm Clean Code và cuốn sách Clean Code của Robert Martin. Thậm chí, với nhiều người, đây là cuốn sách gối đầu giường không thể thiếu.
Trước đây, đã có nhiều bài dịch sách Clean Code sang tiếng Việt. Tuy nhiên, từ một góc độ nào đó, những bài dịch này vẫn còn phần chưa được mạch lạc và dễ hiểu. Trong loạt bài viết này, CodeTuTam sẽ giới thiệu chuỗi bài viết Clean Code dựa trên cuốn sách cùng tên của tác giả Robert Martin.
Nếu bạn có điều kiện, hãy mua sách để ủng hộ tác giả. Đọc sách bằng tiếng Anh cũng sẽ mang lại cho bạn một góc nhìn toàn diện hơn.
Cuốn sách này nói về vấn đề gì?
Clean Code, theo cách dịch nghĩa là "mã sạch". Đúng như tên gọi, nội dung cuốn sách xoay quanh việc chúng ta làm sao để viết mã sạch, dễ hiểu, dễ nâng cấp và bảo trì sau này.
Clean code khó hay dễ?
Cuốn sách đề cập đến nhiều vấn đề liên quan đến lập trình, bao gồm:
- Đặt tên ý nghĩa
- Cách viết hàm
- Cách viết comment
- Định dạng code
- Đối tượng và cấu trúc dữ liệu
- Xử lý lỗi
Trong loạt bài viết này, chúng ta sẽ đi vào các phần chính và cơ bản nhất. Điều này đảm bảo bất kỳ ai, dù mới học lập trình hay đã có kinh nghiệm, đều nhận được kiến thức cần thiết.
Các ví dụ trong cuốn sách được viết bằng Java. Vì vậy, nếu bạn có kiến thức về Java, sẽ dễ hiểu hơn về Clean Code. Tuy nhiên, nếu bạn không rành về Java, hãy yên tâm, mình sẽ cố gắng diễn giải sao cho dễ hiểu nhất có thể.
Clean Code có thực sự cần thiết?
Có nhiều ý kiến cho rằng Clean Code có thực sự cần thiết hay không. Một số người đồng ý và một số người phản đối. Đại loại, ý kiến phản đối là: "Viết code kiểu gì mà chẳng chạy được."
Điều này cũng hoàn toàn đúng, nhưng lại không phải lúc nào chúng ta cũng làm dự án mà chỉ làm một lần và không quay lại sau đó.
Đôi khi, chúng ta lại gặp vấn đề từ những dự án mà những người viết code trước đó đã cho rằng "code chỉ cần chạy thôi".
Sách Clean Code
Có rất nhiều lý do khiến chúng ta tạo ra mã nguồn không được sạch sẽ. Lý do phổ biến nhất là thiếu thời gian, áp lực từ quản lý, khách hàng hoặc "sửa sau".
Đúng như câu "sửa sau", chúng ta hiếm khi quay lại đoạn code mà mình đã viết, trừ khi buộc phải.
Tuy vậy, liệu bạn đã từng phải nâng cấp, bảo trì hoặc tối ưu lại đoạn code có sẵn và cảm thấy ngột ngạt khi nhìn vào đó? Và có lúc bạn thêm vào những đoạn code rác. Cuối cùng, bạn cảm thấy không thể phát triển dự án đó thêm nữa?
Đó chính là lúc bạn nhận ra tầm quan trọng của việc tạo ra mã nguồn sạch sẽ - Clean Code.
Tóm lại, Clean Code luôn cần thiết cho mọi chương trình. Dù chương trình đó bạn dự định chỉ sử dụng một lần, việc tạo ra mã nguồn sáng sủa cũng sẽ tạo ra thói quen quan trọng cho công việc của bạn sau này.
Clean Code không chỉ dành cho người mới bắt đầu
Đôi khi, có người nói rằng "Phải có kiến thức mới viết Clean Code được. Giờ chưa có kiến thức gì mà viết code sạch làm sao được". Nghe có lý nhưng mình hoàn toàn không đồng ý.
Tại sao chúng ta không thể bắt đầu từ sớm bằng việc viết code sạch sẽ và đẹp đẽ? Nếu thói quen hình thành sớm, dù sau này có muốn viết code lởm đi chăng nữa cũng khó đấy chứ!
Vậy nên, đừng băn khoăn nếu bạn mới học lập trình hay đã làm lâu rồi. Clean Code là điều cần thiết và không chỉ dành riêng cho ai. Hãy bắt đầu ngay từ bây giờ.
Ebook Clean Code tiếng Việt
Như đã đề cập từ đầu, trong loạt bài viết này, mình sẽ nói về một phần trong cuốn sách Clean Code bằng tiếng Việt. Mình sẽ cố gắng viết và diễn giải theo ý hiểu của mình để mọi người cùng nắm bắt ý tưởng. Tuy nhiên, nếu ai muốn tìm hiểu nội dung gốc, có thể tải sách theo đường link bên dưới:
Đừng ngại gửi nhận xét nếu có bất kỳ phần nào bạn chưa hiểu hoặc cần trợ giúp. Mình không đảm bảo giúp hoàn toàn, nhưng chắc chắn chúng ta có thể cùng nhau tiến bộ, vì sao không nhỉ?
Clean Code gồm có...
Chương 1: Tổng quan
- Tổng quan về Clean Code (phần 1)
- Tổng quan về Clean Code (phần 2)
Chương 2: Đặt tên
- Đặt tên trong Clean Code (phần 1)
- Đặt tên trong Clean Code (phần 2)
Chương 3: Function
- Function trong Clean Code (phần 1)
- Function trong Clean Code (phần 2)
Chúng ta sẽ tiếp tục bổ sung các bài viết liên quan. Hãy cùng theo dõi!
Tổng kết
Mình không có nhiều kinh nghiệm trong việc dịch sách, do đó không tránh khỏi những sai sót. Trong quá trình đọc và tìm hiểu, nếu có vấn đề gì, các bạn có thể góp ý để chúng ta cùng hoàn thiện.
Note: The original article contains images and links that are not present in the provided content. Make sure to include them appropriately.