用户名 密码 记住我 还未注册?

Xoops Engine (X3) 评测一 (目录浅析) [技术论坛 - Xoops Engine 专版]

XOOPS China 讨论区 > XOOPS Core (核心) > Xoops Engine 专版 > Xoops Engine (X3) 评测一 (目录浅析)

正在浏览: 



 到底部   前一个主题   下一个主题  [无发表权] 请登录或者注册



Xoops Engine (X3) 评测一 (目录浅析)
Support Team
注册日期:
2006/11/30 20:48
来自 beijing
所属群组:
网站管理员
注册会员
Dev+Hack
资料整理组
帖子: 1213 | 精华: 16
等级: 30; EXP: 32
HP: 146 / 733
MP: 404 / 11455
离线

 随着X3发布有些时日了, 在此对X3进行一些简单的评测.

首先要说明的是X3 需要php5.3+, apache mod_rewrite模块必须开启

可以从sourceforge上获得最新的版本

http://xoops.svn.sourceforge.net/viewvc/xoops/XoopsEngine/

点击Download GNU tarball就可以打包下载了.很奇怪的是sf进行了两次压缩, 下载包是8.07M, 解压第一次是37.4M(好大的一个包),解压第二次以后就是最终的代码了大小33.7M占用空间43.7M(好奇怪).

打开目录以后有4个目录和一个文档:

 

其中docs中是发布文档,  其中包括了X3的特性图,以及开发日志等文件. htdocs依旧是可以被访问的网站主程序, xoops_data和xoops_lib在先前的版本中是放在了htdocs在安装的时候建议放到该目录外,  X3这次在初始的情况下就放到了htdocs外面这样减少了安装配置的步骤又保证了安全.  xoops_data依旧是各种配置文件和缓存的目录,而这次发布的程序xoops_lib才是真正的核心, 不像以往那样形同虚设.

xoops_lib仅仅这个目录就有25.5M,目录结构如下:

apps 是X3 另外一种模块机制, 基于Zend Framework 的 application, 完全MVC结构的开发方式, 我们管它叫应用, X3的后台管理部分被完全重新设计, 采用了app模式, 除此之外还有用户模块也从内核中剥离开仍是使用app模式, 这个目录中还有其他一些应用, 这无疑是为广大开发者做了大量的实例供我们学习和研究.要想上手做应用那就研究这个里面的原生应用吧!

boot 启动文件的配置目录, X3的另一特性就是多站点功能, 多个站点可以同用一套程序, 每个站点就在这里建立一个配置程序, 这就像是apache 建立虚拟主机一样.

plugins 除了原有的模块和新的应用可以对XOOPS进行纵向扩展外, X3还提供了横向扩展的机制--插件, 插件是XOOPS中提供的功能接口, 全站任何模块都可以调用, 不但可以提升开发效率与模块与XOOPS的完美结合, 还可以方便的对其功能进行二次开发和加入第三方的插件. 原来的评论/通知已经从核心中剥离出来做成了插件, 通过跟D.J. 的交谈, 以后还会把tag和评分等实用功能也做成插件. 

Smarty 这个是模板引擎的原始包, 此次发布采用了最新的Smarty 3

Xoops X3 的核心目录, 以后做XOOPS开发一定要好好研习才行

Zend X3的底层实现了多框架的机制, 除了保留了原有2.3以后的框架外还选择了最先进的Zend Framework, 这个目录就是ZF的原始包. 喜欢其他框架的同学可以不必纠结, 多框架机制不仅限于这两个, 以后还可以其他框架放进来, 如Yii, 什么的.

.htaccess apache的配置文件,其作用就是这个目录不允许从web 直接访问, 增加安全性.

Xoops.php X3的工厂类, 在这里载入配置文件, 配置启动项等等初始化工作, 具体的以后再说...

这几个目录搞清楚了就好办了, 看了一下 Smarty和Zend 目录加起来就23.1M, 看来不是X3自身臃肿, 而是第三方类库比较站地方.

刚才说过Xoops这个目录是X3最最核心的部分, 那我们看看这个里面是什么:

Api 这个还没有太深的研究看样子是XOOPS对外的接口

Compat 兼容程序的目录, 目前这个目录下仅仅有一个Logger.php的文件, 这个文件是对老系统中运行日志功能的兼容, 在X3 中重新设计了运行日志这个功能, 所以为了兼容2.X系列模块做了这个兼容程序.

