RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
网站建设中程序员请不要尝试简化这些代码!
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:http://cqwzjz.cn/view/114560.html