GameCard Refactoring Solution

1. 系统用例

                 

1. 修改要点说明

2.1. 业务知识

    目前供应商是有4家,以后可能还会有更多的业务进来,这样,要让系统可维护,可扩展就需要运用OO的思路对原有程序进行改造

2.2. 对可变化的业务进行封装以便重用

2.3. 针对结口编程,使系统可扩展

 

2. 系统设计类图

                  

3. 系统设计注解

 用列当中的每一种业务流程都是submit,verify,这里把submit,verify进行封装,然后在GameCard基类当中把ISubmit,IVerify接口当作属性,GameCard.SetSubmitInstance()方法用于初始化是哪一个种submit,例如:如果是OF业务,只要在OF的子类中重载GameCardSetSubmitInstance()方法,设置欧飞Submit,代码为

SetSubmitInstance(){     

    submit = new OFSubmit()

  }

这样系统再有其它业务进来的话,只要新增一个继承自GameCard的子类即可,如果submit,verify业务和之前的一些业务不同,则需要新增一个继承自submitverify接口的实现业务的子类,至此,系统实现可扩展

原文地址:https://www.cnblogs.com/zycblog/p/1772040.html