【大发一分快三官网】老司机教你如何写出没人敢维护的代码!

  • 时间:
  • 浏览:106
  • 来源:彩神网快3网站-彩神8app官方

本文来自于微信公众号多多任务管理器 人生(ID:coder_life)大发一分快三官网,作者:阿木,站长之家经授权转载。

编写除了被委托人太难 能看懂的代码,是许多怎么的体验?

下面由作大发一分快三官网为资深挖坑多多任务管理器 员的我,手把手教朋友 这是为啥做到的?可能性各位能不能 在接下来的时间多加练习,所谓青出于蓝胜于蓝,相信各位不但能不能 写出别人无法维护的代码,还可能性在有朝一日,甚至能技艺炉火纯青地写出被委托人都维护不了的代码。

编写无法维护的代码说难不言而喻不必说难,核心要点统统和编码规范反其道而行之,可能性在此基础上再去掉 许多被委托人琢磨出的心得语录那就更加完美了。

掌握了许多要点还严重不足,前要注意一另一个原则:不必说让朋友 的代码一眼看上去就无法维护,格式同类 的还是要注意些的,朋友 要追求的都是许多肤浅的外皮上的无法维护,朋友 要的是实质是无法维护的。

统统别人一眼就能看出你的代码无法维护,那你的代码就占据 前要重写可能性重构的风险了,那不成了前功尽弃亲者痛,仇者快的事情了嘛。

了解清常规编程的思维法律辦法 再下手!

《孙子兵法》有云“知己知彼,百战不殆”,假如有一天朋友 要想从心理上彻底击败后续的代码维护人员,朋友 前要明白常规编程中的许多思维法律辦法 。

各位先想下,可能性接手多多任务管理器 的是朋友 被委托人,或者代码量比较大,一般朋友 是太难 时间去从头到尾一行一行地读一遍的,更不必说说能理解代码了。

为了能尽快地上线交差,多多任务管理器 员常见的做法是根据需求,先快速找到代码中前要改动的那一次要逻辑,或者对这次要的代码进行修改、测试。许多修改法律辦法 一次能够看一遍代码的一小次要,管中窥豹。

统统朋友 要做的是确保让代码维护人员永远看能够朋友 写的代码的全貌,要尽量保证代码维护人员找能够他不必找到的那次要代码。这还都是最关键的,最关键的是要让修改者知道被委托人太难 忽略任何的东西。

每一另一个朋友 精心设计的哪些地方地方小陷阱都是迫使代码维护者像用放大镜似的,仔细地阅读朋友 的每一行代码。

许多同学可能性不言而喻这很简单,认为假如有一天按照上文中提到的反编程规范原则来进行即可。或者实际操作起来大发一分快三官网并太难 太难 简单,还前要配合朋友 的精心误用才可。下面朋友 就对常用的许多核心技能娓娓道来。

第一招:一本正经地乱用注释

许多次要朋友 先了解下注释的正常用途:注释是用来帮助开发者理解多多任务管理器 的,尤其是对于时候 的开发者,通过注释能不能 更慢的了解代码的实际作用。

正常情况下代码注释的原则一般是只在前要注释的地方进行注释。这是一句很正确的废话,解释起来统统很明显就能看懂的代码就不必说去注释的了,毕竟看注释也是需为宜时间的。

另外一另一个原则统统在注释中注明代码的作用前要和代码的实际作用是一致。

在实际工作中,在对代码进行修改后一定要连同代码的注释也同時 进行修改。关于注释的许多的许多作用朋友 在此不再多说,光是哪些地方地方就可能性足够朋友 用的了。

怎么利用代码注释写出不必无法理解的代码呢?

一、多整没用的

这块我分了许多情况来描述,许多情况对应许多除理法律辦法 ,实用性比较强。

  • 明显型注释

让维护者浪费时间看显而易见的注释。

这次要的原则是维护者看一遍注释后不言而喻“代码比注释容易读多了”,目的统统误导读代码的人。维护者在看代码时,上眼一看代码很清晰,但又一看竟然还有注释

此时读代码的人心里肯定是要嘀咕下:看来这代码没我能不能 的太难 简单。

或者朋友 的注释要写的长许多,最后是要阅读者看不懂,改的事先犹豫不决。

可能性有余力语录能不能 在注释中教维护者为啥编程,许多一般杀伤力要比顶端写的会高许多,多多任务管理器 员最反感的可能性就都是我能不能 教他为啥编程了,尤其是教他太难 简单的编程,杀伤力加倍。

下面看个例子:

  • 废弃代码注释

字面意思可能性很清楚了,正常情况下代码中不必的次要朋友 一般会注释掉可能性直接删除掉,即使这段代码将来会使用到统统影响,能不能 从版本控制工具中再找回来。

针对性的做法统统给删掉的代码加个长长的注释,写明这段代码为哪些地方会被注释起来,也向维护者传达了一另一个信息,即这段代码都是被”废弃”的,统统”临时”先不必。

