编写简洁代码(CleanCode)并不是一件很容易的事。为了保持代码干净,您需要尝试不同的技术和实践。问题是关于这个主题的实践和技巧太多,需要大量重构。因此,开发人员很难为自己的项目选择最佳实践和技术。让我们简化这个任务,在本文中,我们将讨论编写干净代码的一些好处,然后查看我们总结的6个技巧和实践,以便开发人员了解一些最常用的编写干净代码的技巧。1.编写简洁代码的好处让我们先来看看编写简洁干净的代码的好处。主要好处之一是干净简洁的代码可以帮助我们最大程度地减少阅读和尝试理解代码所花费的时间。凌乱的编码风格具有不可思议的能力,可以提高开发人员的生产力并使他们的工作更加困难。代码越乱,开发人员维护它的时间就越多。此外,如果代码太混乱,维护开发人员可能会决定停止并重构它。1.1更容易开始和更容易继续让我用一个简单的例子来说明这一点。假设我们在很长一段时间后重新维护之前开发的一个项目。或许,是我们的一位老客户联系了我们,要求我们再次继续扩建和维护。现在,我们可以想象一下,如果在项目开发阶段,不是用cleancode的技术来写cleancode,而是写相反的代码。第一次,您将知道您的代码有多糟糕和混乱。而这个时候,你也会发现,维护一个之前的项目是多么的艰难。因此,我们现在不得不花更多的时间在这个项目上,因为我们需要重新理解我们之前写的代码。虽然这不是必需的,但我们可以通过坚持从一开始就编写干净的代码来完全避免它。现在我们不得不增加成本,如果我们决定从头开始,我们的旧代码会变得一团糟。我想这不是您的客户愿意听到的,因为它代表成本增加和工期延长。CleanCode不会有这样的问题,想象一下前面的例子,情况会恰恰相反。现在,我们之前的代码干净优雅。那么我们需要多长时间才能理解它呢?也许就几分钟,简单地阅读代码并了解它之前是如何工作的。最后,在此基础上,我们花一段时间维护或扩展新的功能。这种改变所投入的成本和时间会小很多,我们的客户甚至可能不会注意到你做了什么。这是我们讨论坚持使用CleanCode编码技巧的第一个好处的地方。而且,它不仅适用于我们自己维护的项目,也适用于其他开发人员。CleanCode使我们能够更快地开始,我们和其他开发人员都不需要花费数小时来研究它。我们可以更快地开始工作。1.2更容易让团队中的人加入CleanCode的另一个好处与第一个原因密切相关,它将加快新人接手项目的速度。我的意思是,假设我们需要雇用另一个开发人员,需要多长时间才能理解代码并学习如何使用它?看情况,如果我们的代码本身很乱,写得不好,他就需要更多的时间来完成第一次接管。而如果我们的代码保持简洁易读,就会非常容易理解,那么他就可以更快的接手,开始写新的需求。有些人可能会觉得这不是问题,因为我们作为作者还在,我们可以帮助他更快地理解,虽然这确实可以加快他的入职速度。但是,我们的帮助应该只是很短的时间,一天或两三天,而不是一周或非常频繁。当我们决定聘请另一名开发人员时,是为了加快我们的项目开发,而不是放慢速度。我们的目标不是帮助他学习如何在我们之前编写的代码之上继续编码,这会浪费我们更多时间。1.3更容易保持规范我们需要注意的一件事是了解和学习如何编码是一回事。然而,这仅仅是开始,我们还需要确保开发人员能够并愿意遵循我们的编码标准,并在项目中继续实践。这将使项目始终保持干净整洁,而不会变得混乱。这一点很重要,因为我们不仅要写出干净的代码,还要维护这样的代码,不管以后有多少人来维护,我们都需要长期坚持和思考这个问题。最后,如果我们团队中的一位开发人员决定不遵循当前的编码标准怎么办?通常这个问题会自行解决。假设我们有一组人在处理相同的项目代码,并开始偏离既定的代码约定。这可能导致三个方向的发展。首先,团队其他人推动开发人员遵循标准,如果他不想离开团队,他就会接受。第二个方向是开发人员能够说服团队的其他成员采用并遵循他的编码标准。如果开发人员提出更简洁的编码标准,从而带来更好的结果,那应该是一件好事。编写并保持我们的代码干净并不意味着我们应该忽略任何改进它的机会。恰恰相反,我们认为我们应该始终质疑我们当前的做法并寻求改进的机会。所以,如果一个开发者偏离了我们的想法,而他的做法更好,在这种情况下,我们做出改变,而不是让他改变,可能是最好的结果。我认为在我们审视并尝试之前,我们不应该忽视其他人的方法。总有改进的余地,我们应该不断寻找改进的方法,而不是墨守成规。最后是我们最不想看到的,开发者决定不采用我们的规范,也不会试图说服我们采用他的规范。这可能导致他离开球队。2.编写整洁代码的一些建议在我们讨论编写整洁代码的一些好处之前,是时候学习一些技巧来帮助我们做到这一点了。正如我们将要看到的,拥抱干净的代码并遵循这些建议来实践。我们总结的这些实践将使我们的代码更清晰、更易读、更简单、更容易理解。当然,您不需要练习所有这些建议,练习并遵循一两个就足以编写出有效的结果。2.1使代码可读是的,我们写的代码最终会被机器解释。然而,这并不意味着我们应该忽视它的可读性和可理解性。总会有另一个开发人员有机会阅读我们的代码,否则将无法维护它。即使我们作为独立开发者坚持自己维护代码,我们可能会在未来继续维护我们的项目。由于这些原因,我们应该保持代码的可读性。最简单的方法就是用空格格式化,把代码压缩(混淆)后再发布就可以了。但是我们不需要编写看起来像是压缩过的代码。相反,我们可以使用缩进、换行符和空行来使代码的结构更具可读性。当我们决定采用这种方法时,我们代码的可读性和可理解性可以得到显着提高。接下来看一下我们的示例代码,你应该就能看懂了。Code1://BadconstuserData=[{userId:1,userName:'AnthonyJohnson',memberSince:'08-01-2017',fluentIn:['English','Greek','Russian']},{userId:2,userName:'AliceStevens',memberSince:'02-11-2016',fluentIn:['English','French','German']},{userId:3,userName:'BradleyStark',memberSince:'29-08-2013',fluentIn:['捷克语','英语','波兰语']},{userId:4,userName:'HirohiroMatumoto',memberSince:'08-05-2015',fluentIn:['中文','English','German','Japanese']}];//BetterconstuserData=[{userId:1,userName:'AnthonyJohnson',memberSince:'08-01-2017',fluentIn:['English','Greek','Russian']},{userId:2,userName:'AliceStevens',memberSince:'02-11-2016',fluentIn:['English','French','German']},{userId:3,userName:'BradleyStark',memberSince:'29-08-2013',fluentIn:['Czech','English','Polish']},{userId:4,userName:'HirohiroMatumoto',memberSince:'08-05-2015',fluentIn:['中文','英文','德文','日文']}];Code2://BadclassCarouselLeftArrowextendsComponent{render(){return(
