We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
废话不说先上图
代码的质量可以被看作是上图的金字塔,每个顶点都代表这代码质量的一个特点。但总体来说一共包含两方面,基础和顶点(base and apex)
基础是什么呢? 基础是那些让我们的代码可靠,可面向未来的特点的集合。而顶点则是代码的功能和可靠性。 你想让你的顶点越高,那么基础就应当越大。
这个特征代表了代码是否易于阅读,是否易于理解代码的内容及其目的。他又包括以下几个特征:
好的注释,注意不是过多的注释,过多的注释可不是什么好事儿
好的命名无论是类,函数,变量等, 见我的这篇文章
一致的代码规范
干净的逻辑,说白了就是没有废话
这个特征代表了是否易于添加功能(对产品来说做减法的太少,做加法的太多了),好的设计应当具有高扩展性。扩展越高意味添加功能就越轻松,改动也越少。
这个特征代表了我们的功能模块之间是否低耦合,高内聚,模块内修改不影响其他模块。 这里有一些好的原则:
这个特征代表了我们的代码覆盖度有多少,我们的自动化程度有多少。还有单元测试,集成测试以及e2e测试的情况。
顶点代表了,我们的代码做了多少事,以及他的可靠程度
要让我们的基础足够大,整体机构自然就会很好。
不幸的是目前还没有什么具体的方法能够测量代码的可测试性,可读性,可扩展性,以及原子性,我们只能靠经验来判断。这是个悲哀。
无数先贤都在探索怎么才能把软件工程化做的更好,我也希望会做的更好,我也会为此做出努力。可这里隐含着一个问题,就好建筑业,他的工程化很成熟,因此带了无数的建筑工人,拿着微薄的工资,做着最累的工作。希望我们这里没有。
The text was updated successfully, but these errors were encountered:
译文。。。
Sorry, something went wrong.
No branches or pull requests
废话不说先上图

代码的质量可以被看作是上图的金字塔,每个顶点都代表这代码质量的一个特点。但总体来说一共包含两方面,基础和顶点(base and apex)
基础是什么呢? 基础是那些让我们的代码可靠,可面向未来的特点的集合。而顶点则是代码的功能和可靠性。 你想让你的顶点越高,那么基础就应当越大。
基础包括那些特征呢?
可读性
这个特征代表了代码是否易于阅读,是否易于理解代码的内容及其目的。他又包括以下几个特征:
好的注释,注意不是过多的注释,过多的注释可不是什么好事儿
好的命名无论是类,函数,变量等, 见我的这篇文章
一致的代码规范
干净的逻辑,说白了就是没有废话
可扩展性
这个特征代表了是否易于添加功能(对产品来说做减法的太少,做加法的太多了),好的设计应当具有高扩展性。扩展越高意味添加功能就越轻松,改动也越少。
原子性(低耦合,高内聚)
这个特征代表了我们的功能模块之间是否低耦合,高内聚,模块内修改不影响其他模块。
这里有一些好的原则:
可测试性
这个特征代表了我们的代码覆盖度有多少,我们的自动化程度有多少。还有单元测试,集成测试以及e2e测试的情况。
金字塔的顶点
顶点代表了,我们的代码做了多少事,以及他的可靠程度
保持顶点与基础平衡
要让我们的基础足够大,整体机构自然就会很好。
那么这个金字塔会有那些形状呢?
那么怎么测量这个金字是否合适呢?
不幸的是目前还没有什么具体的方法能够测量代码的可测试性,可读性,可扩展性,以及原子性,我们只能靠经验来判断。这是个悲哀。
总结
无数先贤都在探索怎么才能把软件工程化做的更好,我也希望会做的更好,我也会为此做出努力。可这里隐含着一个问题,就好建筑业,他的工程化很成熟,因此带了无数的建筑工人,拿着微薄的工资,做着最累的工作。希望我们这里没有。
The text was updated successfully, but these errors were encountered: