91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

快速理解CQRS

發布時間:2020-03-23 23:33:27 來源:網絡 閱讀:668 作者:ly_bing 欄目:軟件技術

快速理解CQRS

CQRS 意味著命令和查詢的責任是分離的。很多人錯誤的認為CQRS是一個整體架構,其實,CQRS這個一個小的模式,這個模式由Greg YoungUdi Dahan首次提出. 他們從Bertrand Meyer的《Object Oriented Software Construction》中獲取的命令和查詢分離模式的靈感。在CQS背后的主要觀點是:"一個方法應該改變一個對象的狀態,或者返回一個結果,但不是二者兼具。換句話說,問一個問題不應該改變問題的答案,更正式的,一個方法只有被引用透明(referentially transparent)并且沒有任何副作用的時候才會有返回一個值。

正因如此,我們把方法劃分為兩種:

  • Commands - 改變一個對象或整個系統的狀態

  • Queries - 在不改變對象的狀態的情況下返回結果

在現實中,可以很簡單講清楚什么是什么。Queries會聲明返回類型,commands沒有返回值. 這種模式是普遍適用的,它會讓對象更加簡單。換句話講,CQRS只適用于解決特定問題.


很多應用程序使用主流讀和寫來構建對象的方法。對于同一個模型(model)用讀和寫會造成model更加復雜,維護和優化都非常困難。


這兩種模式的真正策略是你可以將修改狀態和不修改狀態的方法分離開,這種分離可能造成在處理性能和調優時變得困難,你可以在寫的部分來優化系統中被分開用做讀的部分,寫的部分是已知的領域,這個領域包含所有的行為,讀的部分被指定為報表提供服務。


這種模式在一個很大的應用程序的另外的一個好處是,你可以將開發人員分配到更小的團隊中去完成這個系統的不同任務(只完成讀或寫),而不用關心其他的任務。例如,開發讀部分的人員不需要明白領域模型。




查看原文:Kanasz Robert

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

马龙县| 茂名市| 永济市| 定兴县| 仙游县| 潢川县| 潮安县| 汕尾市| 双流县| 孝昌县| 萍乡市| 白山市| 汉阴县| 陆丰市| 武安市| 理塘县| 合肥市| 廊坊市| 庆阳市| 舞阳县| 板桥市| 饶河县| 桃江县| 白朗县| 铁岭市| 普宁市| 潮州市| 达州市| 皋兰县| 同江市| 新巴尔虎左旗| 曲沃县| 集安市| 拜城县| 台南县| 峨边| 荥阳市| 厦门市| 吐鲁番市| 荆州市| 扎兰屯市|