黎乾坤
分層技術(shù)是指在軟件開發(fā)過(guò)程中將每一個(gè)環(huán)節(jié)都進(jìn)行分類劃分,每一層根據(jù)需要制定出完全不同的解決方案,并設(shè)計(jì)出具體的工作流程,各個(gè)層次地位平等,相互聯(lián)系,互相協(xié)調(diào)共同構(gòu)成完整的軟件系統(tǒng)。分層技術(shù)可以融合軟件制作過(guò)程中的具體方案和操作過(guò)程,解釋各個(gè)層次之相互依賴的關(guān)系,建立一個(gè)相互獨(dú)立又相互依存的開放性系統(tǒng)結(jié)構(gòu)。在使用分層技術(shù)時(shí)需要結(jié)合實(shí)際情況和客戶的具體需求,采用科學(xué)合理的處理方法,利用各層次之間的聯(lián)系,建立一套完整封閉的系統(tǒng),發(fā)揮計(jì)算機(jī)軟件的各項(xiàng)功能,滿足消費(fèi)者的不同需求[1]。
在計(jì)算機(jī)軟件開發(fā)過(guò)程中利用分層技術(shù),可以提高軟件開發(fā)質(zhì)量,縮短軟件開發(fā)周期和成本,提升軟件可靠性以及開發(fā)效率。分層技術(shù)主要有以下特點(diǎn):
1)拓展性。分層技術(shù)對(duì)計(jì)算機(jī)功能開發(fā)和性能具有拓展作用。它可以根據(jù)軟件開發(fā)者的需求適當(dāng)?shù)倪M(jìn)行簡(jiǎn)化分解,或者進(jìn)行拓展升級(jí),使計(jì)算機(jī)軟件的功能多樣化,確保其在設(shè)計(jì)完成后可以高效運(yùn)行和升級(jí)優(yōu)化。
2)提高開發(fā)率。分層技術(shù)不僅提高了軟件的有效開發(fā)率,而且也為軟件的可靠運(yùn)行提供了保障。在軟件開發(fā)過(guò)程中使用分層技術(shù),可以根據(jù)實(shí)際需求合理改造原本的計(jì)算機(jī)系統(tǒng),這樣就可以縮短開發(fā)時(shí)間提高開發(fā)效率。
3)獨(dú)立性。分層技術(shù)的使用,使得計(jì)算機(jī)軟件架構(gòu)中的每一層面都是獨(dú)立存在的,當(dāng)有某一層面發(fā)生故障時(shí),不會(huì)對(duì)其他層面造成影響。這種獨(dú)立性可以保證每一層面的功能不受其他層面功能的影響,保證軟件的有效運(yùn)行。
4)穩(wěn)定性。分層技術(shù)的使用提高了軟件開發(fā)效率,縮短開發(fā)周期,有利于軟件的穩(wěn)定運(yùn)行,提升軟件的可靠性,有助于保證計(jì)算機(jī)整體運(yùn)行的穩(wěn)定性。
5)操作便捷。使用分層技術(shù)可以根據(jù)實(shí)際需求定義軟件功能層接口,實(shí)現(xiàn)軟件的自然研發(fā)和優(yōu)化,利用標(biāo)準(zhǔn)接口將功能層連接在一起,使得軟件的二次開發(fā)和優(yōu)化更加便捷。
為滿足不同人對(duì)于軟件的需求,計(jì)算機(jī)軟件開發(fā)技術(shù)不斷更新完善,摒棄了原有的單層處理技術(shù),向分層技術(shù)處理模式發(fā)展。分層技術(shù)主要有雙層、三層、四層、五層、中間件,下面針對(duì)這些技術(shù)的應(yīng)用進(jìn)行分析。
雙層技術(shù)主要是由數(shù)據(jù)庫(kù)的服務(wù)器和客戶端構(gòu)成,客戶端主要是提供用戶界面和邏輯處理,服務(wù)器接收到客戶端下達(dá)的指令以后,在一定的演算模式下并結(jié)合驗(yàn)算公式將得出的結(jié)論和數(shù)據(jù)終端進(jìn)行反饋和鏈接[2]。這種結(jié)構(gòu)下如果使用客戶數(shù)量較少,計(jì)算機(jī)的處理速度較快,反饋的信息也比較準(zhǔn)確,但是如果計(jì)算機(jī)所使用的客戶數(shù)量較多時(shí),計(jì)算機(jī)的擴(kuò)充性能、識(shí)別能力、數(shù)據(jù)處理能力等就會(huì)相應(yīng)下降,容易導(dǎo)致計(jì)算機(jī)系統(tǒng)癱瘓,因此雙層技術(shù)逐漸被淘汰,三層技術(shù)出現(xiàn)并投入使用。
三層技術(shù)是為了彌補(bǔ)二層技術(shù)的缺陷而產(chǎn)生的,其主要由客戶端、數(shù)據(jù)服務(wù)端和應(yīng)用服務(wù)器三者構(gòu)成。應(yīng)用服務(wù)器對(duì)二層技術(shù)的數(shù)據(jù)處理進(jìn)行了優(yōu)化,當(dāng)計(jì)算機(jī)使用客戶數(shù)量過(guò)多時(shí),應(yīng)用服務(wù)器就可以分擔(dān)一部分客戶量,減少數(shù)據(jù)服務(wù)器的加載量。在計(jì)算機(jī)軟件開發(fā)過(guò)程中使用三層技術(shù),不僅可以提高計(jì)算機(jī)信息訪問(wèn)效率,還實(shí)現(xiàn)了計(jì)算機(jī)與人之間的信息溝通,從而大大提高了計(jì)算機(jī)軟件的應(yīng)用效率。現(xiàn)實(shí)應(yīng)用過(guò)程中,三層技術(shù)分為3個(gè)層次:1)業(yè)務(wù)處理;2)界面處理;3)數(shù)據(jù)處理。業(yè)務(wù)處理主要提取相關(guān)數(shù)據(jù)后將申請(qǐng)?zhí)峤恢翑?shù)據(jù)層,此層次主要是分析用戶需求,界面處理層次負(fù)責(zé)將收集來(lái)的用戶需求數(shù)據(jù)進(jìn)行加工,然后將處理過(guò)的數(shù)據(jù)提交至業(yè)務(wù)處理層次,數(shù)據(jù)處理層次對(duì)從界面處理層次接收到的信息再次進(jìn)行分析,得出的結(jié)果將會(huì)反饋給業(yè)務(wù)層次[3]。三層技術(shù)在計(jì)算機(jī)使用過(guò)程中分工不同,但區(qū)分明顯,層次分明,能夠極大地提高工作效率,另外,用戶環(huán)境復(fù)雜的條件下,不易區(qū)分這些層次。
現(xiàn)如今,計(jì)算機(jī)行業(yè)的發(fā)展越來(lái)越快,整體大環(huán)境的發(fā)展使得四層技術(shù)逐漸涌現(xiàn),且該技術(shù)也是現(xiàn)在比較先進(jìn)的,明顯縮短了軟件的開發(fā)用時(shí),也使得系統(tǒng)的穩(wěn)定性能更加顯著。根據(jù)用戶對(duì)計(jì)算機(jī)界面、數(shù)據(jù)庫(kù)功能、業(yè)務(wù)等不同類型的需要,使得計(jì)算機(jī)三層技術(shù)逐漸向四層技術(shù)發(fā)展。四層技術(shù)包含4 個(gè)層面:Web 層;數(shù)據(jù)層;存儲(chǔ)層;業(yè)務(wù)邏輯層。四層技術(shù)是將之前的三層技術(shù)作為基礎(chǔ),對(duì)其進(jìn)行了一個(gè)更為細(xì)致的劃分。其中Web 層使用不同方式進(jìn)行開發(fā),降低了系統(tǒng)的拓展性及維護(hù)性難度,數(shù)據(jù)層能夠隱藏系統(tǒng)所涉及的所有數(shù)據(jù)及代碼,業(yè)務(wù)邏輯層主要負(fù)責(zé)將數(shù)據(jù)層傳輸?shù)臄?shù)據(jù)傳遞至Web層進(jìn)行處理,根據(jù)不同用戶的實(shí)際要求,在對(duì)象和關(guān)系數(shù)據(jù)庫(kù)間對(duì)系統(tǒng)軟件進(jìn)行映射處理,以此滿足人們對(duì)數(shù)據(jù)修改及存儲(chǔ)的需求,且可以極大滿足計(jì)算機(jī)軟件對(duì)對(duì)象層的不同需要,同時(shí)還可以規(guī)避一些網(wǎng)絡(luò)通信細(xì)節(jié)帶來(lái)的問(wèn)題。該技術(shù)根據(jù)用戶的不同需求,能夠根據(jù)指令對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行處理,處理過(guò)后的數(shù)據(jù)將會(huì)傳輸至網(wǎng)絡(luò)層,使數(shù)據(jù)與數(shù)據(jù)之間能夠?qū)崿F(xiàn)彼此的轉(zhuǎn)換,數(shù)據(jù)層能夠?qū)鬏攣?lái)的數(shù)據(jù)進(jìn)行分析,并對(duì)其進(jìn)行整合后對(duì)不同數(shù)據(jù)設(shè)置不同的應(yīng)用權(quán)限,如進(jìn)入頁(yè)面需要使用的代碼等,計(jì)算機(jī)的硬件設(shè)備能夠與系統(tǒng)軟件的數(shù)據(jù)層緊密的匹配、交換、鏈接,是計(jì)算機(jī)能夠更加高效運(yùn)轉(zhuǎn),并實(shí)現(xiàn)優(yōu)化計(jì)算機(jī)系統(tǒng)的目的。
五層技術(shù)對(duì)計(jì)算機(jī)系統(tǒng)的整體架構(gòu)進(jìn)行了更加細(xì)致的劃分,主要應(yīng)用于J2EE 的環(huán)境需求,包含了客戶層、集成層、資源層及三層分層結(jié)構(gòu)中分化產(chǎn)生的Web 應(yīng)用層,該層級(jí)實(shí)現(xiàn)了在計(jì)算機(jī)服務(wù)器系統(tǒng)中穩(wěn)定運(yùn)行的要求,此技術(shù)開發(fā)出來(lái)的軟件也能夠?qū)崿F(xiàn)在不同設(shè)備上使用,極大的滿足了不同用戶的需求,且可以根據(jù)系統(tǒng)功能的不同形成不同的組件完成任務(wù),在J2EE 購(gòu)物系統(tǒng)中,不同用戶在該平臺(tái)輸入不同購(gòu)物需求,客戶端服務(wù)器可以有效的匹配不同的用戶需求,如利用Serer 算法進(jìn)行分配,系統(tǒng)將會(huì)根據(jù)不同用戶的實(shí)際需要增加Server數(shù)量,滿足客戶量較大的需求,也能夠使計(jì)算機(jī)系統(tǒng)始終處于最佳狀態(tài),系統(tǒng)服務(wù)器協(xié)助不同客戶完成不同交易需求,此分層技術(shù)實(shí)現(xiàn)了系統(tǒng)的全面拓展,對(duì)于不同設(shè)備也能進(jìn)行安裝使用,同時(shí)也將分層技術(shù)推動(dòng)至一個(gè)全新的領(lǐng)域[4]。
中間件技術(shù)是近年來(lái)誕生的一種全新技術(shù),是建立在計(jì)算機(jī)系統(tǒng)不斷更新的基礎(chǔ)上的,應(yīng)用范圍較其他技術(shù)更為廣泛,其擁有其他技術(shù)沒(méi)有的獨(dú)立性,實(shí)際的操作過(guò)程中,能夠有效地避免其他技術(shù)出現(xiàn)的復(fù)雜技術(shù)問(wèn)題,節(jié)省了人力、物力、財(cái)力,縮短了軟件開發(fā)所使用的時(shí)間,確保計(jì)算機(jī)系統(tǒng)能夠有效合理地正常運(yùn)作,同時(shí)大幅提升了開發(fā)人員的工作效率,提升了系統(tǒng)應(yīng)用的全面性。根據(jù)技術(shù)要求的不同,可分為多種技術(shù)類型。MOM 中間件技術(shù)主要通過(guò)消息列隊(duì)的中間件完成應(yīng)用程序的間接通信,與本地系統(tǒng)程序通信,簡(jiǎn)化了軟件開發(fā)的形式,RPC 中間件技術(shù)則能夠更加便捷有效地滿足用戶需求,即便是在復(fù)雜的環(huán)境中,該技術(shù)也能夠解決軟件編程時(shí)所遇到的細(xì)節(jié)技術(shù)問(wèn)題,RPC 技術(shù)只能應(yīng)用于小范圍的系統(tǒng)中,對(duì)于大型應(yīng)用,該技術(shù)存在一定的缺陷,無(wú)法滿足大用戶的需求。未來(lái)的技術(shù)研發(fā)過(guò)程中,應(yīng)著重對(duì)組件環(huán)境的中間件進(jìn)行研發(fā),以滿足不同用戶的需求,實(shí)現(xiàn)跨平臺(tái)的應(yīng)用環(huán)境。
當(dāng)前網(wǎng)絡(luò)世界快速發(fā)展的大前提下,計(jì)算機(jī)技術(shù)的發(fā)展也逐步加快,用戶對(duì)軟件的需求也逐步提高,為滿足不同用戶的需求,我們需要注重研發(fā)計(jì)算機(jī)系統(tǒng)軟件的分層技術(shù),才能應(yīng)對(duì)軟件高速發(fā)展的需求,同時(shí)也應(yīng)從負(fù)載均衡、數(shù)據(jù)庫(kù)管理、框架設(shè)計(jì)等方面著手,提升軟件整體框架的準(zhǔn)確性、科學(xué)性,研發(fā)人員也要不斷學(xué)習(xí),降低研發(fā)失誤,縮短開發(fā)周期,現(xiàn)階段,分層技術(shù)仍在不斷發(fā)展的過(guò)程中,我們只有不斷完善,才能提升研發(fā)的效率與質(zhì)量。