• 设计模式——外观模式


         外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。

         简单的说,外观模式就是把复杂的系统的具体操作封装起来,只暴露一个简单的接口,做和众多子系统之间松耦合。

         提到一个设计原则:最少知识原则,只和你的密友谈话。(HeadFirst中的描述)具体的说就是让类和类之间尽量松耦合,类与类之间的依赖降到最低,各司其职。

         迪米特法则:一个软件实体应当尽可能少的与其他实体发声相互作用。

         用一个注册公司的系统来说明问题:

         AIC 工商局
         BQS 质监局
         Bank 银行
         TaxB 税务局

        

    public interface AIC  {
    	void checkName();  
    }
    
    class BJAIC implements AIC {
    
    	@Override
    	public void checkName() {
    		System.out.println("检查名字是否有冲突!");
    	}
    
    }
    
    
    public interface BQS {
    	void  orgCodeCertificate();  //办理组织机构代码证
    }
    
    class BJBQS implements BQS {
    
    	@Override
    	public void orgCodeCertificate() {
    		System.out.println("在北京质检局办理组织机构代码证!");
    	}
    
    }
    
    public interface Bank {
    	void  openAccount();  //开户
    }
    
    
    class BJBank implements Bank {
    
    	@Override
    	public void openAccount() {
    		System.out.println("在北京银行开户!");
    	}
    
    }
    
    public interface TaxB {
    	void taxCertificate();  //办理税务登记证
    }
    
    
    class BJTaxB implements TaxB {
    
    	@Override
    	public void taxCertificate() {
    		System.out.println("在北京税务局办理税务登记证!");
    	}
    
    }
    
    public class RegisterFacade {
    	public void register(){
    		AIC  a = new BJAIC();
    		a.checkName();
    		BQS b = new BJBQS(); 
    		b.orgCodeCertificate();
    		TaxB  c  = new BJTaxB();
    		c.taxCertificate();
    		Bank  d = new BJBank();
    		d.openAccount();
    	}
    }
    
    public class Client {
    	public static void main(String[] args) {
    		//使用外观模式之后注册公司就是这么简单!!还有谁!!
    		new RegisterFacade().register();
    	}
    }
    

        

  • 相关阅读:
    winform 上传文件 (多种)
    获取Treeview中CheckBox选中项的技巧(winform)
    C#中class与struct的区别
    在SQL Server数据库中批量导入数据的四种方法
    小东西WinForm的等待窗口
    查询及删除重复记录的方法
    一些算法的复习和整理,争取每天一个算法
    POJ 2965 The Pilots Brothers' refrigerator
    HDU 1492 The number of divisors(约数) about Humble Numbers
    HDU 1495 非常可乐
  • 原文地址:https://www.cnblogs.com/wxisme/p/4541085.html
Copyright © 2020-2023  润新知