作者:袁冠和堂 | 来源:互联网 | 2013-06-24 21:39
我们在进行项目开发过程中,有一个习惯就是重复使用现成的代码来避免编写新的代码。这样做并不是因为我们开发人员懒,而是因为重新使用已有的代码可以降低成本、增加代码的可靠性并提高它们的一致性。在理想的情况下,一个新的项目是这样创建的:它将已有的可重新的组件进行组合,并将新的开发难度降低到最小。
一、代码重用的必要性
1、节省项目开发和维护成本
在一项目的有效生命周期中,相当多的时间是用在维护、修改、测试和文档记录上,而不是最初花在编码上的时间。如果要编写商业代码,应该尽量限制结构中所用到的代码行数。一个最常用的方法就是:重新使用已有的代码,而不是为一个新任务编写一个和原来代码只有微小区别的新代码。更少的代码意味着更低的成本。如果市场上已经存在能够满足需求的软件,那就购买软件。购买已有软件的成本总是要小于开发一个等价产品的成本。如果有现成的软件基本上能够满足要求,那就必须小心地使用它。修改已有代码可能会比编写新代码更加困难。
2、可靠性更高
如果 一个模块代码已经在代码结构中使用了,可以认为这是已经通过测试的。即使代码只有几行,在重写时仍然可能忽略两方面的内容,一是原作者融入的其中的某些东西,二是代码测试发现缺陷后,对原代码添加的一些东西。使用现在的成熟的代码通常要比新鲜的“绿色”代码更可靠。
3、接口的一致性
系统的外部接口应该是一致的,其中包括用户接口和系统的外部接口。编写一段新代码的并且能够和系统函数的其他部分保持一致的代码需要花一些心思和努力。如果重复使用运行在系统其他部分的代码,所实现的功能自然就会达到一致。
除了这些优点外,只要原来的代码是模块化的而且编写良好,那么重复使用代码还会节省许多工作。在工作时,可以试辨认一下今后可能再次要调用的代码段。
二、使用require()和include()函数进行代码重用
PHP提供了两个非常简单却非常实用的语句,它们允许重新使用任何类型的代码。使用一条require()或include()语句,可以将一个文件载入到PHP脚本中。通常,这个文件可以包含任何希望在一个脚本中输入的内容,其中包括PHP语句、文本、HTML标记、PHP函数或PHP类。这些语句的工作方式类似于大多数Web服务器提供的服务器端包含方式以及C语言或C++中的#include语句。
require()和include()几乎是相同的。二者唯一的区别在于文件引用失败后,require()函数将给出一个致命错误。而include()只是给出一个警告。require()和include()也有两个变体函数,分别是require_once()和include_once()。使用过的朋友肯定知道,这两个函数的作用是确保一个包含(include)的文件只能被引入一次。
当使用require()和include()来引入函数库时,它们才非常有用。使用这两个函数可以防止错误的引入同样的函数库两次,从而出现重复定义的错误。如果关心编码实践,可以考虑使用require()和include(),因为它们的运行速度较快。