你可能喜欢
问答题
问答题
某系统界面类(如Form1、Form2等类)与数据访问类(如DAO1、DAO2等类)设计如图,类之间的调用关系较为复杂。请指出设计存在的问题,并基于迪米特法则进行重构。
问答题
某教学管理系统部分数据库访问类设计如图所示,请指出设计存在的问题,并基于合成复用原则进行重构。
问答题
一个拥有多个客户类的系统,在系统中定义了一个巨大的接口(胖接口)AbstractService来服务所有的客户类。如图所示,请指出设计存在的问题,并基于接口分离原则进行重构。
问答题
某系统提供一个数据转换模块,可以将来自不同数据源的数据转换成多种格式,如可以转换来自数据库的数据(DatabaseSource)、也可以转换来自文本文件的数据(TextSource),转换后的格式可以是XML文件(XMLTransformer)、也可以是XLS文件(XLSTransformer),原始设计方案如图所示,请指出设计存在的问题,并基于依赖倒转原则进行重构。
问答题
某系统需要实现对重要数据(如用户密码)的加密处理,在数据操作类(DataOperator)中需要调用加密类中定义的加密算法,系统提供了两个不同的加密类,CipherA和CipherB,它们实现不同的加密方法,在DataOperator中可以选择其中的一个实现加密操作。请指出设计存在的问题,并基于里氏代换原则进行重构。
问答题
某图形界面系统提供了各种不同形状的按钮,客户端代码可针对这些按钮进行编程,用户可能会改变需求要求使用不同的按钮,原始设计方案如图所示,请指出设计存在的问题,并基于开闭原则对该系统进行重构。