关于观察者模式
Java code
//创建一个被观察者
Test subject = new Test();
//创建两个观察者
Observer firstScreen = new FirstScreen();
Observer secondScreen = new SecondScreen();
//把两个观察者加到被观察者列表中
subject.addObserver(firstScreen);
subject.addObserver(secondScreen);
//执行业务操作
subject.doBusiness();
这个是我目前
有什么更好的办法,不用新增加一个观察者就new一个观察者对象..
即让代码有扩展性,任意添加观察者 不必过多修改原代码.
谢谢!
------解决方案--------------------
不修改源代码,就使用配置文件,把所有的Observer都写到配置文件里面,然后通用反射new出来
------解决方案--------------------使用 groovy/javascript 做配置文件,而不是 plain text。
------解决方案--------------------如果不用配置文件,你想如何让程序自动化,程序总该要有个途径知道这些观察者的来源吧,要不然程序怎么知道你想新增什么观察者?