这是我参与「第三届青训营 -后端场」笔记创作活动的的第2篇笔记
我们每个人都希望能够写出高质量的代码,但是为什么要编写高质量的代码,如何需要的话,又该如何进行高质量编程呢,在写代码的时候,我们又需要从那些方面进行考虑呢?
1.高质量编程
1.1 为什么要进行高质量编程
我们编程的目标通常是为了解决一个问题,编程完毕后需要编译器去运行。如果我们的编程质量不够高的话,不仅不能够解决问题,而且还会产生各种问题,自己还要花大量时间去解决,如此一来,不仅消耗了自己的时间,而且也损耗了资源。于是乎,我们提出了高质量编程要求。
1.2 什么是高质量
编写的代码能够达到正确可靠、简洁清晰的目标可称之为高质量代码。高质量编程可以从三个方面(编程风格、程序运行、后期拓展)三个方面来描述。以下就是几个简单的要求:
-
编程风格:整齐、简洁、易读
-
程序运行:正确可靠、安全、高效、兼容
-
后期拓展:可移植、可复用、可维护、可拓展
接下来我们就分别从这三个方面进行阐述
1.3 编程风格
培养良好的编程风格有利于形成个人风格,让别人一看到这串代码就知道,这就是你写的。我们知道,如何辨别一个程序员是正规军还是野生程序员,主要是看他的代码风格即可,很多牛逼的大佬,都会非常注重代码的风格。所以想成为一名优秀的程序员,良好的代码风格是必不可少的
编程风格主要是形成自己的代码格式、注释、命名规范、控制流程、错误和异常处理等内容的风格。
当然,刚开始我们可能不清楚如何形成自己的风格,所以可以借鉴他人。如在命名规范上就可以参照驼峰命名法、下划线命名法、匈牙利命名法。
//小驼峰命名法:即第一个单词首字母小写,后面其他单词首字母大写
int myAge
//大驼峰:把每个单词的首字母都大写
int MyAge
//下划线命名法:即名称中每一个逻辑断点都用一个下划线来标记。
int my_age
//匈牙利命名法:变量名 = 属性+类型+对象描述
int iMyAge
在缩进上有K&R风格,BSD风格等,如何确定自己的风格,需要自己去不断尝试。
//BSD风格
if (<cond>)
{
<body>
}
//K&R风格
if (<cond>) {
<body>
}
当然了,形成自己的代码风格也不意味着可以随意创造,形成一些匪夷所思的风格,毕竟,我们的目标还是写出一段优秀的代码,而不是一堆屎山
1.4 程序运行
代码写的好看只是其一,其二就是程序要能够正确运行,能够满足需求,不然人家要求你写个计算1+2+...+100,你却写了个1 * 2 * ... * 100,那岂不是南辕北辙。而且在正确运行的过程中还能优化代码,减少资源的浪费,保证系统稳定等等,如
- 可靠:持续稳定运行、并发安全、无资源泄露
- 安全:完善日志处理、保护敏感信息、防范常见攻击
- 高效:循环代替递归、精简循环代码、选取合适算法、数据结构、发现并改善性能瓶颈
- 兼容:确认程序运行环境、使用可兼容的组建
1.5 后期拓展
写好的程序也可能会因为各种各样的原因需要添加或删除功能需求,此时如果程序的耦合性不够好的话,就可能会牵一发而动全身,甚至导致返工。因此,采用合适的设计模式也是高质量编程的一部分。一段优秀的程序应该达到这样的要求:
- 可移植性
- 可复用性
- 可维护性
- 可拓展性
要实现高质量编程不是一蹴而就的,需要在不断的编写过程中去磨合,创造,形成。
编码前 需要仔细阅读 编码规约,保证编码风格一致(多人开发,风格难免有差异)。
编码时 需要不断自测,不能盲目自信(老子代码天下无敌 是不可取的)。
编码完成后 先自己思考一下能否继续优化,进一步可以请别人 来指点一下是否有更好的代码。
注:
要下意识的学习优秀代码的思想,总结自己代码的不足。
在此次go项目的实现中,也是一次高质量编程的尝试。
\