guokehua(@yahoo.com.cn oy Java! 38设计模式(1) 1010 郭克华J2EE框架实战教学视频
oy Java! J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 38设计模式(1)
guokehua(@yahoo.com.cn 什么是模式 ‖模式提供了一个解决方案,它是一种设计 方法,而不是一种编程技术 ○降低耦合性 ○增加灵活性 Spring提供了降低耦合性的一种工具 设计模式提供了常见应用中降低耦合性的设计 思想 郭克华J2EE框架实战教学视频
J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 什么是模式 模式提供了一个解决方案,它是一种设计 方法,而不是一种编程技术 {降低耦合性 {增加灵活性 Spring提供了降低耦合性的一种工具 设计模式提供了常见应用中降低耦合性的设计 思想
guokehua(@yahoo.com.cn 设计模式:本课的目标 ●创建模式:创建对象 OFactory, Builder, Singleton ●结构模式:组合对象 O Adapter Decorator FLyweight, Proxy ●行为模式 O State. memento OBserver, Strategy, visitor 郭克华J2EE框架实战教学视频
J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 设计模式:本课的目标 z创建模式:创建对象 {Factory,Builder,Singleton… z结构模式:组合对象 {Adapter,Decorator… {Flyweight,Proxy… z行为模式 {State,Memento… {Observer,Strategy,Visitor…
guokehua(@yahoo.com.cn 工厂模式 场景:在 Action里面,我们要调用 CustomerDAo的 login方法,传统情况下你用什么代码? CustomerDAO cao= new CustomerDAOO dao login( ●考虑以下情况: O如果cdao在实例化的时候还要做一些准备工作? ○如果该 Action以后可能要切换到另一个 Studentdao,也调 用 login方法 ○如何让 Action的开发人员只需要懂得要实例化哪个对象, 而不需要知道怎样实例化? ●工厂模式可以解决这个问题 ●可以用 Spring来封装工厂类 郭克华J2EE框架实战教学视频
J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 工厂模式 z 场景:在Action里面,我们要调用CustomerDAO的 login方法,传统情况下你用什么代码? CustomerDAO cdao = new CustomerDAO(); cdao.login(); z 考虑以下情况: { 如果cdao在实例化的时候还要做一些准备工作? { 如果该Action以后可能要切换到另一个StudentDAO,也调 用login方法。 { 如何让Action的开发人员只需要懂得要实例化哪个对象, 而不需要知道怎样实例化? z 工厂模式可以解决这个问题 z 可以用Spring来封装工厂类
guokehua(@yahoo.com.cn 工厂模式要 ●用接口将需要实例化的类管理起来 ●开发工厂类,编写创建方法,传入参数 工厂类根据客户端传入参数决定实例化 哪个对象,返回 ●可以利用反射来降低耦合性 ●举例第一个 Spring框架的例子 郭克华J2EE框架实战教学视频
J guokehua@yahoo.com.cn 郭克华J2EE框架实战教学视频 工厂模式要点 z用接口将需要实例化的类管理起来 z开发工厂类,编写创建方法,传入参数, 工厂类根据客户端传入参数决定实例化 哪个对象,返回。 z可以利用反射来降低耦合性 z举例:第一个Spring框架的例子