8种臭味代码
来源:互联网 发布:服装配色软件 编辑:程序博客网 时间:2024/04/26 10:57
千里之行,始于足下,千里之堤,毁于蚁穴,做好设计的第一步就是写好你的代码,博文8 Signs your code sucks总结了代码中第一个感觉的臭味,让你能够于细微之处发现软件的质量问题。
1.方法内代码超过一个电脑屏幕:
一个方法只应该执行特定的任务,一个方法不应该包含一些这样的逻辑,例如判断用户名字段包哈巴的数据是否有效,是否存在等。如果一个方法代码大得超过一个屏幕,那么这是表明它做了太多的事情,需要切分。
2.你在重用变量:
除非你工作于嵌入式领域,否则内存是便宜的,不要做内存的守财奴,要注重可维护性。
3.你直接访问request/session :
这和具体应用服务器环境绑定,难于测试,所有应用数据应该直接解耦Session/request,保存到Bean中,通过 bean的 getters 和 setters方法, 创建使用者访问数据的合约,这将大大帮助代码的可维护性,个人补充,不要把类中的Collection字段直接通过Collection getCollection来暴露给外界,通过方法封装对Collection的操作。
4.你需要使用注解来解释代码如何使用:
代码应该自己能够解释它如何使用,易于可读,如果你发现你自己都需要注解专门解释如何使用,那么就要重构你的代码。这里注解不是指javadoc等必要文档。
5.一个exception系列错误没有返回最原始的错误:
你不应该吃掉exception错误,在catch一个exception时,要打印出其出错tack trace. 如果不知道错误来源,如何纠正错误呢?
6.你的代码是一堆泥球:
代码粘在一起,机会没有分离分层,代码应该是模块化,这样易于维护和重用。 MVC是关注用户View视图界面发生的事情,控制器是关注程序流程和数据的校验,而处理业务逻辑是领域模型的事情,只有模型可以和数据库访问直接进行交互。
7.难于单元测试
如果你发现Bug,那么些一段新的代码片段,它会花去你一些时间,但是这样代码就能处理更加复杂的事情了。
- 8种臭味代码
- 注释==代码臭味
- 让单元测试“嗅出”代码的臭味
- 代码的二十二道臭味
- 复合名是一种代码臭味
- 设计的臭味
- > 设计的臭味
- 软件设计的臭味
- 设计的臭味
- 臭味四溢的DOP
- 吃后如何快速去臭味
- 假期总结——设计臭味
- 设计的臭味,腐化软件的气味
- 常见的设计臭味和设计原则
- [转]吃大蒜后如何快速去臭味
- 设计的臭味——腐化软件的气味
- LINQ to SQL活学活用(3):嗅出“臭味”烟消云散
- LINQ to SQL活学活用(3):嗅出“臭味”烟消云散
- perl正则表达式递归
- poj 1042 钓鱼问题 枚举+贪心
- 解决HIbernate3运行出现No CurrentSessionContext configured!错误
- VMware当中的redhat下面mnt里面没有hgfs解决办法
- php 读取MySQL中最后一条记录
- 8种臭味代码
- 北航计算机复试
- PHP数据类型转换
- PHP 遍历数组的方法汇总
- 关注点
- DELPHI怎样编写COM组件
- hdu 1385(zoj 1456)Minimum Transport Cost(最短路,输出路径,Floyd实现)
- MFC在VIEW的Client区绘制图形
- 复杂分支结构逆向