B Smith-Mannschott wrote: > # Oberon > "Sending a message" was understood very literally. Messages were > instances of some extension of a base record type. You filled them > out and sent them off at which point they were *broadcast to all > viewers in the view hierarchy*, which reacted to the ones they were > interested in possibly by forwarding them on to their children > (contained widgets) and ignored the rest. > > There was no registration and there was no dangling objects due to > forgetting to unregister listeners. Every component was was in the > visual hierarchy and was thus in on all message broadcasts. You > didn't have to do anything, except react to messages that interested > you when they came. Closing a window automatically removed it from > the view hiearchy.
And what about performance? This sounds _exactly_ as the original design in AWT for Java 1.0, that was dropped in Swing for 1.1 - it was a performance hell. Not to say it sounds as a poor design to use a containment hierarchy as a way to deliver events (no separation of concerns, no MVC - unless I didn't understand it correctly, that might be of course). Was Oberon ever used in a production systems? It's quite common to sketch a clean and simple OO design, just to find later that it can't deal with the real world. If instead the answer to my question is that Oberon is being used in production and it's performant, the interesting point is discussing how it manages to do that. > Generally, one module would implement the Model and define some kind > of UpdateMessage. Another module would impelement a view. Each view > instance would inspect all UpdateMessages that passed by to see if > they pretained to the particular model instance it was displaying. Again, I don't understand somethinng - what made a Model different than a View, if everything was in a hierarchy? -- Fabrizio Giudici - Java Architect, Project Manager Tidalwave s.a.s. - "We make Java work. Everywhere." weblogs.java.net/blog/fabriziogiudici - www.tidalwave.it/blog [email protected] - mobile: +39 348.150.6941 --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---
