matlab搭建的应用层架构逻辑,软件设计的三层架构
1:三層架構(gòu)是什么?
三層架構(gòu)是一個分層式的軟件體系架構(gòu)設(shè)計理念。
把軟件架構(gòu)分為三層;
1:UI層?? (user interface layer)? 界面層
2:BLL層 (business logic layer)????? 業(yè)務(wù)邏輯層
3:DAL層 (data access layer)???????? 數(shù)據(jù)訪問層
其實就是項目的三個部分。
傳統(tǒng)的項目,廣義上需要關(guān)注的是客戶端和服務(wù)端;相當(dāng)于是一個兩層架構(gòu)。
客戶端:? 包含界面、業(yè)務(wù)邏輯
服務(wù)端:? 包含數(shù)據(jù)
這樣的設(shè)計理念的最大的缺點是:
一旦服務(wù)端數(shù)據(jù)結(jié)構(gòu)或數(shù)據(jù)名發(fā)生變化,客戶端需要在很大范圍內(nèi)做改變,以適應(yīng)新的數(shù)據(jù)。比如說服務(wù)端的一個數(shù)據(jù)名因故改變了,那么客戶端代碼中所有用到該條數(shù)據(jù)的地方都需要做改變。
三層架構(gòu)的設(shè)計理念,把一個軟件分為三個部分:
UI層:就是展現(xiàn)給客戶的界面,用于展示用戶輸入以及服務(wù)端返回的數(shù)據(jù);交互式操作界面中,用戶輸入的數(shù)據(jù)和想要的數(shù)據(jù)展示。
業(yè)務(wù)邏輯層: 橋梁層,用戶輸入的數(shù)據(jù)通過業(yè)務(wù)邏輯層的處理發(fā)給數(shù)據(jù)層;數(shù)據(jù)層返回的數(shù)據(jù)通過業(yè)務(wù)邏輯層發(fā)送給界面展示。常做的操作是驗證、計算、業(yè)務(wù)規(guī)則等。
數(shù)據(jù)訪問層:主要管理數(shù)據(jù),實現(xiàn)對數(shù)據(jù)的增刪改查等操作。把業(yè)務(wù)邏輯層提交的用戶輸入的數(shù)據(jù)保存,把業(yè)務(wù)邏輯層請求的數(shù)據(jù)返回給業(yè)務(wù)邏輯層。
2:為什么要分三層架構(gòu)?
三層架構(gòu)的重要指導(dǎo)原則就是:高內(nèi)聚、低耦合。
所以使用三層架構(gòu)的最大目的就是:解耦。
所謂解耦就是軟件各部分各司其職,一方的變化基本不會影響到另一方,只需要在對接初稍作修改就可以了。
3:三層架構(gòu)怎么實現(xiàn)?
理論上三層架構(gòu)的實現(xiàn),在項目架構(gòu)上是:
view
business
data
三個層。
view目錄結(jié)構(gòu)里面實現(xiàn)頁面UI繪制,是頁面的代碼實現(xiàn),頁面里數(shù)據(jù)的來源和去向都是business;
business目錄結(jié)構(gòu)里面是把頁面輸入數(shù)據(jù)發(fā)送向data層,把data層返回數(shù)據(jù)返回給view展示;
data目錄結(jié)構(gòu)里面是對數(shù)據(jù)的處理,包括數(shù)據(jù)的增添改刪。
4:三層架構(gòu)與mvc
三層架構(gòu)與mvc看似相似,
本質(zhì)區(qū)別是,三層架構(gòu)是一種軟件架構(gòu)設(shè)計理念,適用于所有項目;
而mvc只是UI層的一種細化。把UI層劃分為M -V- C三個模塊。
總結(jié)
以上是生活随笔為你收集整理的matlab搭建的应用层架构逻辑,软件设计的三层架构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android webview简单使用,
- 下一篇: matlab 矩阵与向量乘,matlab