查看: 6368|回复: 1
打印 上一主题 下一主题

Discuz为何OO程度不高?

[复制链接]
跳转到指定楼层
1#
发表于 2008-3-31 15:50:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
台州网址导航
经常有人提问,为什么Discuz这样的一个成功的产品,却不是OO编程的典范?

下以分析仅从个人的经验下手,希望与大家共同探讨。

一个产品要不要很高的OO度,有时并不仅仅要往内看,还要往外看,要看它的类似系列的数量。如果戴要开发十个论坛系统,比如叫dvbbs, phpwind等等,这些产品有一定的相似度,但相互差别也不小。那么肯定是越高OO度越好。

原理可以这样看:
假设我们未来一年有12个相互关联的产品,每个单独开发需时约一个月,这样总共要一年。但是,如果一开始就着眼共用性,尽可能用OO,那么第一个产品可能会延长到第三个月,第二个要两个月,第三个一个月,剩下的九个都是十天,即共三个月。这样算下来,十二个产品只需九个月。

当然,这只是一个理想的状态下,我们预知这个些产品的相互共用性很强,而每个产品的需求都很明确很固定的情况下,才有意义。但现实中,尤其是网站产品,我们根本无法知道有没有下一个类似的产品,甚至第一个产品的需求到底到哪里,都无法确定,甚至是永远的Beta版。这种情况下,更多面向过程的,甚至RoR方式的开发,也许更适合我们。

这种完成一个算一个,先看看效果再说的方式,并没什么不合理的。也许我们的一个产品花了一个月时间,只实现很简单的功能。但是,我们毕竟看到了一个产品的现实模样了。第二个产品,在第一个的基础上,加上OO程度的提高,也是一个月,但在功能上比上一个大大提高。这样,十二个产品下来,也是一年时间,但最后一个产品的OO程度,以及产品功能,都是比前面两种开发方式要高的。

更重要的是,这种方式更能让小的开发团队有能力走得下去。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
2#
 楼主| 发表于 2008-3-31 15:50:12 | 只看该作者
台州网址导航
如果仔细看过discuz的源代码就发现,他不用oop最大原因是兼容和代码执行效率。
discuz的代码里很多地方都甚至考虑了php4.1以下的版本,而oop是php4才引进的,效率也相当之差,而且薄如蝉翼。
当然楼主说的也是一个方面的原因。
PS:discuz的源代码不是让人看懂,而是让人看晕,没有任何代码的规范性可言,简直像一个小学生的作业本,字迹之潦草,让人惨不忍睹,尽管最终的答案是正确的。
如果要看源代码来提高自己的水平,可以选择phpwind的论坛程序
还有wordpress,可以提高自己的oop、整体设计和整体把握能力。
vbb的也值得推荐。
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

网站推广
关于我们
  • 台州朗动科技(Tzweb.com)拥有多年开发网站平台系统门户手机客户端等业务的成功经验。主要从事:政企网站,系统平台,微信公众号,各类小程序,手机APP客户端,浙里办微应用,浙政钉微应用、主机域名、虚拟空间、后期维护等服务,满足不同企业公司的需求,是台州地区领先的网络技术服务商!

Hi,扫描关注我

Copyright © 2005-2026 站长论坛 All rights reserved

Powered by 站长论坛 with TZWEB Update Techonolgy Support

快速回复 返回顶部 返回列表