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

可以做哪方面的网站广州制作网站服务

可以做哪方面的网站,广州制作网站服务,想自己做个网站怎么做,本科毕业设计代做网站1.背景 2002 年罗伯特C.马丁给“接口隔离原则”的定义是#xff1a;客户端不应该被迫依赖于它不使用的方法#xff08;Clients should not be forced to depend on methods they do not use#xff09;。该原则还有另外一个定义#xff1a;一个类对另一个类的依赖应该建立… 1.背景 2002 年罗伯特·C.马丁给“接口隔离原则”的定义是客户端不应该被迫依赖于它不使用的方法Clients should not be forced to depend on methods they do not use。该原则还有另外一个定义一个类对另一个类的依赖应该建立在最小的接口上The dependency of one class to another one should depend on the smallest possible interface。 2.概念 接口隔离原则Interface Segregation PrincipleISP要求程序员尽量将臃肿庞大的接口拆分成更小的和更具体的接口让接口中只包含客户感兴趣的方法。 通俗的讲 一个类对另外一个类的依赖性应当是建立在最小的接口上的 一个接口代表一个角色不应当将不同的角色都交给一个接口。没有关系的接口合并在一起形成一个臃肿的大接口这是对角色和接口的污染 使用多个专门的接口比使用单一的总接口要好 不要强迫客户使用它们不用的方法如果强迫用户使用它们不使用的方法那么这些客户就会面临由于这些不使用的方法的改变所带来的改变 接口隔离原则和单一职责原则很像都是为了提高类的内聚性、降低它们之间的耦合性体现了封装的思想但两者是不同的 单一职责原则注重的是职责而接口隔离原则注重的是对接口依赖的隔离。 单一职责原则主要是约束类它针对的是程序中的实现和细节接口隔离原则主要约束接口主要针对抽象和程序整体框架的构建。 应用接口隔离原则的建议 接口尽量小但是要有限度既不能是大而全的接口也不能是一个方法一个接口这样就失去了面向抽象的意义应该按照功能的密不可分来定义接口而且应该是动态的因为随着业务发展功能需求是有变化的所以我们在设计的时候要考虑留好提前量避免抽象的变化 为依赖接口的类定制服务只提供调用者需要的方法屏蔽不需要的方法 了解环境拒绝盲从每个项目或产品都有选定的环境因素环境不同接口拆分的标准就不同深入了解业务逻辑 提高内聚减少对外交互使接口用最少的方法去完成最多的事情 3.案例分析 需求我们要开发一个学生成绩管理项目包含插入成绩、删除成绩、修改成绩、计算总分、计算均分、打印成绩信息、査询成绩信息等功能如果将这些功能全部放到一个接口中显然不太合理正确的做法是将它们分别放在输入模块、统计模块和打印模块等 3 个模块中。 /// summary/// 输入模块/// /summarypublic interface IInputModule{/// summary/// 添加成绩/// /summaryvoid Insert();/// summary/// 删除成绩/// /summaryvoid Delete();/// summary/// 修改成绩/// /summaryvoid Modify();}/// summary/// 统计模块/// /summarypublic interface ICountModule{/// summary/// 计算总分/// /summaryvoid CountTotalScore();/// summary/// 计算平均分/// /summaryvoid CountAverage();}/// summary/// 打印模块/// /summarypublic interface IPrintModule{/// summary/// 打印学生信息/// /summaryvoid PrintStudentInfo();/// summary/// 查询学生信息/// /summaryvoid QueryStudentInfo();}/// summary/// 实现类/// /summarypublic class StudentSoreList : IInputModule, ICountModule, IPrintModule{private StudentSoreList(){}public static IInputModule GetInputModule(){return (IInputModule)new StudentSoreList();}public static ICountModule GetCountModule(){return (ICountModule)new StudentSoreList();}public static IPrintModule GetPrintModule(){return (IPrintModule)new StudentSoreList();}public void Insert(){Console.WriteLine(输入模块的Insert()方法被调用);}public void Delete(){Console.WriteLine(输入模块的Delete()方法被调用);}public void Modify(){Console.WriteLine(输入模块的Modify()方法被调用);}public void CountTotalScore(){Console.WriteLine(统计模块的CountTotalScore()方法被调用);}public void CountAverage(){Console.WriteLine(统计模块的CountAverage()方法被调用);}public void PrintStudentInfo(){Console.WriteLine(打印模块的PrintStudentInfo()方法被调用);}public void QueryStudentInfo(){Console.WriteLine(打印模块的QueryStudentInfo()方法被调用);}}{//ISP:接口隔离原则IInputModule inputModule StudentSoreList.GetInputModule();inputModule.Insert();ICountModule countModule StudentSoreList.GetCountModule();countModule.CountTotalScore();IPrintModule printModule StudentSoreList.GetPrintModule();printModule.PrintStudentInfo();} 4.优缺点 优点 将臃肿庞大的接口分解为多个粒度小的接口可以预防外来变更的扩散提高系统的灵活性和可维护性 接口隔离提高了系统的内聚性减少了对外交互降低了系统的耦合性 如果接口的粒度大小定义合理能够保证系统的稳定性但是如果定义过小则会造成接口数量过多使设计复杂化如果定义太大灵活性降低无法提供定制服务给整体项目带来无法预料的风险 使用多个专门的接口还能够体现对象的层次因为可以通过接口的继承实现对总接口的定义 能减少项目工程中的代码冗余。过大的大接口里面通常放置许多不用的方法当实现这个接口的时候被迫设计冗余的代码 缺点 需要掌握接口细分的程度,如果太细,会造成接口膨胀,增加系统的复杂性
http://wiki.neutronadmin.com/news/56095/

相关文章:

  • 黄岛做网站哪家好龙岩网站建设方案优化
  • 艺术类考生有哪些专业画质优化app下载
  • 网站开发的基本流程图网站访问index.html
  • 云南做网站哪家好上海网络维护服务公司
  • ppt模板网站排行榜长沙九度网络科技
  • 常州做网站公司排名网站建设策划报价
  • 北京做环评备案的网站深圳市龙华区属于哪个区
  • 网站的管理在线包装设计软件
  • 江门建站价格前端如何做响应式网站
  • 嘉兴网嘉兴网站建设新乡seo公司
  • 建设网站有哪些好处安康码管理平台
  • 本地服务器域名解析网站建设网站域名解析错误怎么解决
  • 地和网站建设梧州网站建设流程
  • 网站怎么做市场分析县城服务网站如何做
  • 重庆中国建设银行招聘信息网站软件网站设计
  • 衣联网和一起做网站 哪家强网站建设投资风险分析
  • 国外有哪些优秀的网站开发板推荐
  • 网站建设项目需求分析网站导航如何用响应式做
  • 网站建设不备案后果wordpress请求接口数据库
  • 盘锦网站建设公司石家庄房产网最新楼盘
  • 哈尔滨门户网站设计报价wordpress外链自动保存
  • ps模板下载网站oa网站建设价格
  • 如何创建网站难吗最新网站建设视频
  • 集团公司网站建设求网站资源懂的2021
  • 住房城市乡建设部网站深圳市深度设计咨询有限公司
  • 营销型品牌网站建设价格哪些网站适合推广
  • 网站开发项目的需求分析湘阴网站建设
  • 网站建设课程ppt查询seo
  • 免费个人网站建设直播网站开发要多久
  • 国外创意网站欣赏怎么申请网站空间