Core 新的内核就在这了, 2.x系列的内核叫kernel 很linux的叫法保存在htdocs中, 新内核这个名字很Apple嘛...

Model 这个应该是X3主程序的核心模型, 就是MVC里面的M

Plugin 插件机制的抽象类库 

Service X3的另外一个特性服务机制, 这里面就是服务机制的主要程序所在

Smarty X3对smarty进行了大量的扩展来满足整个平台的应用, 这个目录是有关X3架构的部分, 继承自外部的Smarty原始包, 这样分离开更易于维护.

Zend 同Smarty目录一样, Zend 扩展包, 有关X3与Zend结合就在这里了, 我们所用的Zend Framework中的方法并不是直接使用原始包中的, 而是调用这个扩展包中的.如果按层次划分由低至高是表示更接近用户的话, Zend原始包是1层, 这个Zend扩展包是2层.

Engine.php 这个是内核的初始化文件,把整个底层系统组装起来就靠这了.

最核心的一些目录就介绍到这, 在以后的评测中我们安装职能分部讲解.

现在我们回到根目录htdocs中看看,

其中多了两个目录apps和xoops_img,

apps 这个目录主要放应用实例的配置文件, 作为X3中对于模块方面的新特性之一的是模块克隆, 这个功能解决了困扰Xoopser的一个大问题, 原生支持模块克隆, 克隆的模块支持类似虚拟主机一样生成一套配置文件, 这样保证了程序的唯一性, 又能提供个性化定制.

xoops_img 持久化数据存放目录, 作为web程序部署, 提升性能的方法之一就是把持久化数据与逻辑数据以及数据库分别部署, X3另外一大特性就是支持分布式部署, 这样对付大规模应用的时候能有一个完美的解决方案, 在安装的时候就可以通过填写配置参数就可以把这个目录轻松的部署到其他位置.

今天就介绍到这里, 欢迎大家与我一起探索X3.


2010/11/21 4:16
工具箱 短消息 Email PDF 书签 打印 举报 回顶部


回复: Xoops Engine (X3) 评测一 (目录浅析)
新进会员
注册日期:
2009/8/16 22:35
来自 北京
所属群组:
注册会员
帖子: 19
等级: 3; EXP: 9
HP: 0 / 52
MP: 6 / 402
离线
评测的很详细
晚上我也花了一些时间看了下X3的结构
觉得结构更清晰了
1、把老版本默认安装的system模块整合到了系统中
2、不需要再安装克隆模块就可快速的对模块进行克隆
3、在管理界面可以对theme主题模板进行选择管理
4、toolkit(工具包)增加了很多功能 对网站维护人员来说绝对是个亮点
5、权限管理功能的提升对网站管理人员处理多用户的权限设置更灵活、更便捷

粗略的看了看就觉得新版本有很多值得去感受的地方 真希望能快点见到X3的本地化版本

附件:



png  xoengineSystem.png (21.40 KB)
21402_4ce84098ed14e.png 343X1571 px

2010/11/21 5:41
工具箱 短消息 Email PDF 书签 打印 举报 回顶部


回复: Xoops Engine (X3) 评测一 (目录浅析)
资深会员
注册日期:
2008/3/16 18:35
来自 山东 青岛
所属群组:
注册会员
帖子: 294 | 精华: 1
等级: 16; EXP: 3
HP: 0 / 375
MP: 98 / 4454
离线
好啊 好啊
多来点这个 呵呵

2010/11/21 11:00
工具箱 短消息 Email PDF 书签 打印 举报 回顶部


回复: Xoops Engine (X3) 评测一 (目录浅析)
Support Team
注册日期:
2005/4/30 13:09
来自 安徽安庆
所属群组:
网站管理员
帖子: 518 | 精华: 3
等级: 20; EXP: 97
HP: 0 / 499
MP: 172 / 10131
离线
我比较担心的是Xoops Engine (X3) 效率,Zend 是第三方框架,作为开发者,如果能够熟悉运用Zend 就不太需要用xoops了,直接在Zend 基础开发,这样效率可能会高些。做为应用者使用的话,xoops的设计可能需要更人性化,更美观,至少在用户体验上应不逊于Discuz,Xoops Engine (X3)所以这个平台的速度却又是很关键。Discuz 的代码完全为应用而应用,在代码上安全性,扩展性等考虑不多,但因其纯粹为了应用而写,查询数,效率却又是很高。
在wokai,艾毅,以及我现在手上的网站都是以前老的xoops 3.0dev 的开发模式,稍加改正的话,加入缓存,静态化,url重写,貌似也能达到Xoops Engine (X3)的部分功能,至少xoops_lib部分是当初Skalpa为xoops 量身制作的。
在xoops 开发中可能部分页面如ajax页,静态化页,只要调用 common.php前面部分代码(session和用户判断),我看了下,Xoops Engine (X3)的思路应该和以前大概差不多,也就是无论什么页面必须都要调用zend 那个框架,不知道会不会影响速度。
等Xoops Engine (X3) 出来好好研究。

