前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《架构整洁之道》第 10 章:ISP 接口隔离原则

《架构整洁之道》第 10 章:ISP 接口隔离原则

原创
作者头像
巴啦啦的积累
修改2023-07-17 17:32:30
2690
修改2023-07-17 17:32:30
举报
文章被收录于专栏:巴啦啦的积累

均为原创,读架构整洁之道的笔记。

接口隔离原则:(ISP :Interface Segregation Principle)。

通过名称可以得知,该原则主要偏向于接口设计。核心在于,不要依赖一个你不需要的东西。应该使用接口,将被依赖的类中的方法隔离出来,使得这个类依赖于该接口,而这个接口中的方法是干净的,所有方法,该类都会用到,而不会存在用不到的方法。即接口设计要小,要瘦

未进行接口隔离:

使用接口隔离:

ISP 与编程语言

之前是出于编译考虑,未用接口隔离,就需要让整个模块编译和部署,隔离后,就可以按需编译和部署。

但是弱类型语言,就不会存在这个问题,它们总是会在运行时将所有代码重新编译一次。

但是ISP不仅只是跟编程语言强相关设计原则,它还和架构有关。

ISP 与软件架构

设想有一个A系统,需要引入一个框架B,然而这个B强依赖于一个特定的数据库C。就相当于A也强依赖于C了,如果C中有Bug,或者对C中的功能有修改的话,那么就可能导致B要被重新编译部署,B要重新编译部署,那么A也要重新部署。如果C中一个无关功能发生了错误,那么也会让AB发生错误。

本章小结

在任何层次的软件设计中,如果依赖了它并不需要的东西,就会带来意料之外的麻烦。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ISP 与编程语言
  • ISP 与软件架构
  • 本章小结
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档