Magento 2 DI best practice
สมมติว่าฉันกำลังสร้างส่วนเสริม Magento 2 ที่ทำได้ .... ก็ดี ... ไม่สำคัญ สมมติว่ามันทำสิ่งที่ยอดเยี่ยมที่สุด แต่ฉันต้องการตรวจสอบให้แน่ใจว่านี่คือการสร้างโดยใช้มาตรฐานที่เหมาะสมเพื่อให้นักพัฒนารายอื่นสามารถขยายได้ เมื่อใดที่ฉันควรใช้ DI ร่วมกับส่วนต่อประสานและเมื่อใดที่ฉันไม่ควรใช้ เพื่อให้ชัดเจนนี่คือตัวอย่างหลัก ชั้นเรียนMagento\Core\Helper\Dataมีตัวสร้างเช่นนี้: public function __construct( \Magento\Framework\App\Helper\Context $context, \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig, \Magento\Store\Model\StoreManagerInterface $storeManager, \Magento\Framework\App\State $appState, PriceCurrencyInterface $priceCurrency, $dbCompatibleMode = true ) { parent::__construct($context); $this->_scopeConfig = $scopeConfig; $this->_storeManager = $storeManager; $this->_appState = $appState; $this->_dbCompatibleMode = $dbCompatibleMode; $this->_priceCurrency = $priceCurrency; } …