上一次(即昨天),我們完成了業(yè)務(wù)邏輯層的演示;傳送門:項(xiàng)目架構(gòu)開發(fā):業(yè)務(wù)邏輯層之領(lǐng)域驅(qū)動(dòng)失血模型
設(shè)計(jì)上雖然還不是太優(yōu)雅,但是距離真正的OO編程又更近了一步,而且也保留了事務(wù)腳本模式的簡單快捷的特性
只要后續(xù)把Model層豐富起來,那就算是掌握了另一種軟件開發(fā)模式,而且也是整個(gè)思想上的轉(zhuǎn)變。都有點(diǎn)期待了。。
本章我們來完成在業(yè)務(wù)邏輯層之上的服務(wù)層;
服務(wù)層并不是必須的,在有一定復(fù)雜度的應(yīng)用程序中,服務(wù)層非常有必要?jiǎng)?chuàng)建;而與之相反的就是,
在一些業(yè)務(wù)邏輯簡單的系統(tǒng)中,服務(wù)層可能僅僅充當(dāng)分發(fā)功能,沒有多余的工作需要組織,這時(shí)服務(wù)層就顯得多余;
而且,服務(wù)層一般還與客戶端有關(guān)系(Web、Winform);如果是Web,在同一系統(tǒng)內(nèi),服務(wù)層就沒有大多必要,除非是跨系統(tǒng)的服務(wù)調(diào)用;
如果是Winform,那服務(wù)層就比較常用,因?yàn)閃inform是C/S模式,物理層上天生與服務(wù)器端分離。
若是從C端遠(yuǎn)程調(diào)用應(yīng)用邏輯,那有可能在長距離的遠(yuǎn)程調(diào)用中花費(fèi)太多的時(shí)間,而加入服務(wù)層情況就會(huì)不同
服務(wù)層就是為UI何應(yīng)用邏輯層之間提供一個(gè)數(shù)據(jù)交互的契約,簡單點(diǎn)說就是從C端發(fā)送一組參數(shù),在S端進(jìn)行邏輯運(yùn)算,
因?yàn)橐话闱闆r下S端與數(shù)據(jù)庫在同一局域網(wǎng)下,訪問速度比前者快很多,效率也大大提高
若沒有服務(wù)層,則需要從UI直接與后端應(yīng)用程序通信,交互次數(shù)大大的增加,通信距離也大大的影響程序性能
我們開始吧。
1、應(yīng)用邏輯,創(chuàng)建新登錄用戶
1 public bool Add(A