摘 要 在信息技術(shù)高速發(fā)展的時代,計算機軟件開發(fā)成為熱點的同時,其分層技術(shù)也逐漸優(yōu)化升級,本文通過對分層技術(shù)的概念及特點進行分析,挖掘分層技術(shù)在軟件開發(fā)中的作用,進而分析分層技術(shù)從雙層到五層技術(shù)的演進過程。
關(guān)鍵詞 計算機;軟件開發(fā);分層技術(shù)
中圖分類號:TM769 文獻標識碼:A 文章編號:1671-7597(2014)19-0074-02
現(xiàn)如今,從事計算機軟件開發(fā)的企業(yè)越來越多,軟件開發(fā)算得上是一門大學問,各個企業(yè)想要在軟件開發(fā)上占據(jù)優(yōu)勢,就需要深入了解分層技術(shù),分層技術(shù)的先進與否是決定軟件開發(fā)成功與失敗的關(guān)鍵。所以,對計算機軟件開發(fā)中分層技術(shù)進行探討顯得尤為必要。
1 分層技術(shù)的概念及特點
1.1 概念
計算機軟件開發(fā)中的分層技術(shù)的分層不僅僅是物理上所講的簡單分層次,還覆蓋計算機領(lǐng)域,是計算機軟件技術(shù)與物理學的有機結(jié)合。分層技術(shù)主要是指把不盡相同的解決方案放在不同的層次上,把這些所有的層級密封成一個系統(tǒng),而且所有層次在級別上都是平等的。
1.2 特點
分層技術(shù)在計算機軟件開發(fā)中具有三大優(yōu)點:1)分層技術(shù)使得軟件具有更大的擴展性,即軟件使用年限可以延長。對于復雜的系統(tǒng),運用分層技術(shù)可以進行分解,將不同功能劃分為不同層次,當軟件需要更新或者改造時,只需要針對所需改革的功能層進行適當改革,不需要對整個軟件進行修改,即可以簡化改造過程,節(jié)省成本,又可以重點突出;2)分層技術(shù)使得軟件改革的效率大大提高,同時也節(jié)省了開發(fā)時間。對于已經(jīng)不適合現(xiàn)狀的軟件,通過分層技術(shù)可以對其進行分層改革,這樣可以節(jié)省開發(fā)新軟件的時間,提高效率,也可以降低成本的同時保證軟件質(zhì)量;3)加快軟件的再次利用。分層技術(shù)是利用分層模式對功能層次接口進行定義,同時,分層技術(shù)可以讓軟件進行自行開發(fā),實現(xiàn)接口的無縫對接。
2 分層技術(shù)在軟件開發(fā)中的作用
2.1 三層技術(shù)
三層技術(shù)包含表現(xiàn)層(UI)、業(yè)務(wù)邏輯層(BLL)和數(shù)據(jù)訪問層(DAL)三層,是雙層技術(shù)的發(fā)展和延伸,提高了工作效率,也是目前普遍使用的分層技術(shù)。BLL主要是用來緩解UI的壓力的,將處理邏輯關(guān)系的工作賦予BLL,令UI的工作量減少,能夠更加專注的為用戶提供使用界面,實現(xiàn)人機互動。實際運行過程如圖1所示。
首先通過UI獲取用戶需求,然后將信息傳遞給BLL,BLL則將該信息進行分析,使得信息形式與數(shù)據(jù)庫相匹配,再將處理過的信息傳遞給DAL,DAL根據(jù)數(shù)據(jù)庫資料反饋用戶需求,傳遞給BLL,業(yè)務(wù)處理層再將信息形式轉(zhuǎn)化,使其符合用戶要求,最后傳遞給UI,通過UI反饋給用戶,實現(xiàn)一個信息的完整反饋過程。三層技術(shù)相對于雙層技術(shù)而言,可以有效降低數(shù)據(jù)分析壓力,提高工作效率。
圖1 三層技術(shù)分析圖
DAL實現(xiàn)了數(shù)據(jù)訪問間的接口。抽象出IDAL模塊,不再依賴于與具體數(shù)據(jù)庫,從而使數(shù)據(jù)庫便于遷移。DALFactory模塊負責管理DAL對象,便于BLL訪問。SQLServerDAL和OracleDAL則實現(xiàn)IDAL的接口,也就是就是對數(shù)據(jù)庫進行Select、Update、Insert和Delete操作。如圖2。
圖2 DAL運作方式
在三層體系中,用戶界面和應(yīng)用服務(wù)器可能在不同的設(shè)備上,這就涉及到不同機器之間的通信問題,也就是層間的通信和交互問題。我們已經(jīng)有了很多可以用于分布式遠程訪問的技術(shù),如CORBA,在Java平臺上,我們還有Java RMI、EJB,在Windows平臺上,從DCOM到COM+,再到.Net下的Web Service和.Net Remoting等。如何選用合適的遠程訪問技術(shù),也是我們在系統(tǒng)框架中需要考慮的問題。
2.2 四層技術(shù)
四層技術(shù)是在web技術(shù)高速發(fā)展的時代產(chǎn)生的。Web技術(shù)的發(fā)展使得計算機運算越來越復雜,對計算準確度與速度的要求也越來越高,然而,三層技術(shù)處理數(shù)據(jù)與邏輯關(guān)系的能力越來越力不從心,加上三層技術(shù)無法實現(xiàn)各層之間的相對獨立,這也不適應(yīng)web技術(shù)的發(fā)展。四層技術(shù)是在三層技術(shù)的基礎(chǔ)上添加了封裝層,四層分別為存儲層、業(yè)務(wù)邏輯層、數(shù)據(jù)層和web層。四層技術(shù)的運行過程取決于web層選擇哪條路徑,這也是web技術(shù)最先進的地方。當用戶數(shù)量較少,web層就會把信息直接發(fā)送給數(shù)據(jù)層,簡化處理過程;當用戶較多,處理過程要求較為復雜時,web層就會把信息傳遞給業(yè)務(wù)邏輯層,業(yè)務(wù)邏輯層將信息進行分析處理過后再傳遞給數(shù)據(jù)層,以提高工作效率。
2.3 五層技術(shù)
五層技術(shù)是在四層技術(shù)的基礎(chǔ)上將數(shù)據(jù)層分解為資源層和集成層。但到目前為止,五層技術(shù)的發(fā)展還未完善,在應(yīng)用中不具有普遍性。以下通過網(wǎng)上購物系統(tǒng)的運作粗略的解釋五層技術(shù)的運作過程。見圖3。
圖3 網(wǎng)上購物系統(tǒng)五層技術(shù)分析圖
從圖中不難發(fā)現(xiàn),信息從客戶層的界面?zhèn)鞒?,?jīng)過SLB到達web層的HTTP服務(wù)器,運用多個HTTP服務(wù)器,將信息又傳遞給業(yè)務(wù)層的應(yīng)用服務(wù)器,信息數(shù)量及種類越多,所需應(yīng)用服務(wù)器也就越多,然后,信息從應(yīng)用服務(wù)器傳遞給集成層的數(shù)據(jù)訪問服務(wù)器,數(shù)據(jù)訪問服務(wù)器的數(shù)量要少于應(yīng)用服務(wù)器,因為信息得到了一定的精化及整理,最后,通過數(shù)據(jù)訪問服務(wù)器將信息傳遞給storage,形成一個完整的傳遞過程。
3 結(jié)束語
隨著現(xiàn)代信息技術(shù)的不斷發(fā)展和進步,作為載體的計算機,其軟件開發(fā)工作也進入了快速發(fā)展的時期。計算機軟件開發(fā)也由于網(wǎng)絡(luò)環(huán)境的復雜性和用戶需求不斷的細化,使得分層技術(shù)在計算機軟件開發(fā)中起到了非常重要的作用。分層技術(shù)的運用不僅可以提高計算機軟件開發(fā)的效率,縮短開發(fā)的時間,還能降低軟件開發(fā)成本。
參考文獻
[1]劉娜.論計算機軟件開發(fā)中的分層技術(shù)運用[J].無線互聯(lián)科技,2013(05):57.
[2]焦麗平.試論計算機軟件開發(fā)中的分層技術(shù)運用[J].數(shù)字技術(shù)與應(yīng)用,2013(02):126.
作者簡介
周志強(1992-),男,漢族,重慶人,重慶文理學院,本科學生,研究方向:軟件開發(fā)。endprint