前言:常自省,好代码是精简语句? 看上去不明觉厉? 还是代码层次清晰易读?
本文只讲编码规范思路,望理解,不然写十万字很轻松,看完正文评论区讨论吧~
代码规范的好处:代码易读易维护(Bug容易找),也便于重构和扩展
想写出好代码,编码规范(规矩)不可少,在写过看过用过沉淀过多年之后,从这几个方面初窥大道(高手仅作参考,望补充):
1. 从命名规范(帕斯卡命名法、驼峰式命名法用起来)上
a.文件名、类名当然建议都帕斯卡(大驼峰)命名咯,首字母大写
b.不管是大驼峰、小驼峰(驼峰式),还是匈牙利命名,目的都是在为变量名起到一个规范作用,便于快速的对变量名有清晰认识,例如:
编程语言C++中,使用匈牙利命名:
定义一个int类型的书籍数量的变量
int iBook = 0; // 类型(i)+描述物(Book)
当下次看到iBook的时候,很清晰直观的就能判断iBook的含义。
当然明白匈牙利命名或者一个事物的初衷是最关键的,它无非是想我们通过变量名一眼获取到关键信息
所以只要能用...+...+...组合成变量名,意义上都是一种匈牙利命名,有个公式:
变量名 = 属性+类型+对象描述
驼峰式命名法就不多讲啦,大家应该用的最多
c.变量名尽可能的使用完整的英文单词拼组
d.拼音看情况使用,但更要完整拼组
2.从注释上(注释组织语言也是艺术噢)
单行注释(//)与下一行代码保持缩进
多行注释(/***/)*后隔空格
多行单行注释应尽量保持注释对齐易看
3.从关键词上
:;,(冒号分号逗号)及if else switch case for while do try catch with finally return typeof
如遇上述符号/关键词,其后跟空格,少数情况视情况而定,灵性处理
4.从作用域({})上
尽可能的使用{}将内容体包起来,哪怕语言合法化允许你不加{},也尽量加上,这样潜意识便于阅读,也利于维护扩展
5.从对齐方式上
a.在一系列声明变量时,若隔行声明,保持赋值符(=)保持同列,视觉感官看上去一条竖线,整体感觉会比较工整
b.上面说的多行单行注释对齐也是这个意思
c.该缩进的地方一定缩进(Tab键)
6.从函数体上
a.函数体与函数体尽量保持一行间距
b.代码结构不易过长,适当抽取为独立函数
c.避免过度嵌套,适当剥离,精简语句和添加注释
7.从编码习惯上
a.尽量不用硬编码
例如:
int iBook = 10;
if (iBook == 10){}
此处的10就相当于一种硬编码,可以写为
const BOOK_TOTAL = 10;
if (iBook == BOOK_TOTAL){}
b.命名上避免出现了多义英文,且不添加注释的情况,后期它认识你,你不认识它
c.可使用编辑器规范代码快捷键(自动对齐)
如:VSCode中的Ctrl+KF
d.功能模块独立开(解除耦合性),这样就可以分而治之
e.熟悉新特性,用到的时候记得适当注释,免得有同事请教你或者对此有疑问浪费时间
f.大牛略过,有些时候不要为了炫技而炫技,反而写出不易阅读的代码,或者炫出了Bug,栽了跟头
结束语:
若有补充的,告知我下,谢谢哟~
愿以梦为马,执剑走天涯,这条路也不孤独