软件按功能划分为系统软件、支撑软件和应用软件三大种类,这三大种类的软件在不同领域中发挥着重要的作用。我们所有软件的运行和开发都是建立在系统软件之上的,而支撑软件是用来构件系统软件,让系统变得更加完美,应用软件则主要是解决实际生活中的一些问题,反映了生活。
软件的分类体现了软件开发的多样性,普通较简单软件在开发过程中不需要较多的技术支持,但是遇到较庞大的工程如:系统软件、一些应用软件的开发时,就要考虑软件规范化的开发。软件体系架构的设计是软件设计很重要的一环,不同类型的软件要使用不同的体系架构,好的架构能够提高软件的可扩展性、可复用性、可维护性,并实现松散耦合的目的。也就是说好的架构能够较容易的实现功能扩展和后期的维护,同时实现代码或逻辑的复用等。
软件体系架构的重要性不言而喻。在软件体系架构中,分层结构是最常见的,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,自上至下分别为:表示层、业务逻辑层、数据访问层,如下图所示:
在我们日常生活中也常常能够看到三层的概念,诸如下面所见的场景:
饭店将整个业务分解为三部分来完成,每一部分各负其责,服务员只管接待顾客、向厨师传递顾客的需求;厨师只管烹炒不同口味、不同特色的美食;后勤工作人员只管提供美食原料;他们三者分工合作共同为顾客提供满意的服务。在饭店为顾客提供服务期间,服务员、厨师、后勤工作人员,三者中任何一者的人员发生变化时都不会影响其他俩者的正常工作,只对变化者进行重新调整即可正常营业。
我们用三层结构开发的软件系统于此类似,表示层只提供软件系统与用户交互的接口;业务逻辑层是表示层和数据访问层之间的桥梁,负责数据处理和传递;数据访问层只负责数据的存取工作。重点强调服务员、厨师、采购员三者中当任何一者发生变化时都不会影响到其他两者的正常工作,而且可以同时分工协作,类似三层结构各层之间的“高内聚,低耦合”特点。
饭店业务员之间的工作是协同的,他们之间只需有相关人员的协调即可实现工作的正常进行。在三层中就是我们通常所说的接口,一旦定义好各层次之间的接口,开发人员就可以分散关注,齐头并进,这也是我们分层设计的一个目的。分层设计主要是为了达到:分散关注、松散耦合、逻辑复用、标准定义的目的。
分享到:
相关推荐
----C#----三层架构实例----示例源码----Visual Studio
该系统采用三层架构,分别是展现层、业务逻辑层和数据存取层。 展现层使用JSP技术实现,主要负责用户界面展示和用户交互。设计了用户注册、登录、发帖、回帖、搜索等多个JSP页面。业务逻辑层使用Servlet技术实现,主要...
作为web开发人员,我们的生活围绕着数据操作。我们建立数据库来存储数据,写编码来访问和修改数据,设计网页来采集和汇总数据。本文是研究在ASP.NET 2.0中实现这些常见的数据访问模式之技术的长篇系列教程的第一篇。...
当前在第二层(L2)交换和第三层(L3)交换的发展过程中出现了与此相类似的现象。从技术的角度来看,L2交换与网桥有着相似的特点,即价格低廉和易于使用。在最近三年中,L2交换市场从零发展为价值数十亿美元。在...
数据结构的设计与应用 摘要:数据结构是数据的逻辑结构、物理存储结构及算法的封装,本文... 2如何进行数据结构的设计 应用数据结构解决生活中的问题的首要前提是研究应用什么数据结构解决生活中的问题 。其分析步骤为
阐述了可编程控制器PLC在电梯控制系统中的应用,介绍了三层楼电梯的PLC控制系统的总体设计方案、设计过程、组成,列出了主要硬件电路、I/O分配表、电梯的控制梯形图及指令表,并给出了系统组成框图和程序流程图。...
北京专版2020中考生物复习方案主题三生物体的结构层次课时训练05细胞的结构和生活试题
在传统的校园网网中,网络通常是三层结构。三层网络结构是采用层次化架构的三层网络,有三个层次:核心层(网络的高速交换主干)、汇聚层(提供基于策略的连接)、接入层(将工作站接入网络)。网络结构相对复杂,网络管理...
本资源来自微软msdn.microsoft.com。 这三个文件分别介绍了MFC类层次结构。 第一个文件:直接继承自CObject所有类结构 第二个文件:继承自CCmdTarget 与 Cwnd类结构层次 第三个文件:非继承自CObject类的所有类
摘 要:针对企业信息服务的特点 ,阐述了基于J 2EE 的三层B/ S企业信息系统的构建方法 , 分析了J 2EE与企业数据库之间的接口连接问题 ,最后结合实际情况 ,给出了一个银行企业信息系 统的设计方案,并讨论了系统代码实现...
用.net 三层架构做的一个动态网页,有登录、首页、注册
4. 针对云计算系统中的虚拟机跨三层网络迁移问题,将新型互联网架构思想和无线网络中的移动性管理思想与云计算技术相结合,提出了一种基于身份与位置分离的虚拟机动态迁移方案。通过将虚拟机的身份标识与位置标识相...
作为 web 开发人员,我们的生活围绕着数据操作。我们建立数据库来存储数据,写编码来访问和修改数据,设计网页来采集和汇总数据。本文是研究在 ASP.NET 2.0 中实现这些常见的数据访问模式的技术,我们将从创建一个...
机器学习用于预测模型,基于该模型我们需要执行数据的高级分析,并使用物联网,我们促进授权机制,以此为基础,我们识别适当的数据接收者和云,以利用三层架构管理数据服务。 我们介绍了我们提出的架构,旨在通过云...
三层结构:表现层、业务层、持久层 设计模式:Model(模型)、View(视图)、Controller(控制器) Mybatis框架是一个基于ORM的持久化框架,Mybatis框架不是一个完整的ORM实现,而是半自动化的ORM实现。Mybatis框架的...
现代美好生活体验中心方案设计效果图三。现代美好生活体验中心方案设计总平面图。现代美好生活体验中心方案设计首层平面图。现代美好生活体验中心方案设计夜景图。现代美好生活体验中心方案设计艺术设计。
系统采用MVC三层架构,分为视图层、控制层和模型层。视图层使用JSP技术实现,控制层使用Servlet技术实现,模型层使用JavaBean和JDBC技术实现数据持久化。 在视图层,设计了小区公告、问答、交易、活动等多个页面,使用...
对于有保留价值又有后退余地的建筑物,采用后退方法代替拆除,可节省大量技资,且不影响2层以上工厂生产和居民生活,一举三得。 9-34-1-2多层框架结构整体平移技术 1.改造原有建筑使其成为可移体 可移体的条件是能够...
本系统采用的是典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由...
从技术架构上来看,物联网可分为三层:感知层、网络层和应用层。 感知层由各种传感器以及传感器网关构成,包括二氧化碳浓度传感器、感知终端。感 知层的作用相当于人的眼耳鼻喉和皮肤等神经末梢,它是物联网获识别...