zoukankan      html  css  js  c++  java
  • 6大设计原则之接口隔离原则

    接口隔离原则的定义

    什么是接口.

    1. 实例接口,比如定义了一个Person类,然后 Person p = new Pserson(); 产生一个实例,Person类就是 p 的接口
    2. 类接口,就是Java中使用 interface 定义的接口

    什么是隔离

    隔离要求将接口尽量细化,同时接口中的方法尽量少.

    接口隔离原则的实现

    比如现在有一个人,他身兼数职,是一个老师,要教书,是一个学生,要学习,类图如下:

    153206895076055072ec6f1 (310×289)

    如果有一天,他不在教书了,或者又有了新的职业,那我们还要修改调用该类的代码,更好的做法是将臃肿的接口变更为几个独立的接口

    1532069279806572d680b26 (623×338)

    在使用时的时候通过接口调用.接口是我们设计时对外提供的契约,通过分散定义多个接口,可以预防未来变更的扩散,提高系统的灵活性和可维护性.

    接口的规范约束

    1. 接口要尽量小,这是接口隔离原则的核心定义,但是"小"是有限度的,首先就是不能违背单一职责原则.
    2. 接口要高内聚,高内聚就是提高接口、类、模块的处理能力,减少对外的交互.具体就是,要求在接口中尽量少公布 public 方法,接口是对外的承诺,承诺越少对系统的开发越有利,变更的风险也就越少,同时也有利于降低成本
    3. 定制服务,定制服务就是单独为一个个体提供优良的服务,只提供访问者需要的方法
    4. 接口设计是有限度的,接口的设计粒度越小,系统越灵活.但是,灵活的同时也带来了结构的复杂化,开发难度增加,可维护性降低,所以接口设计一定要注意适度.

    接口隔离原则就是对接口的定义,同时也是对类的定义,接口和类尽量使用原子接口或原子类来组装.

  • 相关阅读:
    VS2010引用App_Code下的类文件问题解决方法
    Sql server 2008 sa用户开启教程
    ASP.NET中App_Code,App_Data等文件夹的作用
    错误提示: (provider: Named Pipes Provider, error: 40 Could not open a connection to SQL Server)
    treeview展开一个节点就关闭其他节点
    ASP.NET AJAX Toolkit的安装过程
    c++推荐读物
    for()的多参数
    模板函数I n p u t
    这次真的是下定决心了
  • 原文地址:https://www.cnblogs.com/hujingnb/p/10171519.html
Copyright © 2011-2022 走看看