Câu trả lời:
Chúng là những thứ rất khác nhau, thực sự. Để nói require B
có nghĩa là B
phải đến trước A
(và, do đó, có thể dẫn đến sự phụ thuộc vòng tròn nếu một cái gì đó B
bật ra require A
). Và nếu B
không được bao gồm trong tất cả, nó sẽ dẫn đến thiếu phụ thuộc lỗi.
Mặt khác, include B
chỉ cần nói B
sẽ được áp dụng bất cứ khi nào A
được áp dụng: nó không nói gì về trật tự giữa chúng.
Điều này chỉ được hỏi (và trả lời) trong danh sách gửi thư rối:
Sự khác biệt là rõ ràng khi danh mục cần phải được áp dụng. Với bao gồm, bạn đã đánh giá nội dung của nó tại thời điểm bao gồm - nhưng bất kỳ tài nguyên nào cũng phải được phụ thuộc một cách rõ ràng sau khi bao gồm. Với yêu cầu - sự phụ thuộc được tạo ra cho bạn - nhưng bạn phải cẩn thận và đảm bảo rằng đây là kết quả mong muốn của bạn
- Ken Barber trong Yêu cầu vs Bao gồm?
require B
thực sự có nghĩa làB
phải đến trướcA
?