同感!我曾经用过在PHP中面向对象编程 这样的话代码量明显大于非OOP 但是速度不行 现在还用面向过程呢 据说PHP 5 全面支持面向对象变成 支持构造函数和析构函数等 估计速度能优化吧而且有一段时间很想用模板来写PHP 发现PHPLIB的模板有点慢 类里面有很多根本用不到的函数 我把代码精简了一下 大概能缩小到十分之一吧还可以还有我感觉注释特多也影响速度 象PHPLIB 注释量远大于代码 毕竟PHP是逐行解析的总之我感觉完成同一个功能只要代码行数越少 PHP运行的就越快
调试欢乐多
现在的PHP 5大大增强了OOP方面的功能,有点类似JAVA了.
还有www.11cn.org
的ctb在这方面做的不错。
速度很快。
函数越多,类越多,速度就要下降
这是很难避免的
生成一部分变化少的,浏览量大的html文件不错
即使全用php,也要注意使用cache特性
尽管面向对象的代码比面向过程的代码可能要大,加载时的伪编译时间可能要长些。但这都不能得出楼主的“速度明显OOP慢于非OOP”结论。
作为比较的对象应该是完成同一任务的最佳代码,否则你的结论肯定是错的。
比如你给我一个类,我以最菜的代码来改写(以运行速度慢于类为标准)。然后我告诉你,速度明显非OOP慢于OOP。你能信服吗?
网络程序开发,讲的是开发速度,维护,升级...oop可以生成静态页,非oop也可以生成静态页...
楼上反oop的选哪个?如果一谓的强调.php的下载...速度...那非oop快...
但真要是强调速度~~~谁会放弃.htm而用.php?
改为
oop比非oop慢?搞笑的可爱...
一个人早上起来需要穿上在众人面前展示一天的衣服,只穿一条内裤和穿内裤、T恤、长裤,哪个速度快呢?
但是在现在谁会选择前者呢?
OOP的出现首先不是为了超过OPP的速度,而是为了让所有程序员们(代码原形塑造者、二次开发人员、n次开发人员)更舒服,同时尽量在程序呈现给用户时不会被用户拒绝(用户可不管拉车的是光屁股牛还是穿马甲的牛,但不能是蜗牛)。考虑到效率的问题,C++标准中没有使用垃圾回收机制——内存反正会越来越大啊!Java使用了垃圾回收是因为它实在不能等内存“慢慢”提升了,呵呵。
OOP在复杂应用中的优势将会明显显现,就好象让我和罗那儿多比谁能把足球抱在手里与让我们比谁能把球踢进门里一样。OOP是建立在对应用高度抽象的基础上,占据一个制高点后向下部署或者寻找合适。
伴随硬件的升级,OOP与OPP的速度之争已经越来越不被关注了。垃圾的OOP代码比钻石的OPP代码运行慢可以理解吧...
OOP本来就强调代码的重用性。我曾经写一个class完成一个功能,后来我专门把class展开实现同样的功能,即把所有的function可能展开的都展开,速度确实比class要快,但是有谁会把差不多相同的代码重写n多次呢?
另外,编码人员的代码的质量也是问题哎:)cpu是为客户服务D,不是为程序员服务D
OOP给开发人员带来的解放不是一点半点啊,尤其现在懒的时候,随意到网上找个class用就行了,可是,如果是opp,就麻烦了……
大型网站开发当然需要OOP OPP结合啦,JAVA还有简单数据类型呢,不是狠纯粹呢。
速度慢一点,但是可维护性增加了,还是值得的
OP效率相对较高
楼上blueoxygen(氧气)说得有道理,cpu是为客户服务D,不是为程序员服务D能不能在开发的时候用OO。最后发布的时候用工具转换成OP。。
不就两全其美了么?不过好像没听说过有类似的东西
我现在基本上都用oop来写,当然对于一些小功能如果用函数更方面的话,我肯定也用非oop了。
不用OO,有的项目我根本没法做。产品规划到需求分析到产品设计没有OO的设计,怎么去实现代码??除此之外,我还是狂热的MVC迷。对我而言,JAVA有现成的MVC方案(框架),似乎还并不能让人感到激动;在PHP中,用OO去实现MVC,用MVC去实现项目,这是一件多么让人振奋的事情。这帖主题问的并不好。
一个技术存在并不只是用效率两次衡量的。从PO到OO,是程序员的解放,却是以程序运行效率的降低为代价的。OO的效率同样存在于JAVA——一个纯OO的语言——中,可没多少去谈JAVA的OO效率问题,为什么?因为你别无选择。这帖该怎么问?“PHP中的OO值不值得?”
写过大项目(尤其是按照正统软件工程一套下来)的,不言而喻。
用时间抱怨PHP的OO效率,不如花时间研究算法,斟酌结构,那还更有意义。
对于我,像我前面说的,失去了OO,一些项目无法下手。也许让一些人同意我的观点必须洋洋洒洒写篇论文,我想也没必要。当你接触了你就明白了,没有实践也许永远不能理解。回头说说MVC。这是我最近经常和人提起的一个关键字。
大部分人不已为然,有的也劝我“回头是岸”。而我并不非常在意代码的实现(但我很在意程序在同样实现下的效率),我最在意的是实现代码的思想,结构,方法,框架。可惜,似乎这方面有兴趣的朋友太少。包括CSDN也少人问津。
遗憾
刚刚留的帖子又丢掉了,csdn真的要好好修正一下服务器了。
这几天经常出现这个问题,很扫兴。很赞同楼上这位朋友的说法。看起来功力已是高一个台阶了。很好。
opp和oop又各自的应用场合,这就是具体对象,具体分析。脑筋讲的是灵活,什么时候才能看出来你灵活那?呵呵,就是闲着没事的时候再也不会在考虑“oop和opp那个更好”之类的问题。 对于我,像我前面说的,失去了OO,一些项目无法下手。也许让一些人同意我的观点必须洋洋洒洒写篇论文,我想也没必要。当你接触了你就明白了,没有实践也许永远不能理解。这句未免也太夸张了点。呵呵,opp出来在的时候,oop在那里那?oop也是在opp的基础上起来的,只是强调了重用和众所周知的oop的几个特性。那么,oop是最好的了吗?他是软件技术的最高点吗?谁敢肯定的下结论?呵呵,技术在不断发展,我们的眼界也要不断开阔。没有优何劣,有的 只是 选择!
现在头疼的是程序员和美工间的配合问题。
摘选一段,对错好坏自己分析:
个人认为,作为一个程序员,思想是必须要的。时刻关注业界信息,“升级”自己的思想由为重要。
以上的文字摘自http://www.uml.net.cn/OONext.htm
有兴趣的去看看,当长长见识也好。==============================================================================
[reply DSONet(大山) said] 对于我,像我前面说的,失去了OO,一些项目无法下手。也许让一些人同意我的观点必须洋洋洒洒写篇论文,我想也没必要。当你接触了你就明白了,没有实践也许永远不能理解。这句未免也太夸张了点。呵呵,opp出来在的时候,oop在那里那?oop也是在opp的基础上起来的,只是强调了重用和众所周知的oop的几个特性。[/reply]呵呵是有“夸张”。但“无从下手”也不是无能为力。
很难想象,现在去用面向过程再去开发大的项目是什么情形。恐怕只有“恐怖”二字吧?^^!
oop带来的冗余的代码会影响到php解释速度,毕竟php不是常驻内存的解释器。
每一个网页都要重新解释所有的类所有的函数【cgi方式】。
网页解释完进程就退出了,也许这是需要改进的地方。
想用类的话还是去jsp累去,java的类可是经典