董昊(昊子)的专栏

一个系统构架师、系统分析师(努力学习中...)

董昊ID:edisundong
267647次访问,排名215好友10人,关注者49
做最好的自己
edisundong的文章
原创 127 篇
翻译 0 篇
转载 16 篇
评论 260 篇
董昊的公告
 程序人生:

 21岁通过<高级程序员>考试。

 23岁大学毕业,在一家著名手机企业。

 24岁通过<系统分析师>考试。

 开发语言:
 .net从asp+用到.net 3.5
 java业余爱好者

 研究方向:
 目前的研究方向是企业级web开发编译器

 我的联系方式:
 edisundong_163.com
 (_替换成@)

最近评论
shuangziye:我汗啊!
feb9903:你们这些无聊又浮躁的家伙,楼主不过是帖点有用的东西出来和大家分享。至于原创与否,值得在这里大呼小叫么?
edisundong:@r_mosaic
谢谢回复,我学习了
r_mosaic:写得真不错,我收藏了!
r_mosaic:提一些意见:一、在描述线程与进程区别时,先描述线程,即操作系统对线程进行多任务调度;再描述进程,即线程之间是共享地址空间的,进程之间是不共享地址空间的。一个进程启动之后会自动启动一个主线程。这样就把区别描述清楚了。我可能讲得不完全对,请指正。
二、虚拟内存的定义应该直接用 i386 体系结构下的虚地址空间来定义,这样比较明确:即使是禁用了交换文件,虚拟内存机制同样起作用。比如可执行……
文章分类
收藏
    相册
    java
    俱乐部
    宁波.net俱乐部
    宁波.NET俱乐部
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 Abstract Factory(抽象工厂) 2收藏

    新一篇: 金蝶牵手IBM也许是个灾难 | 旧一篇: Abstract Factory(抽象工厂)

    因为上次没给代码,再次给Aragorn_Elessar 等朋友道个歉,

    我这里的环境是.net 1.1 用c#描述:

    问题先描述一下:

    我要一条鱼,现在地方有三个可以让我选择,一、菜市场;二、花鸟市场;三、钓鱼场;

    现在先定义鱼的类

     

        public class Fish
                         
    {
               string fname;//鱼的名称
           
    public Fish(string fname) 
                            
    {
                                .......
                            }
            

        }

    然后定义抽象工厂类

     

        public abstract  class Factory
                         
    {
                    public abstract Fish getFish()
                    {
                    }
                          
        }

    具体工厂:

     

    class Factory1:Factory
    {
                    public override Fish getFish()
                    {
                       .....
                       //返回鱼1
                       return new Fish("鱼1");
                    }

    }

     

    class Factory2:Factory
    {
                     public override Fish getFish()
                    {
                       .....
                       //返回鱼2
                       return new Fish("鱼2");
                    }

    }

     

     

    class Factory3:Factory
    {
                 public override Fish getFish()
                    {
                       .....
                       //返回鱼3
                       return new Fish("鱼3");
                    }

    }

    还有一个得到工厂的类

     

    class static GetFactory
    {
          
    private void setFactory(string flag) 
         
    {
           ...
          
    //选择符合的Factory 
              //具体怎么选择就不说了
          
    //返回

          return  某个Factory ;
         }

    }

     

    我要一条鱼:

    Factory  oneFactory =GetFactory.setFactory("取得某个工厂的参数");//可以配置在配置文件中。

    Fish fish=oneFactory .getFish();//某个工厂就已经决定某条鱼了。

    如果再扩展的话,就把Fish变成抽象的,具体的有Fish1,Fish2,Fish3.

    写的比较仓促,刚刚起来,按自己记忆中的写了,也没仔细想,当然仅仅是为了得到一条鱼而用模式工厂有点傻,这个例子不好,只是为了说明这么个写法,谢谢你们的批评,至于抽象工厂是专门为了解决什么而存在,我个人的意见是能解决什么问题就解决什么问题,也不局限与“两个产品更新换代绑定”,你觉得呢,欢迎再给我提点建议,:)

     

    发表于 @ 2007年06月10日 13:26:00|评论(loading...)|编辑

    新一篇: 金蝶牵手IBM也许是个灾难 | 旧一篇: Abstract Factory(抽象工厂)

    评论

    #jgdubq@mail.com 发表于2007-07-07 08:27:21  IP: 201.64.79.*
    ezojlqmd tfxzceuj ndma fthwvno rztjc qnjzmr ehoafykwv
    #wrcxu@mail.com 发表于2007-07-07 08:29:02  IP: 62.231.243.*
    zspeflao prfjmvnti ejhdc linuczks avjmquzp qulbezkr smcjfk http://www.upfnmz.hdnp.com
    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © 董昊