zoukankan      html  css  js  c++  java
  • 大话设计模式笔记 迪米特法则 外观模式

    迪米特法则(LoD) 最少知识原则,如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。

    在类的结构设计上,每一个类都应当尽量降低成员的访问权限。

    根本思想,是强调了类之间的松耦合。

    这一章有点水,不是很直观。

    外观模式(Facade),为子系统中的一组接口提供一个一致的界面,此模式定义一个高层接口,这个接口使得这一子系统更加容易使用。

    1.在设计初期阶段,应该要有意识的讲不同的两个层分离。MVC,层与层之间建立外观Facade。

    2.在开发阶段,子系统往往因为不断的重构演化而变得越来越复杂,增加外观Facade可以提供一个简单的接口,减少他们之间的依赖

    3.在维护一个遗留的大型系统时,可能这个系统已经非常难以维护的扩张了,可以为新系统开发一个外观Facade类,来提供设计粗糙或高度复杂的遗留代码的比较清晰简单的接口。让新系统与Facade对象交互,Facade与遗留代码交互所有复杂的工作。

    package facade;
    
    public class SubSystemOne {
    
        public void methodOne() {
            System.out.println("SubSystemOne");
        }
    }
    package facade;
    
    public class Facade {
        SubSystemOne one;
        
        public Facade(){
            one=new SubSystemOne();
        }
        
        public void methodA() {
            System.out.println("methodA ------ ");
            one.methodOne();
        }
        
        public static void main(String[] args) {
            Facade facade=new Facade();
            facade.methodA();
        }
    }
  • 相关阅读:
    页面灰色样式
    替换页面中出现的链接
    Google Earth无法连接到服务器
    知识扩展(线程SQL、SMTP、POP3、反射)
    oracle 11g 客户端 连接数据库
    Oracle 下载|ORACLE 官网下载地址(支持win7/win2008)
    WCF返回xml
    IE和FireFox下的JS调试工具
    在IIS中部署WCF服务出现authentication mode=windows
    Ext入门(Window、Panel、Viewport、Grid、Form、TreePanel)
  • 原文地址:https://www.cnblogs.com/linkarl/p/4838960.html
Copyright © 2011-2022 走看看