小I 发表于 2007-2-23 12:58

PHP面向对象?

学PHP有些时候了,有点疑问,和大家讨论下:




PHP支持class
但PHP真的适合面向对象吗?
我认为在简单系统中
用面向过程要比面向对象好
而PHP网站逻辑一般都是较为简单的
(能用PHP开发的大多功能要求较简单,复杂了,PHP做不到,做到了也太免强)


PHP只是服务器上被解释的语言,最终产生HTML
对象的生存时间也就只是限在被解释时
而且绝大多数时候的类都只有一个实例
从开发角度来看
我只能看到面向对象带来的好处是读代码比不面向对象时快一点





另:考虑下面这种情况:

    DB.class.php含有DB类,
   方法有:query   
               fetch_data   
               simple_fetch_data
            ....

   很多时候,只是用了一两个方法,比如用户登陆时,只用query 和 simple_fetch_data(返回一行结果)
   但是源代码上去要把整个DB.class.php   require进去
   这时候,PHP解释器是不是要浪费一些时间去扫一遍整个 DB.class.php 里的内容
   这里是不是浪费了一些系统资源?这些浪费是不是微不足道(在大系统里)?



我的想法是,PHP开发时不用追求纯粹的面向对象

lyhiving 发表于 2007-2-23 13:12

可以这么说:
面向对象是php回归正统的一个重要的标志

另外

所谓“(能用PHP开发的大多功能要求较简单,复杂了,PHP做不到,做到了也太免强)”

其实是不正确的。目前没有发现有什么是php做不到的,只是途径跟办法的问题。yahoo整个都是基于php搭建的,还有其他很多网站也是。

php是世界上使用得最广泛的语言之一,这个使得php被ms重视,前些日子双方已经签约会使得php在iis上结合得像asp.net一样的好

另外,说到include文件,在目前一般的服务器而言,i/o读取几个到几十个的文件不足为奇,而且是用时才产生作用,没有将include想像得太严重。所谓很健壮的java还不是一样,当用到对象时一样是include差不多大小和数量的文件的

bananapro 发表于 2007-2-25 09:41

PHP功能很强大的,问你是你怎样用,我想面向对象最大的好处是模块分离,代码重用和维护,还有就是易于表达实现,而不是主要体现在性能上

而正如楼上所说,yahoo还有百度等大网站都是使用PHP的,如果是位于Linux系统下性能会有飞跃,再加上其实现在的网站全部都是静态缓存,并不是每次打开页面都要运行程序的,性能方面由此提升

楼主学PHP是不错的选择,真的,中国渐渐也在普及,不过希望能够坚持走下去,搞好项目实践,无量哦~~~~

crab 发表于 2007-2-27 11:37

支持楼上!
我也一直在搞PHP,个人眼光还是挺看好的,

小I 发表于 2007-3-2 09:41

看来对PHP了解还太浅....


PS:
各位做AJAX都是用现成的框架吗?

黯然销魂 发表于 2007-3-4 01:39

oop嘀好处...1. 代码重用. 2 封装性.

我觉得最重要的一点...

3. 可维护性相当高.
页: [1]
查看完整版本: PHP面向对象?