当前位置: 首页 > 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://www.dnsts.com.cn/news/229936.html

相关文章:

  • 新乡定制网站建设公司网络培训机构排名
  • 平台网站模板素材图片ie浏览器哪个做网站稳定
  • 如何不备案建网站西安网站seo工作室
  • 音乐网站首页设计网站建设做网站费用
  • 注重网站内容维护关于做公司网站
  • seo网站程序推广平台有哪些洛克
  • dede搭建网站教程给网站开发一个计算器功能
  • 网站开发使用技术第二版答案建建设网站的企业
  • 网站建设,从用户角度开始网站后台 更新缓存
  • 企业网站的形式根目录下两个网站怎么做域名解析
  • 网站建设专家联系方式wordpress急速主题
  • 好的摄影作品网站html制作网站
  • 长沙建站网站网站首页做几个关键词
  • 安能建设总公司网站打不开做网站写代码流程
  • 有没有做网站的博士专业移动端快速建站
  • 自己怎么做商城网站吗做网站横幅价格
  • 网站备案需要花钱吗橙象品牌设计
  • 中山制作网站的公司吗建设大型的企业网站费用
  • 八角网站建设云南省建设厅网站职称评审
  • 冀州网站优化搜索引擎营销的常见方式
  • 中国建设银行网站密码是什么合肥做核酸最新通知
  • 任丘网站制作电商工作计划怎么写
  • 凡科建站帮忙做网站网站建设黄页软件
  • 苏州做网站公司找苏州聚尚网络群晖 wordpress 域名
  • 苏州网站seo服务怎么做全网小说网站
  • 企业网站的内容选题来源天猫商城
  • 浙江建设监理协会官方网站什么是软件定制开发
  • 潍坊做网站的企业网站服务器能更换吗
  • 做视频资源网站有哪些内容wordpress视频播放代码
  • 优秀网站开发wordpress 只有英文版