什么是软件结构?
软件结构(Software Structure)是指一种层次表况,由软件组成成分构造软件的过程、方法和表示。它是影响软件质量的内在因素,结构良好的软件可以提高软件的可靠性和易维护性。软件结构主要包括程序结构和文档结构。文挡描述的对象往往很复杂,所以文档结构需要简明、清晰和有层次。程序结构有两层含义,一是指程序的数据结构和控制结构;另一是指由比程序低一级的程序单位(模块)组成程序的过程、方法和表示。在后者含义下,具有代表性的是块结构和嵌套结构两种。块结构比较自然,各个部分之间通过一些公用变量取得联系,嵌套结构是在嵌套分程序的基础上引进局部性和动态性,以减少程序的初始信息量,嵌套结构不如块结构直观,调试不方便。
对于模块,可理解为具有如下特性的程序单位,即把这些模块组合成较大的程序时,不要求了解各个模块的内部工作细节,而各模块的正确性也不用置于整个程序中就可检查。按照面向对象的方法来构造软件时,这种模块的概念就可以理解为类(参见面向对象程序设计)。
有些程序是单模块结构,有些是多模块结构。这些模块在程序的逻辑上是不可分离的,可以用不同的程序设计语言编写,可以由相应的编译程序分别编译,可以和其它的程序单位组合并装入计算机内运行。由于编写大程序的需要,且模块可以多次使用,实行模块化是一个很好的手段。
由一组模块组成的大型程序可有三种结构,即顺序结构、并发结构和分布结构。顺序结构的程序是最古老的,所采用的程序设计语言是顺序程序设计语言,如ALGOL、FORTRAN、C等。并发结构的程序由若干个可以同时执行的模块组成。这些模块可以在多台处理机上并行执行,也可以在同一台处理机上交叉执行,所采用的程序设计语言是并发程序设计语言,如并发PASCAL、Modula-2等。分布结构的程序由若干个可独立运行的模块组成,这些模块可以分布于一个分布式系统中,在几台计算机上同时运行,所采用的程序设计语言是分布式程序设计语言。对于大型程序,也可以是这三种结构的混合。
相关视频
相关阅读 lol潘森重做时间 2019lol新版潘森什么时候上线dnf7月30日更新了什么 2019dnf7月30日更新内容一览iOS 12.4更新了什么 iOS 12.4更新内容一览lol9.15版本更新内容一览 lol9.15版本什么时候更新云顶之弈排位机制介绍 云顶之弈排位什么时候出云顶之弈虚空阵容搭配什么好 云顶之弈虚空阵容推荐lol云顶之弈凤凰属性是什么 lol云顶之弈冰晶凤凰技能属性介绍lol阿卡丽源计划皮肤长什么样 lol阿卡丽源计划皮肤特效视频一览
热门文章 小米路由器设置教程附共享有线路由后再接无TP-link无线路由器设置D-Link DI-524M路由器
最新文章
百度网盘解除黑名单摆百度不收录怎么办 百度
10款免费开源图表插件推荐ssid隐藏了怎么办?隐藏SSID的无线网络如何OneDNS设置教程两块网卡访问不同网络案例分享
人气排行 宽带连接图标不见了怎么办 宽带连接图标怎么dell 服务器开机总是提示按F1才能进系统解决dns是什么?dns怎么设置?buffalo无线路由器设置图文教程哪种WIFI无线各种加密方式更安全?ADSL宽带连接错误(720)及解决方法双网卡同时上内外网设置教程公司网络综合布线图解
查看所有0条评论>>