浅析软件开发中的三层架构技术论文
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浅析软件开发中的三层架构技术论文
随着计算机的普及,人们在生活中越来越依赖计算机,因而对计算机软件也提出了更高的要求,要求计算机软件能够提供更加方便、快捷、周全的服务。这就对计算机软件开发技术提出了更高的要求,为了适应软件发展的需要,在计算机软件开发中更多地引入了三层架构技术。文章对此技术进行了具体的分析。
计算机普及之初,软件的开发使用的都是二层架构技术,即只考虑2个端点:客户端和服务器端。用户通过客户端界面所提供的数据,直接在客户端对数据进行计算和处理,然后通过服务器在数据库中对数据进行读取等操作,得出需要的最终结果,并将结果传输到客户端界面显示给用户。
在这种方式中,客户端直接和服务器对接,没有其他数据处理环节,有利于提高数据库数据读取的速度,但缺点是当计算机软件的任何一个部分发生更改,哪怕是最微小的变动,整个计算机软件都需要重新开发,限制了软件的通用性。特别是对于大型软件开发,除不利于软件的修改,在软件的开发期也存在很大的困难,需要程序编程人员相互高度配合,而且也不利于工作的分配。
为了解决这种矛盾,就出现了计算机软件的三层架构技术,将原先单一的客户端和服务器端的模式,根据功能分别拆分成表示层、业务逻辑层、数据访问层和数据实体层。采用“分而治之”的思想,把复杂的问题分成不同的部分,即不同的层,以便逐个解决问题,便于软件的设计、控制、资源分配和修改。为了让大家更好地了解三层架构技术,本文从几个方面对软件开发中的三层架构技术进行介绍。
1三层架构技术中具体分工和各层功能介绍
(1)表示层:主要是指适合用户与计算机的交互界面,目的是为了方便用户数据的输入和显示处理后的数据结果,这部分工作主要由界面的美工完成。软件设计人员通过表示层界面收集用户输入的数据要求,并把这些数据转换成业务逻辑层可以操作的数据。同时也把业务逻辑层传出的结果转换成客户想要的效果,通过文本、图片、动画、3D等格式显示在用户眼前。表示层也可以被理解为输入和输出的操作平台,我们可以创建一个图书馆,然后把客户要求设计成固定的元素:图片、脚本、CSS、附件等进行统一管理。
(2)业务逻辑层:又称为领域层,是表示层和数据访问层的中间桥梁,实现业务之间的逻辑处理,主要是对经过表示层输入的数据进行验证、计算和业务规则等方面的处理。在程序编写的过程中,主要体现在对象的方法、属性、事件、索引、接口等,通过这些手段,实现与数据访问层的对接。业务逻辑层的位置非常关键,它位于表示层与数据访问层的中间位置,对数据的交换起到了承上启下的作用。对于表示层而言,它是被调用者,而对于数据访问层而言,它是调用者,依赖与被依赖的关系都纠结在业务逻辑层上。
(3)数据访问层:直接和数据库中原始数据进行对接,是对数据底层的操作,主要包括对数据库中数据的增加、删除、修改、查找等操作。该层主要的功能是根据业务逻辑层的要求,把存储在数据库中的数据取出并提交给业务逻辑层,同时把业务逻辑层处理的数据结果保存到数据库。对数据库的操作,可以分为单表操作、关联表操作和不同数据库之间的操作。可以充分利用SQL语言中的Insert,,update,Select等语句,对数据库进行操作,同时返回不同的数据类型结果,例如DataTable,Bool,DataSet,DataReader等,将其生成DLL文件,然后通过组件的引用就可以现实数据访问的功能。
(4)数据实体层:就是数据库中的原始数据。为了能够更有效地存储原始数据,方便数据访问层对数据的存取等操作,就必须对数据库进行设计,将数据有规律地进行存放。
数据库设计是信息系统的核心和基础。首先我们应该对软件用户的业务数据的使用情况进行调查和分析,了解所有业务数据的种类、范围、数量、存在形式以及它们之间的关联情况,并由此确定用户对数据库的要求和相关制约条件等,形成用户的需求分析。
通过用户的需求分析,建立出一个合适的数学模型。这个数学模型应能够完整反映出现实中所有业务数据的信息结构、信息内容和信息之间的互相关联与制约关系,并满足用户对信息的存储、维护、检索和修改数据的操作要求等。
2三层架构技术的工作原理
首先,用一张图表示三层架构技术之间的关系(见图1)。
从图1中可以很清晰地看到四层之间的一个逻辑关系。用户通过表示层的界面输入数据,将数据传递给业务逻辑层进行验证、计算、处理等操作,然后传递给数据访问层,通过数据访问层到数据库中进行增加、删除、查找等操作,得到用户所需要的数据结果,将结果进行存储并把结果返回到数据访问层,再通过给业务逻辑层,最后以用户设定的格式显示在用户界面,最终用户得到自己需要的结果。四层中任意一层仅仅和自己相邻的层进行数据交换,而和其他层无任何关联。
三层架构技术,其实就相当于在客户端与数据库端之间加了一个“中间层”,也可以称之为组件层。这个“中间层”,并不是实际物理意义上的中间层,而指的是逻辑上的中间层,把应用程序中的业务规则、数据访问、合法性校验等工作
放到了中间层进行处理,客户端不再直接与数据库进行数据交互,而是通过中间层来建立连接,再由中间层和数据库进行数据的交互,最终实现客户端和数据库端的数据的交互。
3三层架构技术的规则
在软件开发的三层架构技术中,第四层数据实体层是基本的数据源,是必不可少的一层,是软件操作的基础,它的运算效果取决于计算机的硬件和数据库设计的合理性。而对于另外三层,并不是只要项目被划分成了表示层、业务逻辑层和数据访问层就称之为三层架构,这三层之间还必须要遵守一些约定的规则:
(1)表示层仅仅只是一个和用户进行对接的界面,因而可以将其任意移植到其他类似环境的项目中。
(2)数据实体层只能通过数据访问层进行数据读取,其他层都不能够直接从数据实体层中读取数据。
(3)数据访问层只能作为一个对数据库实体的读取中间层,而不能进行任何业务逻辑的处理操作。
(4)软件设计应该以业务逻辑层为核心,而不是数据访问层或是数据实体层,更不应该是表示层。在业务逻辑层应该以面向对象的方式,实现所有的有业务逻辑操作。
(5)数据层中所有的数据都应该在一定的抽象程度上做到与系统无关。
(6)设计的时候,所有的远程对象技术都应该考虑到不同的服务器和多台服务器之间的负载均衡作集群。
(7)这3个模块中的任意模块都可以运行在不同的服务器上。
一个项目是否需要进行三层设计,首先要看这个项目的复杂度。实际上,很