模块化设计的一般准则
1.改进软件结构,提高模块独立性(易于合作开发、系统维护);
2. 顶层扇出高,中间扇出少,底层高扇入;
什么是扇入和扇出?
在软件设计中,扇入和扇出的概念是指应用程序模块之间的层次调用情况。
按照结构化设计方法,一个应用程序是由多个功能相对独立的模块所组成。
扇入:是指直接调用该模块的上级模块的个数(即被调用)。扇入大表示模块的复用程序高。
扇出:是指该模块直接调用的下级模块的个数(即调用)。扇出大表示模块的复杂度高,需要控制和协调过多的下级模块;
一个模块的扇出数过大或过小都不理想,过大比过小更严重。一般认为扇出的上限不超过7 .扇出过大一般是因为缺乏中间层次,应该适当增加中间层次的模块。
3.模块规模应适中;
4.模块的作用范围(影响范围)保持在该模块的控制范围内;
5.接口设计:
降低接口复杂程度(接口设计应使得信息传递简单并且与模块功能一致)
单入口单出口(以避免内容耦合,易于理解和维护)
相同的输入应该具有相同的输出
模块化设计的一般准则相关推荐
- 产品模块化设计的前世今生
模块设计最早源自软件设计的基本概念,在早期的软件设计中提出了针对产品功能的模块化设计. 在设计好软件的体系结构后,就已经在宏观上明确了各个模块应具有什么功能,应放在体系结构的哪个位置.我们习惯地从功 ...
- PCB模块化设计15——RF接口模块PCB布局布线设计规范
目录 PCB模块化设计15--RF接口模块PCB布局布线设计规范 1.天线设计指南 2.天线基础知识 3.天线类型 5. 知识分享 PCB模块化设计15--RF接口模块PCB布局布线设计规范 在硬件设 ...
- 模拟物流快递系统程序设计java_路辉物流设备:大件快递自动分拣系统的模块化设计...
物流企业运营所需的能源.劳动力.土地价格持续上涨,依赖"高投入.低产出"传统物流运作模式难以为继,面临着降低成本.提高效率.可持续发展的转型要求.快递行业对于新兴的大件快递消费需求 ...
- 基于ASP.NET Core的模块化设计: 虚拟文件系统
土牛亲自录制的本文介绍视频 Abp中文网(https://cn.abp.io/)提供翻译字幕 基于ASP.NET Core的模块化设计: 虚拟文件系统 简介 创建模块化的应用程序很困难. 构建模块化的 ...
- 单片机sleep函数的头文件_单片机代码模块化设计思想浅谈
前言:前段时间分享的文章[单片机裸机代码框架设计思路],很多读者给我留言,觉得很不错,对于初学者而言,这是一个进阶的技巧,对于我而言,这是对自己总结和表达能力的一个提升. 本文章我们再谈谈单片机代码的 ...
- dll模块化设计与编程_FPGA设计原则经验分享
一.面积和速度如何折中 面积和速度是芯片设计中一对相互制约.影响成本和性能的指标,贯穿FPGA设计的始终.在FPGA设计中,面积是指一个设计消耗的FPGA内部逻辑资源的数量,可以用消耗的触发器和查 ...
- 单片机c语言模块化实例程序设计,单片机C语言模块化设计
原标题:单片机C语言模块化设计 keil中实现 模块化编程.doc 在使用 KEIL 的时候,我们习惯上在一个.c 的文件中把自己要写的东西按照 自己思路的顺序进行顺序书写.这样是很普遍的写法,当程序 ...
- 如何模块化设计B端系统?
前言: 咱们都希望能做出一个可复用性强.灵活性好的B端系统出来. 那么,模块化设计就是其中一个很好的方法. 本文目录: 一.为什么要模块化设计? 二.适不适合模块化设计? 三.如何模块化设计B端系统? ...
- (15)FPGA模块化设计原则
(15)FPGA模块化设计原则 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)FPGA模块化设计原则 5)结语 1.2 FPGA简介 FPGA(Field Progra ...
最新文章
- gvim中进行verilog语言信号追踪、显示拓扑插件
- Count SIN Numbers
- 802.1X学习笔记
- 图像种类的基本概念整理
- C++,Java编程空指针的一个小细节
- oracle failover 区别,Oracle DG failover 实战
- 回调函数总结(个人见解)
- 前端学习(2772):uni图片预览
- python微博评论爬虫_详解用python写网络爬虫-爬取新浪微博评论 基于Python的新浪微博爬虫研究...
- mac mysql密码错误_解决mac 下mysql安装后root用户登录密码错误问题
- 使用Disentangling形式的损失函数回归2D和3D目标框
- java transient 应用场景_关于java:transient关键字的用途是什么以及何时使用它?...
- 打印机质量测试软件,打印质量测试
- GPS 相关知识科普
- Hadoop环境搭建 MYSQL环境配置
- PING用一生诠释了TCP/IP------二三层转发为PING劈荆斩棘(转载)
- javac提示信息变成英文
- 直播间几万人助力砍价到小数点后6位,依旧失败,拼多多再陷“砍价”风波
- 维特根斯坦思想概述南京大学陈亚军
- 期刊投稿状态_SCI 稿件在线投稿时遇到的几中状态