网站建设中程序员请不要尝试简化这些代码!

2021-05-22    分类: 网站建设

Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。Kubernetes  简称 K8s,用「8」替代 K 和 s 之间的 8 个字母「ubernete」。
    K8s  的 pv_controller.go 源码大约 1700 行(含注释),其中包括:230+ 个 if 语句、30 个 else 语句、5 个 else if 语句嵌套在一起。
请不要尝试简化这些代码!

    乍一看,这代码违背了 KISS (Keep it simple, stupid)原则。
    但是,K8s 的工程师们在注释中用大写英文标注:“请不要尝试简化这些代码!”并且还写了两遍。
请不要尝试简化这些代码!
      为啥强调两遍?K8s 他们在注释中特意解释了。大意如下:
    这个控制器故意以一种非常冗长的风格编写。你会发现:
    1、每个 if 语句都有一个匹配的 else 语句(检查客户端 API 调用的简单错误除外);
    2、有很多被显式地注释的东西;
    我们把这种风格叫做“航天飞机风格”。航天飞机的风格意味着,要确保每个分支和条件都得到考虑和说明。NASA 为航天飞机等应用程序编写的代码也是如此。
    最初,这个控制器的工作被分成三个控制器。控制器是努力简化 PV 子系统的成果。在此过程中,我们要确保在代码中处理和解释了每一个条件,即使这会导致无 op 代码分支。
    因此,控制器代码可能看起来过于冗长、注释过多和“分支”。但是,这里记录了大量的业务知识和上下文,以便确保未来的维护者能够正确地推断绑定行为的复杂性。因此,对这个文件的修改,应该保留并增加航天飞机的风格。

网站栏目:网站建设中程序员请不要尝试简化这些代码!
链接URL:https://www.cdcxhl.com/news10/114560.html

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

广告

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

网站优化排名