经验分享:PHP编程的5个良好习惯(三)

学习良好的编程习惯能够提高代码质量和效率。像其他语言一样,开发人员可以用 PHP 编写出各种质量级别的代码。根据具体的情况,一般的开发人员往往比优秀的开发人员的效率低 10%~20%。优秀的开发人员的效率更高,因为他们拥有丰富的经验和良好的编程习惯。不良的编程习惯将会影响到效率。本文通过展示一些良好的编程习惯,帮助您成为更优秀的程序员。

创新互联建站自2013年创立以来,先为宣化等服务建站,宣化等地企业,进行企业商务咨询服务。为宣化企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

接上一篇,经验分享:PHP编程的5个良好习惯(二)

5. 切忌使用复制粘贴

您可以从其他地方将代码复制粘贴到自己的代码编辑器,但这样做有利也有弊。好的一面是,从一个示例或模板中复制代码能够避免很多错误。不好的一面是,这容易带来大量的类似编程方式。

一定要注意,不要将代码从应用程序的一部分复制粘贴到另一部分。如果您采用这种方式,请停止这个不良的习惯,然后考虑将这段代码重写为可重用的。一般而言,将代码放置到一个地方便于日后的维护,因为这样只需在一个地方更改代码。

不良习惯:类似的代码段

清单 9 给出了几个几乎一样的方法,只是其中的值不同而已。有一些工具可以帮助找到复制粘贴过来的代码(参见 参考资料)。

清单 9. 不良习惯:类似的代码段

 
 
 
  1. /**  
  2. * Counts the number of messages found in the array of  
  3. * ResultMessage with the getSeverity() value of "Error"  
  4. * @param $messages An array of ResultMessage  
  5. * @return unknown_type  
  6. */ 
  7. function countErrors($messages)  
  8. {  
  9. $matchingCount = 0;  
  10. foreach($messages as $m) {  
  11. if ($m->getSeverity() == "Error") {  
  12. $matchingCount++;  
  13. }  
  14. }  
  15. return $matchingCount;  
  16. }  
  17. /**  
  18. * Counts the number of messages found in the array of  
  19. * ResultMessage with the getSeverity() value of "Warning"  
  20. *  
  21. * @param $messages An array of ResultMessage  
  22. * @return unknown_type  
  23. */ 
  24. function countWarnings($messages)  
  25. {  
  26. $matchingCount = 0;  
  27. foreach($messages as $m) {  
  28. if ($m->getSeverity() == "Warning") {  
  29. $matchingCount++;  
  30. }  
  31. }  
  32. return $matchingCount;  
  33. }  
  34. /**  
  35. * Counts the number of messages found in the array of  
  36. * ResultMessage with the getSeverity() value of "Information"  
  37. *  
  38. * @param $messages An array of ResultMessage  
  39. * @return unknown_type  
  40. */ 
  41. function countInformation($messages)  
  42. {  
  43. $matchingCount = 0;  
  44. foreach($messages as $m) {  
  45. if ($m->getSeverity() == "Information") {  
  46. $matchingCount++;  
  47. }  
  48. }  
  49. return $matchingCount;  
  50. }  
  51. $messages = array(new ResultMessage("Error", "This is an error!"),  
  52. new ResultMessage("Warning", "This is a warning!"),  
  53. new ResultMessage("Error", "This is another error!"));  
  54. $errs = countErrors($messages);  
  55. echo("There are " . $errs . " errors in the result.\n");  
  56. 63.?> 

复制代码良好习惯:带参数的可重用函数

清单 10 展示了修改后的代码,它将复制的代码放到一个方法中。另一个方法也进行了更改,它现在将任务委托给新的方法。构建通用的方法需要花时间设计,并且这样做使您能停下来思考,而不是本能地使用复制粘贴。但有必要进行更改时,对通用的方法投入的时间将得到回报。

清单 10. 良好习惯:带参数的可重用函数

 
 
 
  1. /*  
  2. * Counts the messages with the given severity in the array  
  3. * of messages.  
  4. * @param $messages An array of ResultMessage  
  5. * @return int Count of messages matching $withSeverity  
  6. */ 
  7. function countMessages($messages, $withSeverity)  
  8. {  
  9. $matchingCount = 0;  
  10. foreach($messages as $m) {  
  11. if ($m->getSeverity() == $withSeverity) {  
  12. $matchingCount++;  
  13. }  
  14. }  
  15. return $matchingCount;  
  16. }  
  17. /**  
  18. * Counts the number of messages found in the array of  
  19. * ResultMessage with the getSeverity() value of "Error"  
  20. * @param $messages An array of ResultMessage  
  21. * @return unknown_type  
  22. */ 
  23. function countErrors($messages)  
  24. {  
  25. return countMessages($messages, "Errors");  
  26. }  
  27. /**  
  28. * Counts the number of messages found in the array of  
  29. * ResultMessage with the getSeverity() value of "Warning"  
  30. * @param $messages An array of ResultMessage  
  31. * @return unknown_type  
  32. */ 
  33. function countWarnings($messages)  
  34. {  
  35. return countMessages($messages, "Warning");}  
  36. /**  
  37. * Counts the number of messages found in the array of  
  38. * ResultMessage with the getSeverity() value of "Warning"  
  39. *  
  40. * @param $messages An array of ResultMessage  
  41. * @return unknown_type  
  42. */ 
  43. function countInformation($messages)  
  44. {  
  45. return countMessages($messages, "Information");  
  46. }  
  47. $messages = array(new ResultMessage("Error", "This is an error!"),  
  48. new ResultMessage("Warning", "This is a warning!"),  
  49. new ResultMessage("Error", "This is another error!"));  
  50. $errs = countErrors($messages);  
  51. echo("There are " . $errs . " errors in the result.\n");  
  52. ?> 

结束语

如果您在编写 PHP 代码的过程中养成本文讨论的良好习惯,您将能够构建易读、易理解、易维护的代码。使用这种方式构建的易维护代码将降低调试、修复和扩展代码所面临的风险。

使用良好的名称和更短的方法能够提高代码的可读性。注释代码的目的有利于代码理解和扩展。适当地处理错误会使代码更加健壮。***,停止使用复制粘贴,保持代码干净,提高可重用性。

到这,五个良好的习惯都给大家介绍完了。希望对你有帮助。

名称栏目:经验分享:PHP编程的5个良好习惯(三)
分享地址:http://www.shufengxianlan.com/qtweb/news19/497269.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联