代码整洁之道--函数
来源:互联网 发布:暗黑战神源码解读 编辑:程序博客网 时间:2024/05/23 16:40
怎么写出易于理解与阅读的函数?怎么让函数很好的表达其意图?该给函数赋予那些属性?
- 短小
函数的第一规则是短小,第二条规则还是短小。 - 单一职责
函数应该只做一件事情。 - switch语句的处理
在开发过程中,总能碰到需要使用switch的时候。但是switch天生就算要做N件事情的,这就违反了单一权责原则。我们可以通过将switch放置与抽象工厂下进行解决。 - 比较好的函数名称
优秀的函数名能较好的描述函数即将做的事,在这一块不要吝啬时间的消耗。 - 尽量少用参数
最理想状态是0个参数,尽量不要超过3个参数。 - 指令与询问应该分开
- 抽离try/catch代码块
try/catch主题应该抽取出来,另形成函数。另外,错误处理应该当作是一件事情。 - 不要重复自己
- 指令与询问应该分开
函数要么做什么事情,要么回答什么事情,两者不可兼得。比如
public bool set(string attribute,string value);
这段代码返回的true/false则会存在奇异,它是告诉attribute不存在而导致返回false,还是set失败而返回的false值呢,这就看不出来了。
if(attributeIsExits("username")) {
setAttribute("username","unclebd");
}
这样是不是就更清楚了呢。
阅读全文
0 0
- 《代码整洁之道》--函数
- 代码整洁之道------函数
- 代码整洁之道-函数
- 代码整洁之道--函数
- 代码整洁之道 函数
- 代码整洁之道-函数
- 代码整洁之道--函数
- [代码整洁之道]-函数
- 代码整洁之道--函数
- 《代码整洁之道》总结二之整洁的函数
- 代码整洁之道之函数
- 代码整洁之道----函数篇
- <<代码整洁之道>>读书笔记二 函数
- 代码整洁之道 第三章 函数
- 代码整洁之道 函数,注释
- 代码整洁之道读书笔记--函数
- 代码整洁之道(二)-------------函数
- (读书笔记)代码整洁之道-函数
- 多线程造成死锁的两种情况
- C++中static
- Android---Intent的介绍
- Caused by: org.jbpm.api.JbpmException: resource classpath:jdpm/jbpm.cfg.xml does not exist
- javaweb的request获取真实IP地址
- 代码整洁之道--函数
- [公告] 2017年9月装机员系统更新
- 通过H5的新标签canvas做出一个时钟的全过程,希望对初学者有帮助
- HDU 3072 Intelligence System(Tarjan+最小树形图)
- Validation failed for one or more entities. See 'EntityValidationErrors' property for more details.
- GVIM win7添加到右键菜单方法
- Python 科学计算之实验环境安装及使用
- Spring学习笔记(一)环境搭建和测试开发环境
- 使用ssh 访问越狱iPhone的两种方式