当前位置: 首页 > news >正文

智能网站排名优化网站抽奖模板

智能网站排名优化,网站抽奖模板,手机搜索引擎排名,网站备案信息地址一、接口隔离原则 1、原理 客户端不应该依赖它不需要的接口#xff0c;即一个类对另一个类的依赖应该建立在最小的接口上。如果强迫客户端依赖于那些它们不使用的接口#xff0c;那么客户端就面临着这个未使用的接口的改变所带来的变更#xff0c;这无意间导致了客户程序之…一、接口隔离原则 1、原理 客户端不应该依赖它不需要的接口即一个类对另一个类的依赖应该建立在最小的接口上。如果强迫客户端依赖于那些它们不使用的接口那么客户端就面临着这个未使用的接口的改变所带来的变更这无意间导致了客户程序之间的耦合。换种说法如果一个客户程序依赖于一个含有它不使用的方法的类但是其他客户程序确需要使用该方法那么当其他客户要求这个类改变时就会影响到这个客户程序。我们希望尽可能地避免这种耦合因此我们希望分离接口。 2、示例 2.1、迭代一 A类通过接口依赖B类B类实现接口全部方法但是A类只使用B类的func1、func2、func3等三个方法C类通过接口依赖D类D类实现接口全部方法C类使用到接口的func1、func4、func5等三个方法。UML类图如下 代码如下 #include iostream using namespace std;// Interface 接口 class Interface { public:virtual void func1();virtual void func2();virtual void func3();virtual void func4();virtual void func5(); };// B 类 class B : public Interface { public:void func1(){cout B 类实现 func1 endl;}void func2(){cout B 类实现 func2 endl;}void func3(){cout B 类实现 func3 endl;}void func4(){cout B 类实现 func4 endl;}void func5(){cout B 类实现 func5 endl;} };// D 类 class D : public Interface { public:void func1(){cout D 类实现 func1 endl;}void func2(){cout D 类实现 func2 endl;}void func3(){cout D 类实现 func3 endl;}void func4(){cout D 类实现 func4 endl;}void func5(){cout D 类实现 func5 endl;} };// 1、A类 通过Interface接口 依赖B类 // 2、A类使用到接口的1、2、3等三个方法 class A { public:void depend1(Interface i){i.func1();}void depend2(Interface i){i.func2();}void depend3(Interface i){i.func3();} };// 1、C类 通过Interface接口 依赖D类 // 2、C类使用到接口的1、4、5等三个方法 class C { public:void depend1(Interface i){i.func1();}void depend4(Interface i){i.func4();}void depend5(Interface i){i.func5();} };int main() {B objB;D objD;A objA;C objC;objA.depend1(objB);objA.depend2(objB);objA.depend3(objB);objC.depend1(objD);objC.depend4(objD);objC.depend5(objD);return 0; }上面代码存在的问题 接口对于类A与类C来说不是最小接口那么类B和类D必须去实现他们不需要的方法 2.2、迭代二 按照接口分离原则类A与类C分别于他们需要的接口建立依赖关系修改后的类图如下 3、结论 胖类会导致它们的客户程序之间产生不正常的并且有害的耦合关系。当一个客户程序要求该胖类进行一个改动时会影响到其他的所有的客户程序。因此、客户程序应该仅仅依赖于它们实际调用的方法。通过把胖类的接口分解为多个特定于客户程序的接口可以实现这个目标。
http://www.hkea.cn/news/14409963/

相关文章:

  • 网站开发语言怎么查中国免费企业建站
  • 中企动力做的网站被镜像温州快建网站
  • 网站地图抓取门户网站快速制作
  • 做网站程序员都要先做维护么网站建设程序制作
  • 网站建设吉金手指排名11做动漫的网站
  • 企业网站能提供哪些服务com域名续费一年要多少钱
  • 自己做网站要哪些东西上海公共招聘网
  • iis网站重定向设置做网站要钱么
  • 中山网站设计与建设利用模板做网站
  • 青岛开发区网站建设哪家好哈尔滨电子政务网站建设
  • 途牛的旅游网站是谁做的百度域名
  • 为什么网站建设还要续费软件开发要多少钱
  • 找投资项目的网站长沙网站seo优化排名
  • 赣州管理中心网站开发网站监控工具
  • 网站项目推广方案jsp简述网站开发流程图
  • 网址导航网址大全彩票网站大全互联网行业分为哪几类
  • 济南做网站哪家公司好太原网站建设公司怎么样
  • 做引流网站怎么赚钱赚谁的钱网站建设 工作建议
  • 上海网站工作室宁德网站建设
  • 大连建站系统模板智能获客系统
  • 怎样在网站上做免费的网业seo网站建设公司
  • 苏州企业网站建设设计制作公司电子商务网站建设与管理的理解
  • 做房产网站长专科函授网页设计实训报告
  • 怎么棋牌网站建设北京网站搭建费用
  • 关键词搜索引擎工具爱站wordpress 社区
  • 外贸网站推广怎样做企业网站建设时间表
  • 在线做图表的网站建设网站的分析报告
  • cms建站流程营销技巧 第一季
  • 怎么做一个免费网站网站后台有显示前台没有
  • 西双版纳州住房和城乡建设局网站wordpress登录菜单