Trong quá trình phát triển phần mềm, việc viết mã nguồn dễ đọc, dễ hiểu là yếu tố then chốt để đảm bảo code có thể duy trì và mở rộng trong tương lai. Mặc dù việc viết code rõ ràng là điều quan trọng nhất, nhưng đôi khi chúng ta vẫn cần phải sử dụng comment để giải thích một số logic phức tạp, những quyết định thiết kế quan trọng, hoặc các chi tiết mà code không thể tự truyền đạt đầy đủ.
1. Hàm nên ngắn gọn và làm một việc duy nhất
Hãy cố gắng giữ số lượng dòng code trong một hàm không quá 20 dòng, trong trường hợp không thể làm được điều đó, hãy đảm bảo một hàm không có quá 100 dòng code, và mỗi dòng không có quá 150 ký tự.
Để có thể giữ được nội dung của hàm đủ nhỏ, chúng ta cần tách hàm lớn thành những hàm nhỏ hơn để gọi, và để dễ đọc, những hàm nhỏ hơn đó chỉ nên thực hiện một việc duy nhất.
Ta có ví dụ sau:
Hàm sau sẽ gây khó đọc và khó bảo trì khi thực hiện nhiều chức năng một lúc. Giải pháp ở đây là nên chia nhỏ mỗi hàm cho một chức năng riêng:
Sau khi chia nhỏ 1 hàm, hàm sẽ trở nên dễ đọc, bảo trì hơn.
2. Sử dụng tham số hợp lý
Để giảm bớt số lượng tham số truyền vào hàm, chúng ta có thể nhóm các tham số thành một lớp, và truyền vào đối tượng của lớp đó thay vì truyền vào các tham số một cách rời rạc. Không nên sử dụng tham số để điều khiển logic của hàm, thay vào đó, hãy tách thành hàm đó thành những hàm khác nhau để thực thi từng công việc cụ thể.
Ta có ví dụ sau:
Sử dụng quá nhiều tham số như trong hàm có thể gây ra nhiều tác hại cho mã nguồn, đặc biệt là về mặt khả năng đọc, bảo trì, và phát triển lâu dài. Ta có thể xử lý như sau:
Sửa theo cách biến tham số thành một đối tượng làm cho mã dễ đọc, dễ hiểu và dễ bảo trì hơn.
3. Chữ ký của hàm thể hiện được nội dung cần thực thi
Hàm viết ngắn gọn sẽ giúp người đọc nhanh chóng hiểu được logic của hàm. Nhưng sẽ còn tốt hơn nếu chỉ cần nhìn vào chữ ký của hàm, người đọc có thể đoán được các bước mà hàm sẽ thực thi.
Ta có ví dụ sau:
Nhìn vào chữ ký hàm sau ta không hiểu tác dụng của hàm cũng như các tham số truyền vào. Thay vào đó ta nên để như sau:
Từ đây người đọc có thể dễ dàng hình dung ra tác dụng của hàm cũng như các tham số.
Kết luận
Nguyên tắc viết hàm trong Clean Code tập trung vào việc tạo ra các hàm ngắn gọn, rõ ràng và dễ hiểu nhằm nâng cao chất lượng mã nguồn và tính dễ bảo trì của phần mềm. Theo đó, mỗi hàm nên có một mục đích duy nhất, thực hiện một công việc cụ thể và được đặt tên phản ánh đúng chức năng của nó. Các hàm cần tránh sự phức tạp, nên hạn chế sử dụng quá nhiều tham số và chỉ nên trả về một kết quả duy nhất.