高质量编程与性能调优技术学习总结|青训营

94 阅读2分钟

高质量的代码通常具有易读、清晰、简练的特点。高质量代码同时也要保证满足功能实现的最低要求。高质量代码的形成可从以下几个方面入手。

1.命名

函数、变量、常量的命名应尽可能保持多的信息量并且尽量简洁。下面以Go语言为例总结高质量代码的命名要求。

a.包命名:全用小写字母,不要包含大写字母和下划线。

b.变量命名:变量尽量以简洁为主,但若像是全局变量这样的离其被使用的位置越远的变量,就要携带越多的信息。对于需要导出的变量,用大驼峰命名法,即不用下划线,每个单词仅首字母大写,其它字母小写,但对于缩略词来说,它要全部字母大写。对于不需要导出的变量,可以用小驼峰命名法,即不用下划线,除了第一个单词首字母不大写外,其它单词首字母大写,剩余的字母小写。对于缩略词,如果它不是首单词,则要全部字母大写,如果是首单词,则要全部字母小写。

c.函数名命名:函数名不要包含包名的信息,因为函数名与包名经常一起出现。同时函数名也要在保留必要信息的前提简洁。

2.代码格式与控制流程

a.代码格式要统一。

b.控制流程要减少嵌套,优先实现错误条件和特殊条件,通过尽早返回或继续循环来减少嵌套,以增加可读性。

有时候高质量的代码并不是一蹴而就的,通常需要经过复杂冗长的代码的多次迭代才能得到。而如何评测代码性能和优化代码就要用到下面的性能调优知识了。

1.测试

基准测试:基准测试可提供项目的性能数据。在Go语言中,如果有一个名为function的函数在main.go文件中,我们可以先创建一个测试文件main_test.go,这里的测试文件格式是固定的,即文件名加_test 。在main_test.go文件写测试函数,同样也是格式固定。假如我要写测试function的基准测试测试函数,那么: func Benchmarkfunction(b *testing.B) {//测试函数名为Benchmark+待测试函数名 for i := 0; i < b.N; i++ { function()//调用待测试函数 } } 然后切换终端工作目录为当前文件夹目录,执行go test -bench=. -benchmem便可以获取性能数据。

2.性能优化建议

a.slice要初始化容量信息。

b.map要预分配内存。