知识大全 .NET 框架中的 Factory 模式

Posted 框架

篇首语:努力让人有了奇迹般的进步,努力可以让人有了奇迹般的成功。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 .NET 框架中的 Factory 模式相关的知识,希望对你有一定的参考价值。

.NET 框架中的 Factory 模式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Factory 模式是一种非常基本同时也是被广泛使用的设计模式 我在这里就不多说了 这种模式在框架程序设   计中经常被采用 今天就说一下在 NET 框架下的一个使用例子      首先请大家看一下如下代码段

     int iCount = System Text Encoding Default GetByteCount(calStr Trim());      byte[] b = Encoding Default GetBytes(str);      Encoding encode = Encoding GetEncoding(this FileEncode);     

  相信大家对于这样的代码司空见惯了吧 本人也是在使用很长一段时间之后 才对里面的实现方式发生兴趣的   在了解了基本的算法逻辑后 发现这个名Encoding这个抽象类的部分代码是使用 Factory 模式实现的    为了清楚说明这个问题 本人将Factory 模式的基本结构图先发上来 另外本人还附一张相应 Encoding   实现的结构图 以便大家对比参照         Factory 图         net Encoding 结构图         这里需要说明的是Factory 结构图中的SimpleFactory部分在Encoding 代码中被合并了 原因我猜应该是为了方便调用   和维护 如果把GetEncoding() 拿出来放到SimpleFactory中 也只是 搬个家 而已 另外就是封装到了Encoding中同样也   会出现工厂模式所不可回避的问题就是如果新增加一种编码怎么办?让我们看看微软所做的一些 尝试 :       在GetEncoding(Int )函数里的switch 有如下代码

      switch (codepage)          default:    unicode = GetEncodingCodePage(codepage);    if (unicode == null)       unicode = GetEncodingRare(codepage); //当编码很少见时       break;        

  在GetEncodingRare里面有一些少见编码的实例化调用 具体的声明我就不多说了 大家可以用   Reflactor 到 mscorlib 下的System Text Encoding GetEncodingRare(int codepage)函数即可 看到里   面的还有一些没有实现的case 条件段大家就应该明白了 而有关codepage 设置参见          另外就是框架本身更新的速度还是非常快的(微软可能在将来某个版本中改动这部分的代码 但目   框架下未发生变化) 当然解决新加编码的方式不止一种 有人建议用反射 也有说用 factory method 的 这   里就不多做介绍了 (例如:)          还有一个地方就是如下对属性的声明

cha138/Article/program/ASP/201311/21701

相关参考

知识大全 Factory Method模式在Javamail中的应用

FactoryMethod模式在Javamail中的应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 设计模式(1)Factory模式和Abstract Factory模式

设计模式(1)Factory模式和AbstractFactory模式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快

知识大全 JavaScript模式之工厂模式(Factory)应用介绍

JavaScript模式之工厂模式(Factory)应用介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看

知识大全 Factory模式的优点

Factory模式的优点  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!    

知识大全 使用Factory Method模式

Java深入分析之:使用FactoryMethod模式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 了解ASP.NET中的IFRAME框架挂马

了解ASP.NET中的IFRAME框架挂马  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  安全工

知识大全 .net ajax 与Ext2框架在.net程序中的应用

.netajax与Ext2框架在.net程序中的应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 ASP.NET MVC框架中的URL路径选择场景

ASP.NETMVC框架中的URL路径选择场景  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  A

知识大全 设计模式在EJB中的应用(下)

设计模式在EJB中的应用(下)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Factory模式

知识大全 jive中的abstract Factory

jive中的abstractFactory  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Abs