当前位置:网站首页>软件架构与设计(六)-----层次结构体
软件架构与设计(六)-----层次结构体
2022-07-28 14:38:00 【丨刘一丨】
层次结构体
层次结构将整个系统视为层次结构,其中软件系统被分解为层次结构中不同级别的逻辑模块或子系统。这种方法通常用于设计系统软件,如网络协议和操作系统。
在系统软件层次结构设计中,低级子系统向其相邻的上级子系统提供服务,从而调用较低级别的方法。下层提供更具体的功能,例如I / O服务,事务,调度,安全服务等。中间层提供了更多与域相关的功能,如业务逻辑和核心处理服务。而且,上层提供了诸如GUI,shell编程设施等用户界面形式的更抽象的功能。
它也用于组织类库,如命名空间层次结构中的.NET类库。所有设计类型都可以实现这种层次结构,并且经常与其他架构风格相结合。
分层建筑风格划分为 -
- 主子程序
- 主从
- 虚拟机
主子程序
这种风格的目的是重用模块并自由开发单个模块或子程序。在这种风格中,软件系统通过根据系统的所需功能使用自上而下的细化来划分为子程序。
这些细化是垂直领先的,直到分解的模块简单到足以承担独家责任。功能可以被上层的多个呼叫者重用和共享。
将数据作为参数传递给子程序有两种方法,即 -
通过值 - 子程序仅使用过去的数据,但不能修改它。
通过参考&minu; 使用子程序以及更改参数引用的数据的值。

优点
边栏推荐
- MIT pointed out that the public pre training model should not be used indiscriminately
- QCustomPlot绘图工具常用方法
- subst命令将一个文件夹镜像成本地的一个磁盘
- Matlab导出高清图片、且Word中压缩不失真、转换PDF不失真
- 4.8 HD-GR GNSS导航软件源码
- Leetcode - number of operations, non repeating numbers, diagonal traversal, Joseph Ring
- How many of the top ten test tools in 2022 do you master
- Grpc frequently asked questions
- Nftscan and nftplay have reached strategic cooperation in the field of NFT data
- 7、实时数据备份和实时时钟相关定义
猜你喜欢

Daily question (retrospective)

sql语句的执行流程

No files or folders found to process

Tencent interview -- please design a thread pool to implement sequential execution

DataTables warning: table id=campaigntable - cannot reinitialize datatable. solve

程序员的自我修养

基于RSocket协议实现客户端与服务端通信

2022年最火的十大测试工具,你掌握了几个

Nftscan and nftplay have reached strategic cooperation in the field of NFT data

机器学习的3大“疑难杂症”,因果学习是突破口 | 重庆大学刘礼
随机推荐
Opencv - cut out mask foreground area from grayscale image
Pytorch - sequential and modulelist
【删除指定数字——leetcode]
[leetcode] binary search given an N-element ordered (ascending) integer array num and a target value target, write a function to search the target in num. if the target value exists, return the subscr
Table lock query and unlocking in SQL development part 1
机器学习的3大“疑难杂症”,因果学习是突破口 | 重庆大学刘礼
游戏测试的概念是什么?测试方法和流程有哪些?
Tencent interview -- please design a thread pool to implement sequential execution
Write a standard character device driver with your hands
4. Main program and cumulative interrupt processing routine implementation code
NFTScan 与 NFTPlay 在 NFT 数据领域达成战略合作
Execution process of SQL statement
Chrome plug-in debugging
提速1200倍!MIT开发新一代药物研发AI,吊打老模型
MySQL 8.0 common (continuous update)
Flowable workflow all business concepts
The difference between character array and string
DataTables warning: table id=campaigntable - cannot reinitialize datatable. solve
Deepfacelab model parameters collection
全国211院校考研信息汇总整理