社区
C#
帖子详情
关于工厂模式的一个问题
sonkey
2006-03-21 10:25:11
我想在工厂成生的每种类里面定义不同的事件(而且个数不定),在调用工厂的程序实现事件。不知道有什么好方法呢。果如工厂做不到的话,能有其他什么方法来实现呢?
...全文
205
10
打赏
收藏
关于工厂模式的一个问题
我想在工厂成生的每种类里面定义不同的事件(而且个数不定),在调用工厂的程序实现事件。不知道有什么好方法呢。果如工厂做不到的话,能有其他什么方法来实现呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sonkey
2006-03-25
打赏
举报
回复
to Ivony:
我想工厂生成不同的指令。
而且在不同指令的处理中会触发不同的事件。而且事件的数目不能确定。
unknow_123
2006-03-22
打赏
举报
回复
定义一个命令分析处理的函数,放在接口里面,然后每个继承的都有这个分析处理函数,根据不同的命令参数来实现不同的功能,不就行了吗?
不知道我的想法能解决你的问题不
sonkey
2006-03-21
打赏
举报
回复
其实我现在遇到的情况是:我现做一个实现根据不同参数得到不同指令的工厂。每种指令类里面会触发不同的事件。
我在一个类(Class A)里面调用这个工厂来实现相应的操作。最后我现在一个winform里面实现事件。因为类A里面相对固定,而那些指令要根据业务不同而经常变化,所以我想把那部分抽象出来。这是我主要的目的。
liushui1981
2006-03-21
打赏
举报
回复
我也学习!!!
不过觉得用委托可以实现你的想法!!
hyena041
2006-03-21
打赏
举报
回复
个人感觉工场里面出来的,不管你是什么类型,应该都是相同的
工场模式提供的就是,不管你的材料是什么,需要用到什么具体的方法,工厂都不管,但是出来的东西是一样的
从这个角度来看,就不会存在,不同的实现是不同的现象了
但是从程序角度看,如果你在各个继承工程借口的实现类里面增加自己的独有方法,应该也是可以的
用起来就有点讨厌了,这样做,很可能会把借口作混掉吧,另外一个想法,就是在借口里面也作每个实现方法,你要你有一个类需要增加新的方法,借口里面也增加,各个实现类也增加,只是不需要的实现类返回的是空应该是可以的吧!
看看高人怎么说,学习
Ivony
2006-03-21
打赏
举报
回复
就是让工厂自动给生成的对象绑定事件吧。
这不是设计模式的问题。
首先要把这个问题分化,
第一是工厂对其生成的对象进行操作,这一点是可以做到的。而且没必要工厂来做,调用方可以在获得工厂的产品(也就是对象)后再进行绑定,为了消除重复的代码,可以把这一部分放到工厂类里面去,或是另外写一个函数来处理,这都是优化代码,与工厂模式无关。
第二是要绑定到数目不同的事件上去,这一点除非是被生成的对象本身就提供一个批量绑定事件的功能或者利用反射一个一个的绑定,否则很难实现。
MonkWang
2006-03-21
打赏
举报
回复
学习
帮顶
dayasky
2006-03-21
打赏
举报
回复
事件个数不一样?
那来个pool怎么样,比如用ArrayList,把一些接口引用放进去,一个个地调用?
Ivony
2006-03-21
打赏
举报
回复
我现做一个实现根据不同参数得到不同指令的工厂???
你根据参数生产工厂,然后再让这些工厂生产指令对象?
还是一个工厂根据参数生成不同的指令?
你应该多看看命令模式和组合模式。
如果事件集中处理,可以看看AOP和Context的概念……
sonkey
2006-03-21
打赏
举报
回复
up
图解Java设计模式(一)
行为型模式:模版方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模式、策略模式、职责链模式(责任链模式) 2) 学习目标:通过学习,学员能...
Java设计模式之创建型:
工厂模式
详解(简单工厂+工厂方法+抽象工厂)
简单
工厂模式
的核心是定义
一个
创建对象的接口,将对象的创建和本身的业务逻辑分离。工厂方法模式将工厂抽象化,并定义
一个
创建对象的接口。每增加新产品,只需增加该产品以及对应的具体实现工厂类,由具体工厂类决定...
设计模式之
工厂模式
简单
工厂模式
(Simple Factory Pattern)是指有
一个
工厂对象决定创建出哪一种产品类的实例,不属于23种设计模式。 简单工厂是产品的工厂 1.2、应用场景 简单
工厂模式
适用于工厂类创建的对象较少的场景,且客户端只...
工厂设计模式解决什么
问题
_使用
工厂模式
解决设计
问题
工厂设计模式解决什么
问题
工厂设计模式是面向对象环境中最常用的模式之一。 再次来自“创意设计”模式类别,即...Factory模式通过定义
一个
专门创建对象的接口解决了这些
问题
,但该接口使实现类具有灵活性来决定要...
工厂方法模式、简单
工厂模式
、抽象工程模式
在
工厂模式
中,我们创建对象时不会对客户端暴露创建逻辑,并且是通过使用
一个
共同的接口来指向新创建的对象。 针对的
问题
:在面向对象编程中,最常用的方法是new
一个
操作符产生
一个
对象实例,new对象操作符就是用来...
C#
110,535
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章