1:高扇入
扇入?扇入是什么东东?我以前还真不知道,仔细一看原来就是指被其它类或方法引用。那高扇入也就是说你这个类/方法…被很多其它类引用了。也就是利用率很高了。按照我的想法如果段代码我连写了三次,我就会把它单独作为一个方法或类

2: 低扇出
扇出自然就是引用其它类或方法了.按Bob大叔的说法,扇出越高,类就越不稳定,因为任何一个引用对象出问题了,这个类也就会出问题。另外McConnell 说了:引用超过约七个就算高扇出了. 对其它类的引用过多,导致该类不稳定(取决所有引用类)

3:松耦合
作为软件设计的军规之一。各部分的关联越少意味着你在测试,集成,维护的时候可以轻松不止一点点。

4:高内聚
也就是说一个类特别是一个方法应该专注于一件事。比如你的 I男朋友可以有陪女朋友()方法,但就不可以有写代码()方法。因为写代码()方法是I程序员接口才有的.
而在陪女朋友()方法中你不可以顺便就将花钱这个操作加在里面,因为偶尔有一次陪女友是陪她在家看电视的,自然也就不需花钱了

转载自:https://blog.csdn.net/xiongyingcai/article/details/14051461

高内聚 松耦合 高扇入 低扇出相关推荐

  1. 【设计模式】理解高内聚、松耦合

    "高内聚.松耦合"是一个非常重要的设计思想,能够有效地提高代码的可读性和可维护性,缩小功能改动导致的代码改动范围.很多设计原则都以实现代码的"高内聚.松耦合"为 ...

  2. 浅谈面向对象开发原则:高内聚,低耦合

    软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 这是软件工程中的概念,是判断设计好坏的标准,主要是面向OO的设计,主要是看类的内聚性是否高,偶合度是否低 ...

  3. 软件设计之——“高内聚低耦合”

    耦合度 一.什么是耦合度 软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 耦合度(Coupling)是对模块间关联程度的度量.耦合的强弱取决与模块间接口 ...

  4. Java编程思想之高内聚低耦合

    文章目录 1 前言 2 低耦合 2.1 耦合性定义 2.2 耦合性分类 2.3 使用低耦合 3 高内聚 3.1 高内聚定义 3.2 内聚性分类 4 示例 5 高内聚,低耦合的系统有什么好处呢 6 降低 ...

  5. 知识篇: 面向对象开发原则.高内聚.低耦合+Python安装详细教程+print输出带颜色的方法...

    面系那个对象开发原则.高内聚.低耦合 软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 这是软件工程中的概念,是判断设计好坏的标准,主要是面向OO的设计, ...

  6. 什么是高内聚,低耦合

    最近因为要学习springboot,又去看了一遍spring,在这里简单的再复习一下其中的核心思想. 如果觉得内容繁琐,可以直接看结论哦! # 什么是低耦合? 我们先来说低耦合,因为这个比较广为人知, ...

  7. 软件设计之——高内聚低耦合

    耦合度 一.什么是耦合度 软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 耦合度(Coupling)是对模块间关联程度的度量.耦合的强弱取决与模块间接口 ...

  8. 耦合关系从强到弱顺序_软件设计要求—“高内聚低耦合”

    耦合度 一.什么是耦合度 软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 耦合度(Coupling)是对模块间关联程度的度量.耦合的强弱取决与模块间接口 ...

  9. 设计模式之领航篇高内聚和低耦合

    概述内聚和耦合: 内聚和耦合不是软件工程的专有名词,但是在软件工程衡量软件的标准.但凡用到了这两个词,顿时就感觉了高大上.软件开发过程中遵循高内聚.低耦合的要求,能保证软件的系统的健壮性.内聚指的是独 ...

最新文章

  1. Python基础知识(第八天)
  2. SAP WebIDE UI5应用的几种启动方式
  3. 如何检查某个用户是否具有某个权限对象上定义的某种权限
  4. windows中 修改某种文件图标 的方法 (备忘)
  5. Arrays类中的binarysearch
  6. linux 接口 bridge vlan bonding,KVM配置BOND,BRIDGE,VLAN
  7. 实时导出正在运行的虚拟机或检查点
  8. Asp.net mvc中Controller的返回值
  9. python笔记:#010#运算符
  10. macOS安装配置rzsz(附博主安装过程中的错误解决)
  11. Extjs日期控件选择计算日期差值
  12. STM32+Zigbee模块实现串口通信获取传感器数据
  13. 鸿蒙系统能玩魔兽世界吗,魔兽世界TBC燃烧远征测试服,H英雄本的装备2小时内可以交易, 亲友们可以互相毛装备了...
  14. 服务器 关闭系统默认共享,默认共享还是有用滴!
  15. 杀死一只知更鸟的方法教会了我如何成为一名混乱大师
  16. 网页设计语言html做思维导图,纯css3实现思维导图样式示例
  17. 【转载】如何打领带-普瑞特结
  18. 翻译:数据页面和数据行
  19. intval()和int()
  20. main map java_Java从入门到实战之(12)Map示例大全(一)

热门文章

  1. 【python】纸箱抽奖
  2. win10计算机记录,如何在win10上记录计算机屏幕,如何在win10上记录屏幕
  3. openwrt旁路由的设置
  4. 308 permanent redirect怎么解决_「网站」WordPress网站更改固定链接以后怎么解决404错误...
  5. I/O复用:select、poll和epoll函数
  6. Spring Cloud Netfilx Ribbon(负载均衡工具)
  7. [游戏学习28] MFC 时钟
  8. GoDaddy 推出第四代虚拟主机
  9. WP8.1小梦词典开发1:金山词霸API使用
  10. oracle数据库恢复aul_Oracle终极数据恢复,孰弱孰强(DUL vs AUL)