我现在学习PHP已经差不多2个月了,现在我写了一个BLOG,BLOG中比较有用的,或是要用到的功能我都编写完了但是是面向过程的方式,我在网上找了很多牛人编写的PHP源码BLOG,比如typecho,这个BLOG程序是我一个哥给我说的,当时我准备开一个BLOG,他说这个BLOG程序很不错(PS:他比较牛嘛,他经常不在线也问不了问题,所以就到CSDN上面来问了。),我就下下来看了一下,看了一下源码。可以说是干净,简洁。再看我现在写的这BLOG程序,感觉自己写的代码就太麻烦了。所以我在校的时候就一直看其它BLOG源码,看他们怎么写的,但是他们的类方法太了,还有使用了MVC,有些地方都看不懂。有些地方调用,有些类封装很多东西,看得我头大。我自己也跟着他们写一些相同代码写写,学习了不少,但是我就是有点搞不明白这个面向对象的编写方式是按什么顺序写的。。我想提出以下问题,到底哪种比较接近正确的编写方式:
1.是不是也是先编写后台以及要使用到的类和方法,到后面在编写前台的时候调用共同的类方法。
2.是先设计类,再编写页面。
3.是先设计出静态页面,再编写类。如果我说得都不对的话,还请各位给我讲解一下。。谢谢了

解决方案 »

  1.   

    要理解面向对象,不要为了OO而OO。
    OO是思想。并不是页面和后台先后次序的问题。
    从PHP,JS 甚至CSS的语法到mvc的各层结构都有OO的影子。建议先试着学习掌握一种PHP框架。比如ZendFramework,有助于加深理解的。
      

  2.   

    很难,真的很难。
    我所见的人,能吹的很多,能写出拿得出手的OO 代码的则是凤毛零角。例如 
     针对接口编辑,而不针对应用编辑。
     为创意相互关联的对象之间的松耦合关系而努力
     多用组合,少用继续这些能背出来的人很多,能融合应用的人很少。
    有时候,我觉得OO 的设计是一种意境,很长的时间都在是思考如何组织类来解决某一领域的问题。如果要学习OO:
    建议楼主:
    可以选看 代码大全里面中的一章:可以工作的类。
    设计模式 head first 比较适合入门,水平高了点后建议看 gof.
      

  3.   

    OO这东西要掌握他的特性,封装,继承,多态
    而把这些特性融入到自己的代码中,要长时间的积累和总结,
    尝试着自己去写类,最起码的封装,把你要操作的东西尽量的封装成一个类,可以把一切皆看作对象,
    代码写多了,OO思想也会逐步建立.