2010/11/21 11:34
工具箱 短消息 Email PDF 书签 打印 举报 回顶部


回复: Xoops Engine (X3) 评测一 (目录浅析)
Support Team
注册日期:
2006/11/30 20:48
来自 beijing
所属群组:
网站管理员
注册会员
Dev+Hack
资料整理组
帖子: 1213 | 精华: 16
等级: 30; EXP: 32
HP: 146 / 733
MP: 404 / 11455
离线
引用:
agl 写道:
我比较担心的是Xoops Engine (X3) 效率,Zend 是第三方框架,作为开发者,如果能够熟悉运用Zend 就不太需要用xoops了,直接在Zend 基础开发,这样效率可能会高些。做为应用者使用的话,xoops的设计可能需要更人性化,更美观,至少在用户体验上应不逊于Discuz,Xoops Engine (X3)所以这个平台的速度却又是很关键。Discuz 的代码完全为应用而应用,在代码上安全性,扩展性等考虑不多,但因其纯粹为了应用而写,查询数,效率却又是很高。
在wokai,艾毅,以及我现在手上的网站都是以前老的xoops 3.0dev 的开发模式,稍加改正的话,加入缓存,静态化,url重写,貌似也能达到Xoops Engine (X3)的部分功能,至少xoops_lib部分是当初Skalpa为xoops 量身制作的。
在xoops 开发中可能部分页面如ajax页,静态化页,只要调用 common.php前面部分代码(session和用户判断),我看了下,Xoops Engine (X3)的思路应该和以前大概差不多,也就是无论什么页面必须都要调用zend 那个框架,不知道会不会影响速度。
等Xoops Engine (X3) 出来好好研究。

至于效率问题, D.J.在做优化而且效果显著.
zend framework 只不过是类似pear的类库, 还是不能直接应用, 换句话说熟悉zend framework的人都可以是Xoops的开发人员, 这样无疑是降低了门槛.
作为应用者X3还是要有很多路要走, Discuz是个不错的产品也有很多值得学习的地方.
现在就可以开始研究X3了, 此X3非彼X3.

2010/11/21 14:17
工具箱 短消息 Email PDF 书签 打印 举报 回顶部


回复: Xoops Engine (X3) 评测一 (目录浅析)
高级会员
注册日期:
2009/2/11 16:36
来自 北京
所属群组:
注册会员
帖子: 88
等级: 8; EXP: 35
HP: 0 / 183
MP: 29 / 1689
离线
支持!

2010/11/21 16:18
工具箱 短消息 Email PDF 书签 打印 举报 回顶部


回复: Xoops Engine (X3) 评测一 (目录浅析)
资深会员
注册日期:
2007/4/19 23:14
所属群组:
注册会员
帖子: 174
等级: 12; EXP: 24
HP: 0 / 281
MP: 58 / 4078
离线
不玩2.5了,等X3出来吧

2010/11/21 17:45
工具箱 短消息 Email PDF 书签 打印 举报 回顶部


回复: Xoops Engine (X3) 评测一 (目录浅析)
初级会员
注册日期:
2010/9/10 9:18
来自 上海
所属群组:
注册会员
帖子: 30
等级: 4; EXP: 22
HP: 0 / 80
MP: 10 / 369
离线
需要php5.3+, apache mod_rewrite模块必须开启
我的空间不支持啊-. -!空间服务商不给力啊.只能现在本地学习学习了

2011/6/15 23:41
工具箱 短消息 Email PDF 书签 打印 举报 回顶部



  [无发表权] 请登录或者注册


可以查看帖子。
不可发帖。
不可回复。
不可编辑自己的帖子。
不可删除自己的帖子。
不可发起投票调查。
不可在投票调查中投票。
不可上传附件。
不可不经审核直接发帖。
不可使用主题类别。
不可使用HTML语法。
不可使用签名档。

[高级搜索]