代码改变世界

开发中的小心得

2011-02-18 09:25  hanwesley  阅读(211)  评论(0编辑  收藏  举报

总结一下自己在开发上的一些小心得,持续更新,欢迎大家补充!

 转自:http://www.javaeye.com/topic/900986

测试需要注意的问题

1:测试需要涵盖所有的业务逻辑: 自动化测试不需要覆盖所有的代码,但需要覆盖所有的业务逻辑,因为一处的修改可能造成其他业务逻辑的不可用。考虑所有情况如单个删除,批量删除。一对一移动,多对多移动。
2:浏览器:测试产品支持的浏览器,具体到浏览器版本号,如支持IE6,IE7和IE8。
3:分辨率:测试产品支持的分辨率,如支持1024X768以上的分辨率。
4:现场环境测试:一部分功能出现问题,可能是现场环境导致,所以必须在现场环境进行严格测试,如现场网络问题,数据库所在硬盘满了。
5:原则上测试代码应该覆盖所有的业务逻辑,但是基于投入产出比的考虑(所有的代码都写测试,代价太大,效果不一定更好),可以只在核心和你需要验证的业务逻辑上写测试代码。 测试主要是验证各种输入是否得到预期的输出,那么只需要提供几种常见的输出进行验证就可以,注意测试的输入是无限的,所以就算做了自动化测试,也不能完全保证程序没有问题。
6:建议使用TDD按照业务场景来进行测试,用户如何使用我们的功能,我们就写哪些测试代码,这样能够帮助我们按需开发代码和做有效的测试。 TDD只需覆盖所有的业务代码,并不需要覆盖所有的代码,所以建议在服务层做TDD。
 
使用SVN:
1:提交注释:提交代码需要提交注释。注释主要是方便团队成员知道你提交了什么和代码回滚,如当出现重大错误的时候能回退到某一版本。
2:代码提交和更新:为了减少冲突,建议每天上班之后更新程序,下班之前必须将稳定的程序提交,最好是做整体提交,有时候就是因为少提交了一个类导致编码错误。
3:少做全文格式化:全部格式化是最容易造成冲突的,所以假如当前类还有其他人在维护,建议不要做全文格式化,可以选中你自己的代码,做局部格式化。
 
编写代码:
1。警告:警告有时候也是很有用的,为了避免有用的警告被人忽略,代码里不允许出现警告。有警告的地方注释掉。
2:编码:先理清需求再写代码,可以先写注释再写代码,也可以用TDD的方式。
3:TODO:可以在未完成和存在坏味道的代码里加上TODO注释,以便下次解决。
4:多用快捷键,少用鼠标: 如Eclipse自动填充geter和seter的快捷键是alt+shirft+s后点r。
 
前端开放:
1:尽量用百分比:窗口和表格的宽度和长度尽量用百分比定义,而不用像素,用以在不同的分辨率下达到同样的效果。
2:使用FireBug和HTTPwatch调式样式和脚本
3:使用Fontpage做一些前端测试。如Flash遮住Iframe的问题。
 
Flex工程编译缓慢的解决方法:
1:将Flex工程按照模块拆分为多个工程。
2:AS文件不要经常修改。因为编译as文件很慢,但编译mxml还是很快的。
 
Flex模拟数据测试
我们可以在不启动服务器的情况下就对Flex程序进行测试。方法是是首先新建一个文件,名字叫XX.action,里面存放JSON数据或者XML数据,让Flex程序直接与这个XX.action进行通讯。可以在公共通讯方法上做一个开关,可以随时切换模拟数据和真实数据,用于客户演示和现场使用两种场景。
 
调式Flex 
调试的时候可以直接在URL后面加上?debug=true#
 
Flex的性能调优
我觉得Flex的垃圾回收不是很好,内存很难被回收掉,所以自己做了下Flex的性能监控,发现性能主要消耗在表格里带图片的渲染器,每当我滚动表格的时候,Flash会重新渲染图片生成新的对象,而旧的对象没有这么快被回收,内存会直线上升。
Flex IDE提供Flex profile插件进行性能监控,性能监控分为内存监控CPU监控。 进入Eclipse的“Flex Profile”视图,点击“Profile”。 新建一个监控的swf,然后双击这个SWF。 系统会自动弹出IE,访问你所监控的SWF。