คำอธิบายที่ง่ายและชัดเจน (จากหลักสูตรพื้นฐาน Magento U):
การพึ่งพายาก
หมายความว่าโมดูลไม่สามารถทำงานได้หากไม่มีโมดูลอื่นที่ขึ้นอยู่กับโมดูลนั้น
ตัวอย่างของการอ้างอิงที่ยาก ได้แก่ :
- โมดูลมีรหัสที่ใช้ตรรกะโดยตรงจากโมดูลอื่น (อินสแตนซ์, ค่าคงที่คลาส, วิธีการคงที่, คุณสมบัติคลาสสาธารณะ, อินเตอร์เฟสและลักษณะ)
- โมดูลประกอบด้วยสตริงที่มีชื่อคลาสชื่อเมธอดค่าคงที่คลาสคุณสมบัติคลาสอินเทอร์เฟซและลักษณะจากโมดูลอื่น
- โมดูลจะลดขนาดวัตถุที่ประกาศในโมดูลอื่น
- โมดูลใช้หรือแก้ไขตารางฐานข้อมูลที่ใช้โดยโมดูลอื่น
Magento_AdminNotification
มีการพึ่งพายาก Magento_Store
นุ่มพึ่งพา
หมายความว่าโมดูลสามารถทำงานได้โดยไม่มีโมดูลอื่นที่ขึ้นอยู่กับมัน
ตัวอย่างของการขึ้นต่อกันแบบอ่อน ได้แก่ :
- โมดูลตรวจสอบความพร้อมใช้งานของโมดูลอื่นโดยตรง
- โมดูลขยายการกำหนดค่าของโมดูลอื่น
- โมดูลขยายเลย์เอาต์ของโมดูลอื่น
Magento_AdvancedPricingImportExport
มีการพึ่งพาซอฟต์Magento_CatalogImportExport
โค้ดแบบนี้:
if (!$model instanceof \Magento\CatalogImportExport\Model\Export\Product\Type\AbstractType) {
throw new \Magento\Framework\Exception\LocalizedException(
__(
'Entity type model must be an instance of'
. ' \Magento\CatalogImportExport\Model\Export\Product\Type\AbstractType'
)
);
}
หากโมดูลใช้รหัสจากโมดูลอื่นก็ควรประกาศการพึ่งพาอย่างชัดเจน
แก้ไข: เพิ่งสังเกตเห็นว่านี่เป็นคำอธิบายที่ชัดเจนในเอกสารอย่างเป็นทางการ: https://devdocs.magento.com/guides/v2.3/architecture/archi_perspectives/components/modules/mod_depend.html