VO DTO 模式在架構設計中是否需要

2021-09-07 01:45:16 字數 580 閱讀 7863

dto(vo):也就是一般意義上的vo,封裝後的物件。一般用於web層—service層間的資料傳輸入。

po:也就是一般概念上的domain object,如hibernate 中的entity.一般用於service層--dao層間的資料傳輸。

大多數web應用是沒有vo的,直接po貫穿 web-service-dao三層;有些應用,尤其企業級應用開發,會用vo。

如果用vo,那麼就要涉及到po和vo之間的轉換,增加很多**量,每層互動都要做物件轉換,重複**多, 增加研發和維護的人力成本。

但vo的作用有兩種:

模組隔離:對外暴露,遮蔽內部實現。

分布式支援:用於非同步傳輸;

1.vo是對前端需要展示資料的封裝。vo可以包含po的所有屬性,也可以包含po的部分屬性,也可以包含po沒有的屬性。vo以前端展示需要而進行屬性的設計。

2.vo是資料傳輸類,po是持久類,兩個的作用不一樣。

3.如果存在繼承關係,那麼他們倆某種意義上就是有關聯的了父子關係了。這與分層思想不符,明顯不合適。

文章推薦:

dto層的思考

設計模式與架構設計

論設計模式在架構設計中的運用 設計模式 在我們現實的軟體專案開發中,常常會遇到一次又一次的關於軟體設計上的問題,而設計模式就針對那些問題提供了一系列的解決方案。設計模式是一種較高層次程式結構的設計策略 是一種技巧,它著重於為軟體系統 子系統內部的各物件間提供乙個良好的通訊平台,協調各者之間的關係,使...

DNS在架構設計中的巧用

苦學 2017 05 17 10 00 一 緣起 乙個http請求從客戶端到服務端,整個執行流程是怎麼樣的呢?乙個典型流程如上 1 客戶端通過網域名稱daojia.com請求dns server 2 dns server返回網域名稱對應的外網ip 1.2.3.4 3 客戶端訪問外網ip 1.2.3....

iOS設計模式與架構設計

ios開發中常用的設計模式有以下幾種 1 mvc模式 2 委託 模式 3 觀察者模式 架構設計 好的架構設計可以提高開發效率 減少 冗餘 提高元件模組的可復用性等優點。ios開發中通常採用是是分層架構設計,其目的是降低耦合,同時提高應用的可復用性 可擴充套件性。1 表示層 ios中的表示層是由uik...