.
聲明:本人只是分享一些床長人工智慧教程相關的免費雜文而已,並非床長人工智慧網校的收費文章。
寫在前面寫在前面
接到公司的需求,把之前那個實在維護不動的項目重構一下之前項目是沒有架構寫的,跟平鋪差不多,臨時組建了個人的開發小組,確定架構的時候全票通過了。
之前雖然用過,可總意會不到的精髓所在,反而經常被繞暈。
也看了很多關於的技術博客。
怎麼寫的都有,很多分不清層和層的職責所在,為了發揮的優勢,特地找到了官方發布的源碼。
總算發現了新大陸。
本文不會講解官方的源碼,只針對個人理解進行敘述,大神至此請無視
啥是啥是
俗稱,該架構是從著名的架構演變而來的。
應用開發類似架構。
開發中將文件視為中的角色,將則視為中的角色。
但是在實際應用開發中大多充當和的合體。
於是既要負責視的顯示,又要負責對業務邏輯的處理。
使得過於臃腫。
為了優化這一情況特地提出架構模式,使得每層各盡其職,條理清晰。
用一張來描述下他們之間的關係
邏輯層,數據邏輯,網絡邏輯全寫在這
調度層,層和層的交互需要層調度
層,一般指等等界面
咋用的咋用的?
在實際的使用使用中,我採用了官方的那種寫法,除了三層以外還增加了一個契約類,將邏輯接口以及接口全部寫在了契約類中。
然後和分別實現類中各自的接口。
這麼做的目的是方便管理,提高代碼的可讀性。
打開後一目了然,能非常清晰快速的了解到本模塊的所有邏輯結構。
說了半天到底怎麼個意思?
我叫啥意思
我們還是擼下代碼吧,還是擼代碼來的實在一點,首先我們看一張類結構
類結構
和兩個類,命名上就能看出這倆類是層與層的基類,主要實現所有和都需要使用的接口。
該類為契約類,集成了層的更新接口以及層調用邏輯接口。
該類為層的邏輯處理類,所有的邏輯處理以及聯網等均在此類中進行,最後通過層調用從而實現邏輯驅動。
處理邏輯
處理條件
處理結果
處理結果為
聯網處理結果為
處理結果為沒找到處理條件
該類為層的處理類,實現接口。
主要負責,的初始化,以及的更新操作。
和初始化
獲取
更新
該類為層的調度處理類,主要負責調用層以及層的方法或接口以實現調度的職責。
該類構造函數中接收初始化好的和,並通過設置使得每一個實現接口的均可得到對象,以方便後續操作。
調用過程
至此,完整的架構已經敘述完畢了,通過以上的描述我們可以清楚的了解到目前比較火的架構之一。
他能最大程度的降低代碼耦合程度以及維護成本,提高代碼的維護性和可讀性。
從而達到以不變應萬變的目的。
以上是本人對的全部理解。
如果疑問和建議歡迎留言指點。。。。