xploita Posted June 4, 2007 Share Posted June 4, 2007 trying to use the observer pattern,i found that the one object that's an Observer could be Observable(subject) at the same time.is this normal? if so,should it extend oberver and observable at the same time? Quote Link to comment Share on other sites More sharing options...
Buyocat Posted June 5, 2007 Share Posted June 5, 2007 Not sure what you're trying to ask. If you're asking whether an observable object can observe a second observable then the answer is yes, and in fact you can chain things together (and thereby utilize the decorater pattern). I hope that helps answer your question. Quote Link to comment Share on other sites More sharing options...
xploita Posted June 5, 2007 Author Share Posted June 5, 2007 no,what i meant is that an observer could be observed at the same time by another object. is this normal? Quote Link to comment Share on other sites More sharing options...
Buyocat Posted June 5, 2007 Share Posted June 5, 2007 Ya I thought I understood you, but let me see if I get it... you have : A1 implements Observer watching... Observable A2 implements Observer which might be watching Observable A3 Or something other combination like that. There's no reason not to do it. I'm not sure what you mean by normal, though. If you're asking if it's a bad design decision I would say it doesn't sound like one, but I would need to know more about what your'e doing. In my experience it is useful to string templating classes together using the pattern above so that when one part of the view is generated it notifies an observer which is itself an observable, etc, until the final HTML is generated. I think that is more elegant solution than trying to form the equivalent through composition (so I think it's better design). If you care to share more details I'll try to form more of an opinion. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.