Techyou labs
真正的爱应该超越生命的长度、心灵的宽度、 灵魂的深度
常用标签
您正在查看:标签 编程方式 下的文章

若干年前,PHP5由面向过程转变为面向对象语言,在各个技术论坛上掀起了滔天大浪,很多人断言PHP自取灭亡,但不久之后尘埃落定,大部分人由不支持转向支持,PHP也由4.0时代被人戏称为小孩子的玩具,摇身一变而成为仅次于java和c的第三大语言。身处整个争论过程,我自以为对面向对象有了完整的认识,并逐渐开始全面采用面向对象方式编程,2008年以后,甚至开始只在zend framework框架下编写程序。
但最近数月的工作经历让我开始反省,我开始重新思索那个当年最著名的问题:“如果真的完全面向对象,我们何不直接使用JAVA?我们为什么需要两个 JAVA呢?”是的,用PHP,理由之一,就是我们不一定要面向对象。一切编程技术和编程理念都只是手段,用最短的时间达成客户需求,才是我们的目的所在,抛开这一目的而空谈任何技术,都无疑是错误的,一个很典型的例子,开源的论坛程序中,所有PHPER人人都推崇PHPBB,而对DISUCZ的代码技术含量嗤之以鼻,可是,真正建论坛的时候,我们谁用PHPBB了?国内的大半论坛,都是DISCUZ的。近两年多时间,我都拘泥于面向对象,而浪费了大量的时间,这是我犯下的一个严重错误。
所以,我决定重新梳理一下我对PHP编程的认识,以后在项目选型时可以选择更合适的架构而不是唯技术是从。欢迎大家拍砖。
一、函数的作用
时至今日,任何一个非计算机专业的朋友也都该学过一门计算机语言,在国内,通常是basic,如果足够幸运,也可能是C,分支语句和循环语句是其中的必修内容,而如果函数学得不好,估计马马虎虎,也就过去了。哪怕世上没有函数这种东西,程序一样可以完成所有的功能(天可怜见,最近几个月,我刚刚见识了这样一个项目)。
那么,我们要函数什么用呢?无数教科书告诉我们,是为了可复用性。是的,一个函数写完之后,下次用到同样功能,直接调用就可以了,不用再重新写一遍了,这是函数发明的本意和基本功能。可是,如果我们预计一个功能不那么常用,是不是就该不用函数了呢?不是的,哪怕是采用面向过程的编程方式,我们仍然要尽可能的使用函数,并尽可能的细分功能,为每个功能写一个独立的函数。采用函数编程,有以下几个明显的优点: