极限编程+敏捷开发实践
极限编程:xp主要针对软件开发的生命周期
用户故事,CRC卡片,测试先行涉及,版本发布,迭代计划
敏捷模型驱动开发:AMDD主要针对建模
只做那些足够好且必要的建模工作迭代开发,以客户为中心
程序安全性
事务管理
企业级事务管理接口1、管理本地事务<只有一个DB>;2、全局事务<JTA>
通过程序使用事务,通过声明来使用事务
异常处理(一致的异常层级结构)
时间调度任务,发送邮件重构:是一种有纪律性的技术,它是对现有代码的重建,改变它的内部结构而不改变外部功能。
适用于:数据库设计,架构,文档,构建集成脚本等
敏捷开发以重构为基础。
敏捷开发者应该在数据建模,对象建模,重构,映射,实现和性能调整等问题上反复迭代。
在编码的同时编写单元测试面向接口编程
定义规范
JS调试器:VenkManhttp://www.mozilla.org/projects/venkman/
业务知识和技能的传递是产品可持续发展的重要因素。
软件需求规格说明书或产品规格说明书
架构设计文档
项目管理计划
敏捷开发中,注重概念和架构设计,而轻详细设计。
这里的概念设计,可以看成是为什么要做这个产品或模块,强调的是产品的路线规划、市场趋势、客户价值、技术趋势等。
架构设计,可以看成从整体上看,概念设计应该用什么方式实现、分几个层次、
多少组件、不同层次和组件之间关系是什么。详细设计,则是具体的设计和做法、API接口等。
框架的引入:规范程序员编码行为,写出高质量的应用程序。(多学习框架的设计思想)积累过硬的赚钱本领
spring与Struts2整合
1、配置spring监听器
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener><context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml,classpath*:applicationContext-*.xml</param-value>
</context-param>
<constantname="struts.objectFactory"value="spring"/>
<constant name="struts.objectFactory.spring.autoWire" value="type|name" />Struts2中class属性指定ClassName非BeanId,那么Struts会负责创建Action对象<action name="login" class="com.struts2.action.LoginAction">
spring与hibernate整合
<?xml version="1.0" encoding="UTF-8"?>
<beansxmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">