代码重构:神秘命名
【摘要】 别人看不懂的代码,写再多又有啥用
神秘命名
- 《重构,改善既有代码的设计》
什么是神秘命名(Mysterious Name)
- 定义:在阅读代码时,一些会影响我们的阅读体验的神秘文字(不知其意的命名)
- 影响:猜谜(可读性)、潜在的设计问题
- 未来在“猜谜”上可能浪费大把时间,影响可读性
- 如果代码难以命名,其背后可能潜藏更深的设计问题
- 目标:
- 代码直观明了
- 函数、模块、变量和类命名能清晰地表名自己的功能和用法
- 方法:改变函数声明(用于给函数改名)、变量改名、字段改名等
- 表现:单词拼写错误、命名不规则、命名含义不清
代码案例
public class MysteriousExample {
public int amont(Perf perf, Type type) {
switch (type) {
case TYPE1:
return resfortype1(perf);
case TYPE2:
return resfortype2(perf);
default:
throw new IllegalArgumentException("Illegal type : " + type);
}
}
private int resfortype1(Perf perf) {
int s = 40000;
if (perf.getAud() > 30) {
s += 1000 * (perf.getAud() - 30);
}
return s;
}
private int resfortype2(Perf perf) {
int s = 30000;
if (perf.getAud() > 20) {
s += 1000 + 500 * (perf.getAud() - 20);
}
return s;
}
}
剧院包场总金额结算系统,有悲剧、喜剧两种类型:
1)悲剧场——不大于30人算40000,超过30人,超出部分每人加1000
2)喜剧场——不大于20人算30000,超过20人总价加1000,且超出部分每人加500
修改建议:
1.方法名使用动词或动词+名词
2.变量名使用名词
3.避免拼写错误
4.方法、变量、枚举等等,都使用有具体含义的命名方式,不要使用含义模糊的词
5.避免随意的缩写
建议命名规则:
工具:
- IDEA-Analyze(扫描项目拼写错误、缩写不当等问题)
总结:
- 命名要规范、代码勿重复
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)