【摘要】计算机技术的普及改变了现代生产生活的面貌。而随着计算机应用场景的不断丰富,人们对计算机软件系统的要求越来越高,在此情况下,人们不断探索出运用各种分层技术来进行软件开发,从而赋予软件更强大的功能和服务。本文对分层技术相关内容进行了概述,进而对各种分层技术在计算机软件开发中的应用展开探讨。
【关键词】分层技术;计算机技术;软件开发
中图分类号:TN94文献标识码:A文章编号:1673-0348(2020)012-127-03
1.分层技术概述
分层技术是伴随着现代计算机技术发展与应用需求不断提升而探索出的一种新型软件开发技术思路。该技术在计算机软件开发中的应用使得软件开发从最初的二元结构得以实现多元结构的构建,并为软件开发提供了更广阔的平台。在分层技术的应用下,现代社会发展中各种复杂场景的应用需求如商场管理、网络购物等都可以得到满足,从而进一步提升了现代社会生产生活的效率,使计算机软件发挥出更大价值。
对于计算机软件开发而言,分层技术最突出的贡献就在为其提供了一个更为合理的多元结构体系,且进一步提升了软件系统流程的清晰度,使软件结构更具层次性,更易于使用、管理和后期维护。计算机软件开发领域内的分层技术实际上就是将计算机软件分成不同的层,针对每一层都制定相应解决方案,并设定出每一层的工作流程。这些层既可以看作一个独立模块,与其他层同属相同等级,但实际上每一层与其他层之间又存在联系,共同组成了一个整体系统框架,能够相互配合实现一定的系统功能。从分层技术的结构特点可以发现,该技术对于软件架构的开发是作用最為明显的,且目前已经被广泛应用于各领域的软件开发应用中,并成为现阶段软件开发中的一种十分重要的技术手段。
相较于其他软件开发技术,分层技术具有诸多优势。首先,其具有易于优化维护的优势。分层技术能够将软件划分为不同的功能层次,各层次都有其相应的一套流程。因此如果想要对软件进行优化升级,可以首先从各层次优化升级进行考虑,然后针对性的进行优化调整,如此就极大简化了软件的优化维护难度。其次,分层技术具有安全性特点,即软件中的不同功能分层对其他层的影响较小,因此如果软件某一层功能出现问题,其通常仅会对本层造成影响,而不会影响其他层的功能发挥,这就使软件的安全性得到极大提升。再次,分层技术具有较强适应性。即分层技术在软件设计过程中可以根据实际需求不断添加层级,从而使其能够满足各种领域功能多元化的要求,极大提升了软件开发的适应性。最后,分层技术具有更高成本优势。运用分层技术对软件进行开发能够极大的简化开发难度,缩短开发周期,从而在一定程度上减少了开发成本。因此,分层技术也具有经济性的优势。
2.计算机软件开发中分层技术的具体应用
目前已经在计算机软件开发中得到应用的分层技术主要有双层结构技术、三层技术、四层技术、五层技术以及中间件技术。
2.1双层结构技术的应用
双层结构技术是是软件开发领域中最早使用的一种分层技术。其分层较少,只包含服务器与客户端两个层次。其中客户端层次主要由用户进行各种操作与控制从而形成指令再将指令传递到服务器,如此就可以使各种工作模块根据指令进行工作并将工作信息进一步反馈至客户端。在双层结构模式下,软件的运行容易受用户数量与服务器性能影响,所以随着现代计算机与网络的发展,这种技术已经无法满足庞大用户量下的软件使用要求。
2.2三层技术的应用
三层技术是在双层结构上增加了一个应用服务器。其层次构成主要有表现层(UI)、业务逻辑层(BLL)以及数据访问层(DAL)。其中业务逻辑层用于减轻表现层的工作压力,其主要负责处理逻辑关系,从而使表现层解脱出来可以更多的将功能投向为用户提供良好的使用界面,提升人机互动体验。其具体工作模式如图1所示。
根据图1可以发现,实际运行中表现层负责获取用户需求并将之传递至业务逻辑层。业务逻辑层对用户需求进行分析并通过比对数据库从中匹配到相关信息然后进一步将信息传送给数据访问层,随后数据访问层就会从数据库种获取资料信息并反馈至业务逻辑层,该层对信息进行转化处理后再反馈至表现层,最终反馈给用户。从这一过程来看,业务逻辑层将原本双层结构的分析压力进一步分摊,从而使各层压力都进一步降低,从而极大提升了工作效率。同时,数据访问层进一步抽象出了IDAL模块,其数据访问不用再依靠具体的数据库,这也为数据的迁移提供了更大便利。而数据访问层则由专门的DALFactory模块进行管理,使业务逻辑层的访问更为便利。IDAL接口则由SQLServerDAL与OracleDAL共同实现,从而使数据库的Select、Update、Insert与Delete操作得以实现。
在软件设计中,三层技术使得用户界面与应用服务器可以同时存在于不同设备上,从而使软件开发还需要解决通信问题,但这在实际开发中则需要根据具体情况进行科学设计,以确保软件不同层次间能够形成有效交互。
2.3四层技术的应用
四层技术是伴随现代web技术的发展而产生的。在web技术广泛应用于计算机领域后,其进一步加剧了计算机运算的复杂性,使得计算机运算的压力陡增,这对计算机运行速度提出更大考验。在此情况下,运用三层技术开发出的计算机软件在数据处理和逻辑关系处理方面已经显得过于落后,效率低下,且其层与层之间无法做到相对独立。基于此,人们探索出四层技术,即进一步在三层技术的基础上增加一个封装层,从而形成了以存储层、业务逻辑层、数据层以及web層为主的四层次结构。在四层结构下,软件的运行直接由web层所选择的路径决定,从而使软件运行可以根据实际用户需求进行合理处理层次的选择。如用户量较少时,web层就会利用数据层直接进行处理,但如果用户较多,则会选择以业务逻辑层进行处理,然后再交由数据层处理,从而保证数据处理效率,提升运行能力。
2.4五层技术的应用
五层技术是在四层技术上进一步发展出来的,其将数据层进一步拆分为资源层与集成层,从而形成了以业务层、客户层、资源层、web层以及集成层为主的五层结构。其中业务层与客户层是在三层技术中拓展出来的,其能提供更为持久的访问数据。而应用层与集成层则用来构成数据库或文件系统。目前,五层技术已经在众多领域的软件开发中得到应用,且产生了各种复杂的计算机软件系统,为满足一些复杂的应用需求提供了技术支持。如当前常用的网上购物系统基本都是在五层技术下开发出来的。
网上购物系统多是在J2EE操作平台上进行开发的。其中用户界面为用户提供输入请求的渠道,而SLB负责在服务器上对用户请求进行分配并扩充系统。Server可以对进程进行分配或自行添加。同时HTTP服务器负责在web服务器上生成动态页面并传递至客户端。其中应用服务器则负责实现整个网上购物流程。
在具体设计中,五层技术各层之间遵循上下层关系,不能出现跨层。同时同一层之间的解决方案不能互相调用。在分析处理上要从服务层出发,对系统所需要的功能实施分析。此外,要注意将系统中的实体转化为领域模型,然后以此为基础设计数据的DAO层。在service层的设计上,主要需要控制其service数量,尽可能将多个模块集中于一个service。
以某网上购物系统为例,其具体运行程序为:信息从客户层界面传出,通过SLB至web层的HTTP服务器中,然后服务器再通过交叉传递方式使之进一步传送到业务层中。在此过程中,信息数量与种类的增加就会导致应用服务器也必须随之增加。同时信息会在集成层的数据访问服务器中被精细化与整理,最后传送到storage完成整个信息传递程序。
2.5中间件技术的应用
中间件技术虽然也是分层技术的一种,但却与其他分层技术有着本质区别。具体而言该技术主要被作为软件开发中一种独立的系统软件出现,能够帮助开发人员规避各种较为复杂的开发技术,从而使软件开发更容易。相较于其他分层技术而言,中间件技术具有开发效率高、易于优化软件、更高安全性等特点,对计算机软件开发提供了更强大的技术支持。
应用中间件技术开发软件,其进一步实现了对计算机资源的整合,从而使软件功能被充分发挥。但该技术也实际应用中也存在一定局限,即中间件服务需要依靠专门API与协议来运行,因此其对不同用户的相互操作带来不便,不利于服务的互通。此外,利用中间件开发软件本身也具有一定的风险,在现代技术发展速度日益加快的过程中,以中间件服务为基础的应用开发将面临越来越大的失败几率。
3.结束语
随着计算机技术的持续发展,分层技术还会结合现实应用需求而不断创新出更多的应用方式,从而为软件开发提供更多技术支持。基于此,就要求我们继续加强对分层技术、计算机软件开发等的研究力度,以使软件开发水平能够寻求新的突破。