Alan Hou的个人博客

Magento的基本结构

Magento是一套强大的网站系统,通过模块结构增强了其灵活性,但同时也增加了学习的复杂性,全新安装的Magento系统就有至少3万个文件和120多万行代码。刚刚接触的话可能会望而生畏,下面让我们来了解一下其基本框架和结构。

Magento的基石-Zend框架

Magento是一套建立在Zend框架基础上的一套面向对象的PHP框架,当前的Zend框架Zend Framework 2(简称ZF2)是一广为使用的开源框架,全部采用了面向对象的思想及MVC模式(Model-View-Controller进行开发。Magento的前身Varien在开发这套网站系统中因其具备了如下几个组件而决定采用Zend框架:

Zend_Cache
Zend_Acl
Zend_Locale
Zend_DB
Zend_Pdf
Zend_Currency
Zend_Date
Zend_Soap
Zend_Http

Magento总共使用了约15个Zend组件,Varien库也直接继承了前面所提到的一些Zend组件,如Varien_Cache_Core继承了Zend_Cache_Core。使用Zend框架,使得Magento具备了可维护性、可升级性以及灵活性。可访问http://framework.zend.com/了解更多有关Zend框架的知识。

Magento的目录结构

Magento的目录结构与其它使用MVC模式的应用程序略有不同,下面就让我们来看看各目录及其功能:

Magento是一套基本模块(Module)的系统,这就意味着包含其核心文件在内的应用程序都是由一个个小的模块组成的。因而目录结构对于组织各模块就起着至关重要的作用,一个典型的的Magento模块结构如下:

各模块目录的作用说明

在后面的学习中我们会看到Magento强烈依赖于工厂名(factory name)和工厂方法(factory method), 这也是为什么目录结构如此重要。

下一节我们来一起了解一下模块结构和代码池的相关知识。

退出移动版