由于以前做的项目都是采用后发制人式的思维,碰到需要什么了再写什么代码.
比如说一个CRUD,一般都是先写出一个简单的框框,碰到需要分页了就加入分页组件,碰到需要校验了就加入校验的支持.
这样的写法虽然说看起来比较敏捷,但是如果几个项目下来还是采用这样的方法,就感觉写程序的效率上有一个瓶颈,速度上去不,速度快了bug又很多.
于是这次struts2实践为了避免或者说减少以上问题.
1.采用project做项目计划以及wbs,把系统分解成不同的模块.
2.利用测试驱动的方式编写代码,定号一个service的接口后,直接先开始写service的测试用例,确定service所实现的功能.至少保证这些功能的正确性,并且在接口定义的过程中,适当的根据以往开发的经验预测一些系统前瞻性的功能需求,而不是一味想到什么做什么.
这里列出目前为止系统开发需要考虑的一些方面的内容
1.对于JPA,确定数据库映射的工具,至少可以从数据库生成实体类.
2.对于spring,确定事务配置的方法,已经依赖注入的模式(手动指定,或者autowired)
3.确定url和对应的action如何映射.
4.标记库的开发,已经系统需要使用到的一些常用功能的自定义标记(例如性别,yesno列表等等可以考虑封装成一个自定义的标记,这样不用每个页面都写一堆struts的tag)
5.加密解密模块(包括密码和某些querystring的加密解密,以及支持的加密解密的算法md,sha1,des等)
6.用户在线状态管理.
7.系统权限管理.
8.页面分页组件的开发.
9.表单校验.
10.测试驱动功能的实现.
11.ajax集成.
还有那些需要考虑的还请大家补充.
以上只是偶在实践开始阶段的一些感想,随时实践的不断进行,还有其他补充的想法,都需要记录下来.以供以后项目的需要.
比如说一个CRUD,一般都是先写出一个简单的框框,碰到需要分页了就加入分页组件,碰到需要校验了就加入校验的支持.
这样的写法虽然说看起来比较敏捷,但是如果几个项目下来还是采用这样的方法,就感觉写程序的效率上有一个瓶颈,速度上去不,速度快了bug又很多.
于是这次struts2实践为了避免或者说减少以上问题.
1.采用project做项目计划以及wbs,把系统分解成不同的模块.
2.利用测试驱动的方式编写代码,定号一个service的接口后,直接先开始写service的测试用例,确定service所实现的功能.至少保证这些功能的正确性,并且在接口定义的过程中,适当的根据以往开发的经验预测一些系统前瞻性的功能需求,而不是一味想到什么做什么.
这里列出目前为止系统开发需要考虑的一些方面的内容
1.对于JPA,确定数据库映射的工具,至少可以从数据库生成实体类.
2.对于spring,确定事务配置的方法,已经依赖注入的模式(手动指定,或者autowired)
3.确定url和对应的action如何映射.
4.标记库的开发,已经系统需要使用到的一些常用功能的自定义标记(例如性别,yesno列表等等可以考虑封装成一个自定义的标记,这样不用每个页面都写一堆struts的tag)
5.加密解密模块(包括密码和某些querystring的加密解密,以及支持的加密解密的算法md,sha1,des等)
6.用户在线状态管理.
7.系统权限管理.
8.页面分页组件的开发.
9.表单校验.
10.测试驱动功能的实现.
11.ajax集成.
还有那些需要考虑的还请大家补充.
以上只是偶在实践开始阶段的一些感想,随时实践的不断进行,还有其他补充的想法,都需要记录下来.以供以后项目的需要.