变量定义过程的歧义分解问题

本文探讨了在编程中如何优化变量命名,以提高代码的可读性和维护性。文章提出了清晰、精确的命名原则,并举例说明了如何避免冗长的变量名称。

本文是学习算法爱好者的学习笔记(仅供学术参考)
在原作者Google的Dart语言变量定义中发现的规律和大家讨论这个问题,Google是采用code review的方案对改动的两种形式做review,主要是为了代码的可读性高,作为该Dart语言的设计者他说如何优化变量的命名问题?
在c语言的外部标识过程中需要从六个字符来确定一个唯一的区分,深度学习的方法目前可以自动修复补全功能的代码,长的命名会带来很多麻烦,同时消耗计算存储单位。这种影响代码清晰性的超长变量的命名办法会造成换行从而是结构发生变化不宜阅读!
长类名会使开发者不宜声明该类型的变量。
加大理解难道
不利于代码重用导致过长的方法链
命名目标
1清晰:说明命名与那些有关
2精确:命名与什么无关不能有歧义

命名中无需含有表示变量或参数的单词:
eg: java的静态类型语言开发者一般知道变量类型,在不知道需要推理本地变量类型的情况下通过很少的code review等静态分析器不可用的情况下都可以推理到的变量类型。
所以将类型说明加入到变量名中是多余的. 我们应该舍弃匈牙利命名法,如下:

// 不好的:
String nameString;
DockableModelessWindow dockableModelessWindow;

// 改进:
String name;
DockableModelessWindow window;

特别是对于集合来说,最好使用名词的复数形式来描述其内容, 而不是使用名词的单数形式来描述. 如果开发者更在乎集合中存储的内容, 那么变量命名应当反映这一点。

// 不好的:
List holidayDateList;
Map

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值