- Bài viết thảo luận về tính dễ đọc của mã tuyến tính, đồng thời đặt câu hỏi phản biện góc nhìn do Google Testing Blog đưa ra
- Tác giả không đồng ý với lập luận của Google Testing Blog rằng các hàm tách biệt theo mức độ trừu tượng sẽ dễ đọc hơn
- Tác giả cho rằng mã tuyến tính được đọc từ trên xuống dưới trực quan và dễ hiểu hơn so với mã liên tục qua lại giữa nhiều mức độ trừu tượng khác nhau
- Tác giả minh họa lập luận của mình bằng ví dụ về một hàm nướng pizza, đồng thời đặt câu hỏi liệu hàm nướng pizza có nên tự làm nóng lò hay lò phải được làm nóng trước
- Tác giả cho rằng tính dễ đọc của mã không đến từ cấu trúc tách biệt các mức độ trừu tượng, mà đến từ việc mỗi phần của mã giải thích rõ ràng nó làm gì
- Tác giả phản đối việc tách các hàm nhỏ ra khỏi mã tuyến tính, đặc biệt khi chúng chỉ được dùng một lần, và kết luận rằng lợi ích đó không bù đắp được cho việc mất đi tính tuyến tính
- Tác giả cũng chỉ ra vấn đề tiềm ẩn liên quan đến hàm nướng pizza, đặt câu hỏi vì sao mỗi lần làm pizza lại tạo một lò nướng mới, điều này có thể gây ra vấn đề hiệu năng trong mã thực tế
- Tác giả đề xuất rằng lò nướng nên là tham số của hàm và trách nhiệm cung cấp nó phải thuộc về bên gọi, đồng thời hàm nên trả về hộp thay vì pizza
1 bình luận
Ý kiến Hacker News