计算机软件开发中的分层技术探讨
2014-11-27周志强
摘 要 在信息技术高速发展的时代,计算机软件开发成为热点的同时,其分层技术也逐渐优化升级,本文通过对分层技术的概念及特点进行分析,挖掘分层技术在软件开发中的作用,进而分析分层技术从双层到五层技术的演进过程。
关键词 计算机;软件开发;分层技术
中图分类号:TM769 文献标识码:A 文章编号:1671-7597(2014)19-0074-02
现如今,从事计算机软件开发的企业越来越多,软件开发算得上是一门大学问,各个企业想要在软件开发上占据优势,就需要深入了解分层技术,分层技术的先进与否是决定软件开发成功与失败的关键。所以,对计算机软件开发中分层技术进行探讨显得尤为必要。
1 分层技术的概念及特点
1.1 概念
计算机软件开发中的分层技术的分层不仅仅是物理上所讲的简单分层次,还覆盖计算机领域,是计算机软件技术与物理学的有机结合。分层技术主要是指把不尽相同的解决方案放在不同的层次上,把这些所有的层级密封成一个系统,而且所有层次在级别上都是平等的。
1.2 特点
分层技术在计算机软件开发中具有三大优点:1)分层技术使得软件具有更大的扩展性,即软件使用年限可以延长。对于复杂的系统,运用分层技术可以进行分解,将不同功能划分为不同层次,当软件需要更新或者改造时,只需要针对所需改革的功能层进行适当改革,不需要对整个软件进行修改,即可以简化改造过程,节省成本,又可以重点突出;2)分层技术使得软件改革的效率大大提高,同时也节省了开发时间。对于已经不适合现状的软件,通过分层技术可以对其进行分层改革,这样可以节省开发新软件的时间,提高效率,也可以降低成本的同时保证软件质量;3)加快软件的再次利用。分层技术是利用分层模式对功能层次接口进行定义,同时,分层技术可以让软件进行自行开发,实现接口的无缝对接。
2 分层技术在软件开发中的作用
2.1 三层技术
三层技术包含表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)三层,是双层技术的发展和延伸,提高了工作效率,也是目前普遍使用的分层技术。BLL主要是用来缓解UI的压力的,将处理逻辑关系的工作赋予BLL,令UI的工作量减少,能够更加专注的为用户提供使用界面,实现人机互动。实际运行过程如图1所示。
首先通过UI获取用户需求,然后将信息传递给BLL,BLL则将该信息进行分析,使得信息形式与数据库相匹配,再将处理过的信息传递给DAL,DAL根据数据库资料反馈用户需求,传递给BLL,业务处理层再将信息形式转化,使其符合用户要求,最后传递给UI,通过UI反馈给用户,实现一个信息的完整反馈过程。三层技术相对于双层技术而言,可以有效降低数据分析压力,提高工作效率。
图1 三层技术分析图
DAL实现了数据访问间的接口。抽象出IDAL模块,不再依赖于与具体数据库,从而使数据库便于迁移。DALFactory模块负责管理DAL对象,便于BLL访问。SQLServerDAL和OracleDAL则实现IDAL的接口,也就是就是对数据库进行Select、Update、Insert和Delete操作。如图2。
图2 DAL运作方式
在三层体系中,用户界面和应用服务器可能在不同的设备上,这就涉及到不同机器之间的通信问题,也就是层间的通信和交互问题。我们已经有了很多可以用于分布式远程访问的技术,如CORBA,在Java平台上,我们还有Java RMI、EJB,在Windows平台上,从DCOM到COM+,再到.Net下的Web Service和.Net Remoting等。如何选用合适的远程访问技术,也是我们在系统框架中需要考虑的问题。
2.2 四层技术
四层技术是在web技术高速发展的时代产生的。Web技术的发展使得计算机运算越来越复杂,对计算准确度与速度的要求也越来越高,然而,三层技术处理数据与逻辑关系的能力越来越力不从心,加上三层技术无法实现各层之间的相对独立,这也不适应web技术的发展。四层技术是在三层技术的基础上添加了封装层,四层分别为存储层、业务逻辑层、数据层和web层。四层技术的运行过程取决于web层选择哪条路径,这也是web技术最先进的地方。当用户数量较少,web层就会把信息直接发送给数据层,简化处理过程;当用户较多,处理过程要求较为复杂时,web层就会把信息传递给业务逻辑层,业务逻辑层将信息进行分析处理过后再传递给数据层,以提高工作效率。
2.3 五层技术
五层技术是在四层技术的基础上将数据层分解为资源层和集成层。但到目前为止,五层技术的发展还未完善,在应用中不具有普遍性。以下通过网上购物系统的运作粗略的解释五层技术的运作过程。见图3。
图3 网上购物系统五层技术分析图
从图中不难发现,信息从客户层的界面传出,经过SLB到达web层的HTTP服务器,运用多个HTTP服务器,将信息又传递给业务层的应用服务器,信息数量及种类越多,所需应用服务器也就越多,然后,信息从应用服务器传递给集成层的数据访问服务器,数据访问服务器的数量要少于应用服务器,因为信息得到了一定的精化及整理,最后,通过数据访问服务器将信息传递给storage,形成一个完整的传递过程。
3 结束语
随着现代信息技术的不断发展和进步,作为载体的计算机,其软件开发工作也进入了快速发展的时期。计算机软件开发也由于网络环境的复杂性和用户需求不断的细化,使得分层技术在计算机软件开发中起到了非常重要的作用。分层技术的运用不仅可以提高计算机软件开发的效率,缩短开发的时间,还能降低软件开发成本。
参考文献
[1]刘娜.论计算机软件开发中的分层技术运用[J].无线互联科技,2013(05):57.
[2]焦丽平.试论计算机软件开发中的分层技术运用[J].数字技术与应用,2013(02):126.
作者简介
周志强(1992-),男,汉族,重庆人,重庆文理学院,本科学生,研究方向:软件开发。endprint