三層架構中的引數傳遞

2021-06-17 01:16:05 字數 1322 閱讀 2184

三層架構中的引數傳遞

三層架構中的引數傳遞情況很多

,也很重要

.不過引數傳遞又分很多的情況

.雖然情況眾多

,不多按照形式來分

,一般都是用傳值和傳遞實體

.下面就來稍微介紹一些情況

.做機房收費系統的時候有這麼一種情況

,那就是當管理員登陸了以後

,管理員的

id需要多次被不同的窗體用到

,而管理員的

id則需要被多次傳遞

.這個時候處理方式大多數是兩種

,一種是在窗體中定義全域性變數

,然後別的窗體再去呼叫

,如果是別的層去呼叫

,則需要加上層的名稱

.另一種是建立乙個模組

,然後在模組中建立全域性變數

,當需要的時候給全域性變數賦值

,用到的時候在讀取

.當然這基本是在傳值

.當然如果值比較多還可以傳遞陣列和集合

.傳遞實體或許在三層架構中更加的典型

,如果我們看包圖或許會知道

,每層都會對實體層新增引用

.所謂傳遞實體就是將需要傳遞的值

(這裡大多數是很多的不同種類的值

)賦值給例項化的實體類物件的屬性中

,然後通過呼叫方法

,將實體物件放到方法的引數部分

,這樣就實現了傳遞實體

.在這裡傳值和傳遞實體各有優缺點

,傳值簡單

,不複雜

.傳實體容易維護

.但傳值有點背離物件導向的理念和思想

.不過我們變成不是為了符合某種理念和思想來做事的

,而是如何才是更加有效的完成我們想要達到的目的

,如果我們就需要乙個卡號

,直接傳值過去足夠了

,我們也沒必要非要建立乙個非常臃腫的實體類

,然後再例項化實體物件

.不過當引數傳回的時候很多情況下會直接傳遞歸

dataset

或datatable

,這樣傳遞或許也有點背離了物件導向的思想

,不過同樣的哪句話

,我們變成不是為了暗合某種理論

,為的卻是效率

.當然傳回

dataset

和datatable

主要也是為了方便

,同樣是為了類的功能的單一和簡單

.如果將

dataset

和datatable

給實體物件

,這樣有的時候回比較亂和比較麻煩.

對於引數形式的選擇

,沒有什麼是多麼的絕對

,合適的才是最好的

,而不是為了暗合某理

.

三層架構資料傳遞

說三層先說乙個小故事。從前有三家鄰居,一家姓張,一家姓李,一家姓王,姓張的和姓李的兩家人各有乙個兒子,而姓李的家是乙個女孩,長得特別的漂亮,於是其他兩家的的都想追求這個女孩,兩個人人誰也不服誰,於是在那一天,兩個人相聚到小樹林,打了起來,打得是不相上下,後來兩家人因為這個鬧得很是不痛快!這件事情讓女...

c mysql三層架構例項 三層架構例項

一 概要 這篇部落格,準備用乙個小demo來介紹應該實現三層架構。三層架構只是分層的一種經典形式,到底分幾層,要依具體情況而定,考慮到系統的複雜程度,和後期的可維護性,完全可以分四層,五層,甚至六層,七層。二 demo 1 實現語言 vb.net 2 需求 學校機房收費系統 中的乙個功能 操作員為學...

軟體架構 三層架構

三層系統的分層式結構 三層架構 3 tier architecture 通常意義上的三層架構就是將整個業務應用劃分為 區分層次的目的即為了 高內聚,低耦合 的思想。表現層 ui 通俗講就是展現給使用者的介面,即使用者在使用乙個系統的時候他的所見所得。業務邏輯層 bll 針對具體問題的操作,也可以說是...