介面層的作用:作用解耦業務邏輯層對資料庫訪問層直接的依賴,在業務邏輯層和資料庫訪問層之間加入介面層,讓業務邏輯層去依賴介面層,資料庫訪問層如果要修改,只要介面不變化,且資料訪問類實現了介面,業務邏輯層就不需要進行修改。如下圖,可以進行ef_dal和ado.net_dal的方便切換。
介面層的使用:ui層與業務邏輯層之間使用抽象工廠模式建立介面層,業務邏輯層與資料訪問層之間也使用抽象工廠模式建立介面層。如下圖。
抽象工廠實現方式:通過抽象工廠的靜態方法讀取配置檔案獲取乙個實體工廠物件,使用剛剛獲取的實體工廠的靜態方法反射得到實體產品。
圖1只是對資料訪問層和業務邏輯層的關係進行描述,ui層跟業務邏輯層關係相似。因為使用了反射,所以可以將抽象工廠簡化,真正的抽象工廠模式如圖2.
圖1-----
圖二-----
圖三(資料訪問層詳細架構)------
圖四(最終架構圖)------
關於抽象的一些收集
什麼是抽象?什麼是抽象等級高?什麼是具象?大家天天說抽象,甚至還在比較抽象的等級高階,但是我實在不知道大家腦子裡的 抽象 一詞到底是什麼意思?首先,很關鍵的一點是 現在你站在 最關鍵的是觀察者主體的位置處在 首先關鍵的是參照點。更令人迷惑的是你一定會運動!因為你是主體,你有主觀能動性,你可以在問題空...
關於熵的一些理解
對於理工科學生來說,熵 並不是乙個陌生的名詞。在諸如 大學物理 熱力學 和 資訊理論 等課程中都會有所介紹。但同時 熵 又是乙個顯得有點神秘的概念,看不見也摸不著。我最早是在高中物理課中聽說的,大概是在介紹 熱力學第二定律 時提到的。熱力學第二定律的內容是 熱力學過程是不可逆的 孤立系統自發地朝著熱...
關於float的一些理解
float是否脫離文件流,乙個父元素不設定overflow的話,子元素float,就不會把父元素撐開,換句話說,他就不會有高度,但是做個demo 父元素overflow hidden 子元素前兩個float,第三個不float,結果是第三個沒有clear浮動的元素,跟float的元素出現在同乙個位置...