您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 编写PHP代码的过程中养成的良好习惯
编写PHP代码的过程中养成的良好习惯根据具体的情况,一般的开发人员往往比优秀的开发人员的效率低10%~20%。优秀的开发人员的效率更高,因为他们拥有丰富的经验和良好的编程习惯。不良的编程习惯将会影响到效率。本文通过展示一些良好的编程习惯,帮助您成为更优秀的程序员。这些良好的编程习惯不仅能提高效率,还能让您编写出在应用程序的整个生命周期中易于维护的代码。编写出来的代码可能需要大量的维护;应用程序的维护是一笔很大的开支。养成良好的编程习惯能够提高设计质量(比如模块化),从而使代码更加容易理解,因此维护就更加容易,同时也降低维护成本。不良的编程习惯会造成代码缺陷,使其难以维护和修改,并且很可能在修改时又引入其他缺陷。以下是5个良好的编程习惯,能够帮助PHP代码避免这些缺陷:◆使用良好的命名。◆分成更小的部分。◆为代码添加注释。◆处理错误条件。◆切忌使用复制粘贴。下面将详细介绍这些习惯:使用良好的命名使用良好的命名是最重要的编程习惯,因为描述性强的名称让代码更加容易阅读和理解。代码是否好理解取决于是否能在未来维护它。即便代码不带有注释,如果它很容易理解,将大大方便日后的更改。这个习惯的目标是让您编写的代码像书本一样容易阅读和理解。不良习惯:含糊的或无意义的名称清单1中的代码包含过短的变量名、难以辨认的缩写词,并且方法名不能反映该方法的功能。如果方法名给人的感觉是它应该做这件事情,而实际中它却做另外的事情,这将带来严重的问题,因为它会误导人。清单1.不良习惯:含糊的或无意义的名称?phpfunctiongetNBDay($d){switch($d){case5:case6:case7:return1;default:return($d+1);}}$day=5;$nextDay=getNBDay($day);echo(”Nextdayis:”.$nextDay.“n”);?良好习惯:说明性强并且简洁的名称清单2中的代码体现了良好的编程习惯。新的方法名具有很强的说明性,反映了方法的用途。同样,更改后的变量名也更具说明性。惟一的保持最短的变量是$i,在本清单中,它是一个循环变量。尽管很多人不赞同使用过短的名称,但在循环变量中使用还是可以接受的(甚至有好处),因为它明确表明了代码的功能。清单2.良好习惯:说明性强并且简洁的名称?phpdefine(’MONDAY’,1);define(’TUESDAY’,2);define(’WEDNESDAY’,3);define(’THURSDAY’,4);define(’FRIDAY’,5);define(’SATURDAY’,6);define(’SUNDAY’,7);/***@param$dayOfWeek*@returnintDayofweek,with1beingMondayandsoon.*/functionfindNextBusinessDay($dayOfWeek){$nextBusinessDay=$dayOfWeek;switch($dayOfWeek){caseFRIDAY:caseSATURDAY:caseSUNDAY:$nextBusinessDay=MONDAY;break;default:$nextBusinessDay+=1;break;}return$nextBusinessDay;}$day=FRIDAY;$nextBusDay=findNextBusinessDay($day);echo(”Nextdayis:”.$nextBusDay.“n”);?我们鼓励您将大的条件拆分为一个方法,然后用能够描述该条件的名字命名方法。这个技巧能够提高代码的可读性,并且能够将条件具体化,使之能够被提取甚至重用。如果条件发生变化,更新方法也很容易。因为方法拥有一个有意义的名字,所以它能反映代码的用途,让代码更容易阅读。分成更小的部分专心解决一个问题之后再继续编程,这样会让您更轻松。在解决一个紧急的问题时,如果继续编程,会使函数越来越长。从长远来说,这并不是一个问题,但您要记得回过头来将它重构为更小的部分。重构是个不错的主意,但您应该养成编写更短、功能更集中的代码。短的方法能够在一个窗口中一次看完,并且容易理解。如果方法过长,不能在一个窗口中一次看完,那么它就变得不容易理解,因为您不能快速地从头到尾了解它的整个思路。构建方法时,您应该养成这样的习惯,让每个方法只完成一件事情。这个习惯很好,因为:首先,如果方法只完成一件事情,那么它就更容易被重用;其次,这样的方法容易测试;第三,这样的方法便于理解和更改。不良习惯:过长的方法(完成很多件事情)清单3展示了一个很长的函数,其中存在很多问题。它完成很多件事情,因此不够紧凑。它也不便于阅读、调试和测试。它要做的事情包括遍历一个文件、构建一个列表、为每个对象赋值、执行计算等等。清单3.不良习惯:过长的函数?phpfunctionwriteRssFeed($user){//GettheDBconnectioninformation//lookuptheuser’spreferences…$link=mysql_connect(’mysql_host’,‘mysql_user’,‘mysql_password’)ORdie(mysql_error());//Query$perfsQuery=sprintf(”SELECTmax_storiesFROMuser_perfsWHEREuser=‘%s’”,mysql_real_escape_string($user));$result=mysql_query($query,$link);$max_stories=25;//defaultitto25;if($row=mysql_fetch_assoc($result)){$max_stories=$row['max_stories'];}//gogetmydata$perfsQuery=sprintf(”SELECT*FROMstoriesWHEREpost_date=‘%s’”,mysql_real_escape_string());$result=mysql_query($query,$link);$feed=“rssversion=”2.0″”.“channel”.“titleMyGreatFeed/title”.“link”.“descriptionThebestfeedintheworld/description”.“languageen-us/language”.“pubDateTue,20Oct200810:00:00GMT/pubDate”.“lastBuildDateTue,20Oct200810:00:00GMT/lastBuildDate”.“docs”.“generatorMyFeedGenerator/generator”.“managingEditoreditor@example.com/managingEditor”.“webMasterwebmaster@example.com/webMaster”.“ttl5/ttl”;//buildthefeed…while($row=mysql_fetch_assoc($result)){$title=$row['title'];$link=$row['link'];$description=$row['description'];$date=$row['date'];$guid=$row['guid'];$feed.=“item”;$feed.=“title”.$title.“/title”;$feed.=“link”.$link.“/link”;$feed.=“description”.$description.“/description”;$feed.=“pubDate”.$date.“/pubDate”;$feed.=“guid”.$guid.“/guid”;$feed.=“/item”;}$feed.=“/rss”;//writethefeedouttotheserver…echo($feed);}?如果多编写几个这样的方法,维护就成了真正的难题了。良好习惯:易管理、功能专一的方法清单4将原来的方法改写为更加紧凑、易读的方法。在这个示例中,将一个很长的方法分解为几个短方法,并且让每个短方法负责一件事情。这样的代码对将来的重用和测试都是大有裨益的。清单4.良好习惯:易管理、功能专一的方法?phpfunctioncreateRssHeader(){return“rssversion=”2.0″”.“channel”.“titleMyGreatFeed/title”.“link”.“descriptionThebestfeedintheworld/description”.“languageen-us/language”.“pubDateTue,20Oct200810:00:00GMT/pubDate”.“lastBuildDateTue,20Oct200810:00:00GMT/lastBuildDate”.“docs”.“generatorMyFeedGenerator/generator”.“managingEditoreditor@example.com/managingEditor”.“webMasterwebmaster@example.com/webMaster”.“ttl5/ttl”;}functioncreateRssFooter(){return“/channel/rss”;}functioncreateRssItem($title,$link,$desc,$date,$guid){$item.=“item”;$item.=“title”.$title.“/title”;$item.=“link”.$link.“/link”;$item.=“description”.$description.“/description”;$item.=“pubDate”.$date.“/pubDate”;$item.=“guid”.$guid.“/guid”;$item.=“/item”;return$item;}functiongetUserMaxStories($db_link,$default){$perfsQuery=sprintf(”SELECTmax_storiesFROMuser_perfsWHEREuser=‘%s’”,mysql_real_escape_string($user));$result=mysql_query($perfsQuery,$db_link);$max_stories=$default;if($row=mysql_fetch_assoc($result)){$max_stories=$row['max_stories'];}return$max_stories;}functionwriteRssFeed($user){//GettheDBconnectioninformation$settings=parse_ini_file(”rss_server.ini”);//lookuptheuser’spreferences…$link=mysql_connec
本文标题:编写PHP代码的过程中养成的良好习惯
链接地址:https://www.777doc.com/doc-2068973 .html