抽象工廠模式

2021-07-11 12:23:27 字數 2367 閱讀 9910

basebll.cs

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace bll

public bool deletewhere(system.linq.expressions.expression> where)

}}

t_userinfobll.cs

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace bll

}}

ibasebllinte***ce.cs

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace ibll

}

it_userinfobllinte***ce.cs

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace ibll

}

abstfactroycs.cs

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace abstractfactroy

public static abstfactroycs createbfactroy(string factroyname)

}}

(業務工廠類庫,這種業務工廠類庫可以存在在多個,當存在多個業務工廠類庫的時候,那麼抽象工廠類庫就將所有的業務工廠類庫公有的建立物件的方法提取出來,變成抽象的方法,然後不同的業務工廠來繼承這個抽象工廠並重寫這個抽象工廠的公共方法。我們在ui層就只依賴抽象工廠,在抽象工廠中寫乙個建立物件的非抽象方法,這個建立物件的方法,用反射的形式建立乙個子類物件,然後以抽象類的形式返回,這樣我們就可以在ui層中呼叫抽象工廠類來建立業務工廠類,並呼叫業務工廠類中的方法,建立類物件,最後用這個類物件呼叫類方法,實現資料查詢)

bllfactroy.cs

using system;

using system.collections.generic;

using system.linq;

using system.reflection;

using system.text;

using system.threading.tasks;

namespace bllfactroy

assembly ass = assembly.load(assname);

//如果物件建立不成功,查詢下ef的版本是不是與類庫中的引用的ef版本不一致。

return ass.createinstance(assname + "." + classname);

}/// /// 建立t_userinfobll類物件

///

/// 將t_userinfobll類物件以it_userinfobllinte***ce介面的形式返回

public override it_userinfobllinte***ce createuserinfoinstance()

}}

using system;

using system.collections.generic;

using system.linq;

using system.web;

using system.web.mvc;

}}

dal層我就不貼了。原理是和bll層一樣的。

抽象工廠模式 抽象工廠模式

抽象工廠模式其實是圍繞了乙個超級工廠建立其他的工廠 可參考工廠模式 這個超級工廠又可以想像成是其他工廠的工廠,這種設計模式是一種建立型模式。在抽象工廠模式中,介面是負責建立乙個相關物件的工廠,不需要顯式指出其類。每個生成的工廠都能按照工廠模式提供物件。意圖提供乙個建立一系列相關或相互依賴物件的介面,...

工廠模式 抽象工廠模式

這裡使用簡單的話來講解工廠模式,不涉及程式設計 什麼是工廠模式呢?我的理解是對抽象介面例項的封裝。假如有乙個介面,有若干的實現類,代表不同的例項。傳統產生物件的方法是直接new乙個出來,對於每個例項都要new,當實現介面的類較多時會很麻煩,並且類的實現也暴露出來了。工廠模式是一種產生物件的模式,使用...

工廠模式 抽象工廠模式

子類父類代換 場景 在不同的條件下,需要建立不同的實現子類時。如網路通訊可以使用tcp udp。可以實現同乙個介面,通過工廠類根據條件 tcp或udp 來例項化不同的子類。這些子類符合黎克特制代換原則。public inte ce tlprotocol public class tcpimpleme...