Để mở rộng một chút về tiêu đề, tôi đang cố gắng đưa ra một kết luận nào đó về việc có cần thiết hay không tuyên bố rõ ràng (tức là tiêm) các hàm thuần mà phụ thuộc vào một số chức năng hoặc lớp khác.
Đây có phải là một đoạn mã đã cho ít kiểm tra hơn hoặc được thiết kế tệ hơn nếu nó sử dụng các hàm thuần túy mà không yêu cầu chúng không? Tôi muốn để có được một kết luận về vấn đề này, cho bất kỳ loại chức năng tinh khiết từ đơn giản, chức năng có nguồn gốc (ví dụ max()
, min()
- bất kể ngôn ngữ) những phong tục, nhiều phức tạp mà lần lượt có thể ngầm phụ thuộc vào chức năng thuần túy khác.
Mối quan tâm thông thường là nếu một số mã chỉ sử dụng trực tiếp một phụ thuộc, bạn sẽ không thể kiểm tra nó một cách riêng lẻ, cụ thể là bạn sẽ kiểm tra cùng lúc tất cả những thứ mà bạn âm thầm mang theo bên mình. Nhưng điều này bổ sung khá nhiều nồi hơi nếu bạn phải thực hiện nó cho mọi chức năng nhỏ, vì vậy tôi tự hỏi liệu điều này có còn giữ cho các chức năng thuần túy không, và tại sao hoặc tại sao không.