题
过去三个月,我一直在进入Magento。我几乎了解了应用程序/设计的一部分。但是现在,当我尝试研究模块开发时,这看起来像是一个非常可怕的部分。我已经浏览了模块开发基础知识的一些好文章,并且对此有了一些表面的了解,但是当我看到这样的代码时,我会变得空白。
public function viewAction()
{
if ($product = $this->_initProduct()) {
Mage::dispatchEvent('catalog_controller_product_view', array('product'=>$product));
if ($this->getRequest()->getParam('options')) {
$notice = $product->getTypeInstance(true)->getSpecifyOptionMessage();
Mage::getSingleton('catalog/session')->addNotice($notice);
}
Mage::getSingleton('catalog/session')->setLastViewedProductId($product->getId());
Mage::getModel('catalog/design')->applyDesign($product, Mage_Catalog_Model_Design::APPLY_FOR_PRODUCT);
$this->_initProductLayout($product);
$this->_initLayoutMessages('catalog/session');
$this->_initLayoutMessages('tag/session');
$this->_initLayoutMessages('checkout/session');
$this->renderLayout();
}
我对PHP有体面的知识。但是我对MVC框架没有太多了解。我应该继续研究模块开发,还是应该先学习Zend等MVC框架,然后来到Magento。该步骤真的需要吗?
解决方案
您将需要对OOP有一个很好的了解,也许对MVC的基本知识可能会派上用场。但是在这种情况下,我建议找到一本关于Magento编程的好书,以更好地了解其工作原理