组件,扩展和组件之间的区别是什么? Yii的模块

时间:2013-01-03 13:04:07

标签: yii yii-extensions yii-components

我是Yii框架的新手,刚刚遇到模块扩展程序&受保护文件夹内的组件

任何人都可以在理论上和实际上区分所有这些。

2 个答案:

答案 0 :(得分:44)

组件是可以帮助您根据模型编写业务逻辑的类。假设所有模型文件都使用相同的逻辑,那么逻辑可以写在组件内部而不是为每个控制器写入。

扩展程序类似于库,它们基本上不依赖于您的模型,因此可以在当前或以后的项目中的任何位置重复使用。例如,写任何电子邮件扩展名。

模块是一个独立的软件单元,由模型,视图,控制器和其他支持组件组成。在许多方面,模块类似于应用程序。主要区别在于模块不能单独部署,并且必须驻留在应用程序内部。用户可以像访问普通应用程序控制器一样访问模块中的控制器。

我希望它会对你有所帮助。

答案 1 :(得分:16)

在这里加我2美分......

组件

您想要使用的自己的类文件,仅针对此站点。示例包括上传应用程序中的zip压缩类,某些安全应用程序的自定义加密算法

<强>扩展

可重复使用的外部类文件或文件组,通常由第三方提供。例如你或其他人建立的facebook连接库,ebay.com的api库获取列表,rss阅读器库从谷歌等阅读。

模块

基于mini-yii的站点作为站点的一个子集,也可以在其他应用程序中重用,或者独立构建以使yii更加模块化。例如,一个独立于网站但只使用登录用户信息的论坛模块,一个用户身份验证模块,其中包含与openid,facebook和google等几个网站的集成