23
2020
10

什么是设计模式?你是否在你的代码里面使用过任何设计模式?

 设计模式是世界上各种各样程序员用来解决特定设计问题的尝试和测试的方法。设计模式是代码可用性的延伸。
23
2020
10

请列举出在JDK中几个常用的设计模式?

单例模式(Singleton pattern)用于Runtime,Calendar和其他的一些类中; 工厂模式(Factory pattern)被用于各种不可变的类如 Boolean,像Boolean.valueOf; 观察者模式(Observer pattern)被用于 Swing 和很多的事件监听中; 装饰器设计模式(Decorator design pattern)被用于多个 Java IO 类中。
23
2020
10

如何综合使用我们学过的设计模式来构建合理的应用程序结构

是采用接口进行隔离,然后同时暴露值对象和工厂类,如果是需要数据存储的功能,又会通过DAO 模式去与数据存储层交互。
23
2020
10

什么是替换法则(LSP)

 使用指向基类(超类)的引用的函数,必须能够在不知道具体派生类(子类)对象类型的情况下使用
23
2020
10

什么是开放-封闭法则(OCP)

 可扩展但是不可以更改已有的模块 对扩展是开放的 对修改是封闭
23
2020
10

代码示例:DAO模式的实现方法

public interface CustomerDAO {public int insertCustomer(...);public Collection selectCustomersVO(...);}
23
2020
10

简述什么是DAO模式,以及他解决的问题,应用的环境,解决的方案,模式的本质

 数据访问对象 解决问题:根据数据源不同,数据访问也不同。根据存储的类型(关系数据库、 面向对象数据库、纯文件等)和供应商实现不同,持久性存储(如数据库)的访问差别也很大。如何对存储层以外的模块屏蔽这些复杂性,以提供统一的调用存储实现。程序的分布式问题 解决方案:式将数据访问逻辑抽象为特殊的资源,也就是说将系统资源的接口从 其底层访问机制中隔离出来;通过将数据访问的调用打包,数据访问对象可以 促进对于不同数据库类型和模式的数据访问。 DAO的本质就是一层屏蔽一种变化 本质:分层,是系统
23
2020
10

代码示例:值对象模式的实现方法

public class UserModel{    private String userId;    private String userName;    public void setUserId(String id){        this.userId = id;    }    public String getUserId(){ 
23
2020
10

简述什么是值对象模式,以及他解决的问题,应用的环境,解决的方案,模式的本质

用来把一组数据封装成一个对象的模式 解决问题:在远程方法的调用次数增加的时候,相关的应用程序性能将会有很大的下降 解决方案:使用值对象的时候,可以通过仅仅一次方法调用来取得整个对象,而不是使用多次方法调用以得到对象中每个域的数值 本质:就是把需要传递的多个值封装成一个对象一次性传过去
23
2020
10

简述什么是工厂模式,以及他解决的问题,应用的环境,解决的方案,模式的本质

利用工厂来解决接口选择的问题的模式 应用环境:当一个类无法预料要创建哪种类的对象或是一个类需要由子类来指定 创建的对象时,就需要用到工厂模式 解决方案:定义一个创建对象的接口,让子类来决定具体实例化哪一个类 本质就是根据不同的情况来选择不同的接口