事先做的杀伤点就在,可能性只注释了代码没加注释说明,根据实际经验朋友 多数会直接略过被注释的代码,而给代码加了注释后看代码的人可能性就要看看许多注释了,不然会漏掉哪些地方关键信息,毕竟代码都是他写的。

样板代码:

二、许多地方将来会修改

许多注释统统朋友 突然提到的“TODO”型注释。正常情况下TODO注释不必说一无是处,比如在初始化项目的事先TODO注释还是非常有用的,到项目release 时一般是建议去掉 的,可能性前要要留着一般前要写明在具体哪些地方日期会除理掉。一般是不推荐TODO型注释长期占据 于项目的代码中,正常的除理逻辑一般是遵循有Bug尽快Fix,无Bug则去掉 注释。

通过顶端的描述相信朋友 可能性知道这块具体要为啥应对了。被委托人建议是对于有待修改的多写点TODO注释,且不注明更改的因为以及计划更改的时间,事先顶端的维护人员在看的事先可能性连这块到底是都是可能性改过了都搞不清楚,统统杀伤效果也是有许多的。

样板代码:

三、错误注释信息

这次要的意思是造成代码和注释的不匹配,也统统注释的信息不正确。 

朋友 要做的统统改完代码后不改注释就行了,此种法律辦法 比较省事,额外工作许多统统用多做,或者稍微许多代价,前要注意的是最好是在此类注释中加个特殊的标记,除理被委托人后续看的事先把被委托人也绕进去。

样板实例这块就不必加了吧,场景越多了,朋友 在被委托人的一亩三分地上耕作时临场发挥即可。

四、讲故事

简单说来统统写明这段代码为哪些地方要事先写,当然肯定都是单纯的因为。除了因为一般建议在注释中写上当时的情况,比如某年某月和某人在某地讨论了许多问题,某人说许多问题应该怎么除理,你爱不爱我许多问题不该事先除理应该那样除理,时候 某某人又加入了讨论,某某人对俩的讨论做了某某的评价,最后决定要用现在的代码去实现这块的功能。

总之,原则统统把事情的细节描述清楚,越细越好。许多同学可能性会建议将当天的天气情况也写上,还有讨论中那个气死人的S*名字也要带上,我被委托人认为天气能不能 酌情去掉 ,但写上S*名字是不太鼓励的,毕竟同事一场,要相互爱护的,朋友 按照被委托人公司的实际情况来选择 具体的除理法律辦法 吧。

样板代码:

五、不必说写因为

按照注释的规范,注释时不但要解释多多任务管理器 的表述的意思,更重要的是写明为哪些地方写,即代码太难 写的因为是哪些地方。

事先应对之策也可能性显而易见了,对于冗杂多多任务管理器 ,比如许多特殊的边界条件判断,只写下多多任务管理器 的字面意思,具体边界值判断为哪些地方要事先写,为哪些地方是许多值能不能 忽略掉,让维护的人尽情去猜吧。

六、琐碎

在这前要注明的是大次要多多任务管理器 注释一般是用能够许多情况的,一般是推荐中放许多冗杂算法的解释上,越是冗杂的算法越是推荐,原则统统把这次要应该写到文档中的内容写到代码中。

一定要把算法的所有的完整性设计都写上,注释内容分段落,段落之间要分级,每个段落建议去掉 编号,事先就基本能不能 保证代码的注释和文档的内容保持一致。后续的维护看一遍事先的注释的事先基本能不能 保证头大一圈,可能性此类注释占据 多处语录效果更佳。

鉴于样板示例中注释篇幅太长就不加示例了。

七、单位问题

单位这次要和具体的业务场景相关,比如时间相关的一般会有毫秒、秒、分钟、小时、天、月、年等,涉及尺寸的场景如像素、英寸等,涉及文件大小的场景如字节、KB、MB、GB等。

许多类的代码中朋友 的原则是不对单位进行注释,只管使用,可能性能不能 在代码中各种单位混用,那自然是更加优秀。

比如在关于文件除理的场景中,KB、MB、GB多个单位混合使用,事先时候 的维护人员要想拿出这次要代码中单位的真正含义就要下一番功夫了。

按照朋友 的正常逻辑,顶端的人要想改这次要的代码的逻辑首太难先弄懂各个数据的单位,搞清楚事先肯定是不敢随意修改的,一般许多情况能够许多除理法律辦法 那统统一遍遍的调试、测试多多任务管理器 来推算各个数据实际的单位,花费的时间自然是相当的多。

八、恐吓

许多招能不能 说是杀手锏级别的注释,能不能 在多多任务管理器 中加一次要可有可无的代码,或者是很明显可有可无的那种,或者给这段多多任务管理器 加个注释,注释中写明“千万不必说注释掉可能性删除这段代码,或者多多任务管理器 会突然总出 异常!!!”,前要注意的是不必说解释会突然总出 哪些地方样的异常。

事先维护人员在看一遍这段代码的事先肯定首先会联想到被委托人事先看一遍的许多文章,并坚信这段“废话代码”肯定是能够删除的。代码中可能性占据 多处许多注释语录效果更佳。