高内聚低耦合

高聚合 低耦合

a 夏天 提交于 2020-03-11 07:55:13
    先插入一条广告,博主新开了一家淘宝店,经营自己纯手工做的发饰,新店开业,只为信誉!需要的亲们可以光顾一下!谢谢大家的支持! 店名:    小鱼尼莫手工饰品店 经营:    发饰、头花、发夹、耳环等(手工制作) 网店:    http://shop117066935.taobao.com/ 马上开始正题...     聚合、耦合是软件工程中的概念   首先要知道一个软件是由多个子程序组装而成, 而一个程序由多个模块(方法)构成! 而 内聚 就是指程序内的各个模块之间的关系紧密程度, 耦合 就是各个外部程序(子程序)之间的关系紧密程度.  所以:   为什么要高内聚?  模块之间的关系越紧密,出错就越少!   为什么要低耦合?  子程序间的关系越复杂,就会产生更多的意想不到的错误!会给以后的维护工作带来很多麻烦!      参考:http://zhidao.baidu.com/link?url=PoHie_tj6ZGLKJexQIXnWSVniIsXU_LJo5nER5ZsruBNsKbuQUB4atBb6u0DOvJiNHdptCbsQEP5-1ltfVw3FK 店名:  小鱼尼莫手工饰品店经营:  发饰、头花、发夹、耳环等(手工制作)网店:  http://shop117066935.taobao.com/ 来源: https://www.cnblogs.com

高软测试

帅比萌擦擦* 提交于 2020-01-07 07:47:47
一、 选择题( 1 题 3 分,共 30 分) 1、 在键盘上与字母 A 处于同一行的键是( C ) A 、 M B 、 U C 、 ‘ D 、 R 2、 软件工程的出现主要是由于( C ) A、 程序设计方法学的出现 B 、其他工程科学的影响 C 、软件危机的出现 D 、计算机的发展 3、 适合与面向对象方法的软件生命周期模型是( B ) A 、瀑布模型 B 、喷泉模型 C 、螺旋模型 D 、增量模型 4、 结构化瀑布模型的生命周期中,哪一个环节出错,对软件影响最大( C ) A、 详细设计阶段 B 、概要设计阶段 C 、需求分析阶段 D 、编码阶段 5、 模块化内聚性最高的是( D ) A 、逻辑内聚 B 、偶然内聚 C 、数据内聚 D 、功能内聚 6、 软件测试的目的是( B ) A、 评价软件质量 B 、发现软件错误 C 、找出软件所有错误 D 、证明软件是正确的 7、 对象实现的数据与操作的 ( B ) ,外部 不可见。 A 、结合 B 、封装 C 、隐藏 D 、抽象 8、 软件结构图中,各模块之间若有直线连接,表示有( B )联系。 A 、继承 B 、调用 C 、组成 D 、链接 9、 为了 有效的提高软件的可维护性 ,应该( A ) A、 养成好的程序设计风格 B 、注意模块的独立性 C 、注意使用文档 D 、保存测试文件与用例 二、 填空题 ( 1 空 1 分,共

KISS(Keep It Simple & Stupid)

∥☆過路亽.° 提交于 2019-12-22 19:21:37
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> KISS(Keep It Simple & Stupid) KISS(Keep It Simple & Stupid):保持精简,并且看起来很“愚蠢”。 在软件开发中,一个系统会变得越来越庞大, 系统熵(复杂度) 会变得越来越大,导致我们越来越难以hold整个系统(智商问题¯_(ツ)_/¯)。所以我们引入了 KISS原则 来使**系统熵(复杂度)**保持稳定的数值。 统一命名 一个好的统一命名风格,有利于系统的扩展和维护,推荐驼峰命名法。 使用静态语言 静态语言的合理使用,能最大程度的保证代码重构后的影藏问题,在编译期就可以fix。不过有些场合非常却不是这样子,比如说浏览器,Shell等。静态或者动态语言还是需要综合考量。 微服务架构设计 当系统变的越来越大的时候,我们不能简单的通过将单体架构运行在多个PC上做负载均衡来达到性能上的突破,而应该将整个集群看成一个系统,使用微服务的概念优化整体设计。 高内聚低耦合设计 高内聚 高内聚是指对程序中功能相近的点进行独立化, 如果两个模块之间的修改, 互不影响则说明模块之间是高内聚的。 高内聚意味可维护性,可重写性,因为模块对外部的依赖少(功能的完备性)。模块的内聚和其担当的职责成反比,即模块的职责越多,模块的内聚性越低。 如何划分出一个模块, 这就需要 关注点分离。