这里切不说面向对象与面向过程的区别与好处。我想,一个东西的存在必定有它存在的价值。同样,在开发一个系统时,无论你选择哪一种方式来编写代码。只要运用的好,都能把这个系统做好。(这里暂不说什么可维护性,可重用性等的一些大家都知道的优点,因为这里主题并不是说这些)。
可是大家是否遇到过这样的公司。由于管理者是一个java技术出身的程序员,在你实施开发一个php系统的时候,项目本身的难度不大。可是最初的选型是采用面向对象的方式来编码。这对于长期使用过程编程的phper来说。一下子是很难以接受的。可是没有办法。你是下属,如果你不想被out 的话,只有服从,只能按照上级的指示意思去做。也许这里有些同仁遇到的是会听取意见,且乐于接受意见的负责人。这时你是愉快的!可是并不是所有人都是善于接受下属意见的。因为他会认为这样很没有面子,加上技术能力也没有他强。所以大家都这样闷头闷脑的按照面向对象的方式把代码写完了。
如果仔细去看这些代码是否会发现,每个文件虽然加上了一个"class",但是里面的方法还是按照过程式的那种做法一步一步用个函数封装起来实现的。这个时候的代码就是即不是面向过程也不是面向对象了。这就叫做"以面向对象之虚行而行面向过程之实".
那么这样的代码能怪程序员没有经验写的不好吗?不能怪。要怪就只能怪那个当时拍板的人。为什么不利用人家的优点,而硬要(qiangjian)人家的意识呢?其实笔者认为这潜在的说明:这个人本没有太多的编程经验。而又碍于面子,其实软件开发中最讲究的就是实在。不懂就是不懂,不懂没有关系,只要你肯学,肯接受。没有人会指责你的。一个团队是大家的,而不是一个人的。
可是大家是否遇到过这样的公司。由于管理者是一个java技术出身的程序员,在你实施开发一个php系统的时候,项目本身的难度不大。可是最初的选型是采用面向对象的方式来编码。这对于长期使用过程编程的phper来说。一下子是很难以接受的。可是没有办法。你是下属,如果你不想被out 的话,只有服从,只能按照上级的指示意思去做。也许这里有些同仁遇到的是会听取意见,且乐于接受意见的负责人。这时你是愉快的!可是并不是所有人都是善于接受下属意见的。因为他会认为这样很没有面子,加上技术能力也没有他强。所以大家都这样闷头闷脑的按照面向对象的方式把代码写完了。
如果仔细去看这些代码是否会发现,每个文件虽然加上了一个"class",但是里面的方法还是按照过程式的那种做法一步一步用个函数封装起来实现的。这个时候的代码就是即不是面向过程也不是面向对象了。这就叫做"以面向对象之虚行而行面向过程之实".
那么这样的代码能怪程序员没有经验写的不好吗?不能怪。要怪就只能怪那个当时拍板的人。为什么不利用人家的优点,而硬要(qiangjian)人家的意识呢?其实笔者认为这潜在的说明:这个人本没有太多的编程经验。而又碍于面子,其实软件开发中最讲究的就是实在。不懂就是不懂,不懂没有关系,只要你肯学,肯接受。没有人会指责你的。一个团队是大家的,而不是一个人的。