在业界,根据代码质量可以将代码定义为好的代码(高质量)和坏的代码(低质量)。
其实,代码质量的好坏都是主观定义上的。不同的团队可能根据其产品性质的不同对代码质量的定义有着不同的要求。对于自动驾驶开发人员来说和对于web应用程序开发人员来说,良好的代码质量所代表的意义可能大相径庭。
那么为什么代码质量很重要?因为代码质量决定了整个应用程序或软件的质量,会影响代码库的安全性、稳定性和可靠性。所以对于许多开发团队来说,高质量代码至关重要。尤其是对那些开发安全系统的工程师团队。
高质量代码也可以称之为干净的代码。它经得起时间的考验。而低质量的代码,不会持续太久,对软件的生存周期也有着一定影响。
对于各大科技公司而言,由于公司的产品风格不同,自然代码风格也不尽相同,下面就让我们来看看,科技界的四大巨头公司,都有什么样的代码风格?
Amazon在代码质量方面更注重于敏捷性和交付速度。通常来说Amazon Java的代码质量很高,尽管代码通常看起来不那么规范。Amazon将“高质量代码”的定义理解为“客户满意”。换句话说,高质量的代码就是高质量产品的代名词。
Amazon在编写代码方向面一直的理念都是为了与其他代码库保持一致,遵循易于理解的设计和实现模式,避免不必要的理解误差。每一次代码变更都要经过很多部门一起核审,这是一个经常让人精疲力尽的过程,并且伴随着自动化的单元、覆盖和集成测试以及最终专门的SDET和QA进行质量测试,这个漫长的过程中开发人员每天都在努力找bug。
Amazon现有的代码库是非常弹性化的,但是当其代码库需要修改时,可能会很困难,不仅代价昂贵,而且非常繁琐。导致“技术债务”不断累积,例如,当一个团队在开发创新时,更愿意启动一个新的代码库,而不会试图修改一个现有的代码库。
Google在代码质量方面通常更注重均匀性和质量。他们在开发工具上投入了大量资金,并且确实得到了回报,Google可以说是代码质量和开发工程的顶级存在。但是,也有一个缺点,就是在主要代码树上如果要进行创新可能会很困难。每一次的创新最终都感觉像是在维护项目,而不是创新。
Google的代码当然也有它自己的缺点。仔细观察下来你会发现,Google早期的代码已经变成了“孤儿”——已经没有人再使用它了,但它仍然存在于很多我们现今仍使用的软件程序中,早期代码会导致这些软件程序使用过程中出现延迟和卡顿,这些延迟是由于不得不处理一些遗留代码造成的。在Google的快速发展期间,有一段时间需要添加很多新的功能,而可实现这些功能的工程师却很少,导致在那段时间内编写的一些代码都无法达到今天的代码质量标准。
但在宏观层面上,Google的代码质量一直在随着其年龄的增长而提高。
微软在代码质量方面专注于企业级的性能和可维护性上。也就是说,代码的正确性和稳固性很重要,同样重要的是同一段代码可以在十年或更长时间内存活、并拥有独立维护和扩展的能力。
总体来说,微软迄今为止仍然是软件开发水平最高的企业。其软件项目的规模,复杂度和质量指标仍然领先于其他企业。
苹果的内部工具代码库可能会偶尔变得相当混乱。这往往是由于开发人员过度追求设计效果而造成的,对于较少的“外围”工具,比如构建系统,它的代码质量还是非常好的。总的来说,Apple把时间和精力都花在了正确的地方。
当涉及到已发布的代码时,Apple的表现相比较其他开发公司来说更好。虽然至今网络上对于苹果的操作系统依旧非议很多,但是不得不承认苹果产品的数据库和产品流畅性是一流的。
如上述所说,编程中的代码质量很重要。当代码质量低时,可能会带来安全风险。如果由于安全风险导致软件出现bug,其影响可能是灾难性的。
上述四家科技巨头公司目前的代码质量都相对较高。从绝对的学术角度来说, Amazon的代码是最原始的,Google的代码是一致性做得最好的,而Microsoft代码仅次于Google。Apple的代码创新和延展性方面非常优秀。
Hi,我们是直通硅谷!
我们专注于全球科技行业求职培训,心之所向,是壮大全球华人科技力量。凭借实战中积累的丰富经验,及由800+全球科技公司在职面试官组成的导师库,我们让求职这件事成为系统的科学,并变得越来越简单!
自2015年,直通硅谷独家秋招计划已帮助5000+学员成功进入全球顶尖科技公司!
你只需要一个
ALLinONE计划
进入全球顶级科技公司