三层结构功能解析
??? 上篇博客從日常生活中對(duì)軟件設(shè)計(jì)的三層結(jié)構(gòu)進(jìn)行了簡(jiǎn)單的剖析,該篇博客主要總結(jié)各層功能。
??? 下圖為三層的結(jié)構(gòu)模型:
數(shù)據(jù)訪問(wèn)層
???? 主要負(fù)責(zé)數(shù)據(jù)庫(kù)的訪問(wèn),實(shí)現(xiàn)對(duì)數(shù)據(jù)表的增刪改查操作。在分布式應(yīng)用程序結(jié)構(gòu)中,使用 ADO.NET 數(shù)據(jù)適配器和 SQL 服務(wù)器存儲(chǔ)過(guò)程來(lái)完成。
?作用
?????(1)從“業(yè)務(wù)規(guī)則”層接收請(qǐng)求,從“數(shù)據(jù)服務(wù)”獲取數(shù)據(jù)或向其發(fā)送數(shù)據(jù)。?
?????(2)使用存儲(chǔ)過(guò)程獲取數(shù)據(jù),并可選用 ADO.NET 向數(shù)據(jù)庫(kù)發(fā)送數(shù)據(jù)。?
???? (3)將數(shù)據(jù)庫(kù)查詢結(jié)果返回到“業(yè)務(wù)規(guī)則”層,作為ADO.NET 數(shù)據(jù)集。?
業(yè)務(wù)邏輯
??? 是整個(gè)系統(tǒng)的核心,它與這個(gè)系統(tǒng)的業(yè)務(wù)有關(guān)。它們實(shí)現(xiàn)業(yè)務(wù)實(shí)體或系統(tǒng)對(duì)象。系統(tǒng)的業(yè)務(wù)規(guī)則將在這些對(duì)象中編碼。
?作用
??? (1) 從“用戶界面”層接受請(qǐng)求。?
??? (2) 根據(jù)編碼的業(yè)務(wù)規(guī)則處理請(qǐng)求。?
??? (3) 從“數(shù)據(jù)訪問(wèn)”層獲取數(shù)據(jù)或?qū)?shù)據(jù)發(fā)送到“數(shù)據(jù)訪問(wèn)”層。?
??? (4)將處理結(jié)果傳遞回“用戶界面”層。
用戶界面
??? 系統(tǒng)的UI部分。在分布式應(yīng)用程序結(jié)構(gòu)中,用戶服務(wù)可以是 Web 客戶端或 Windows 客戶端,這具體取決于特定的應(yīng)用程序。例如,在開(kāi)發(fā)Web 應(yīng)用程序時(shí),可能需要提供具有標(biāo)準(zhǔn) Windows 用戶界面或 Web 用戶界面。通常,這種一般類(lèi)型的應(yīng)用程序包含以下功能:
?作用
?? (1)管理 Web 頁(yè)或 Windows 界面的呈現(xiàn)和行為?
?? (2)顯示數(shù)據(jù)?
?? (3)捕獲數(shù)據(jù)?
?? (4)數(shù)據(jù)驗(yàn)證檢查?
?? (5)為用戶提供任務(wù)指南?
?? (6)向“業(yè)務(wù)規(guī)則”發(fā)送用戶輸入?
?? (7)從“業(yè)務(wù)規(guī)則”接收結(jié)果?
?? (8)向用戶顯示錯(cuò)誤?
?
???? 概括來(lái)說(shuō),分層設(shè)計(jì)主要為了達(dá)到:分散關(guān)注、松散耦合、邏輯復(fù)用、標(biāo)準(zhǔn)定義的目的。好的分層式結(jié)構(gòu),可以使開(kāi)發(fā)人員的分工更明確。
三層設(shè)計(jì)的優(yōu)點(diǎn)還有:
1、開(kāi)發(fā)人員可以只關(guān)注整個(gè)結(jié)構(gòu)中的其中某一層;
2、可以很容易的用新的實(shí)現(xiàn)來(lái)替換原有層次的實(shí)現(xiàn);
3、可以降低層與層之間的依賴(lài);
4、有利于標(biāo)準(zhǔn)化;
5、利于各層邏輯的復(fù)用。
具體區(qū)分方法:
??? 1:數(shù)據(jù)數(shù)據(jù)訪問(wèn)層:主要看數(shù)據(jù)層里面有沒(méi)有包含邏輯處理,實(shí)際上他的各個(gè)函數(shù)主要完成各個(gè)對(duì)數(shù)據(jù)文件的操作。而不必管其他操作。
??? 2:業(yè)務(wù)邏輯層:主要負(fù)責(zé)對(duì)數(shù)據(jù)層的操作。也就是說(shuō)把一些數(shù)據(jù)層的操作進(jìn)行組合。
??? 3:表示層:主要對(duì)用戶的請(qǐng)求接受,以及數(shù)據(jù)的返回,為客戶端提供應(yīng)用程序的訪問(wèn)。
?
總結(jié)
- 上一篇: 6、单机运行环境搭建之 --CentOS
- 下一篇: 用master-worker模型比对团队