Stephen wrote: > Daniel Frey wrote: > >> Stephen wrote: >> >>> Niclas Hedhman wrote: >>> >>>> On Monday 15 March 2004 16:23, Daniel Frey wrote: >>>> >>>>> Thanks Alex for the example. Nice code! I see there that the main >>>>> frame is generated within the execute method, an approach that I was >>>>> taking, but was not sure about. >>>> >>>> Since I know my own agenda, I recommend that you use the Startable >>>> interface instead... I think there will be consensus to remove >>>> Executable >> >>>> in Framework 5.0, since the Startable can do the same job. >>> >>> I think this subject will raise a bit of debate. Startable is a >>> non-blocking operation whereas Executable is in-line execution. As >>> such, you can correlated Initializable and Executable much more closely >>> that Executable and Startable. >> >> I think in the execute/start method the main frame is build and shown. >> But I think a separation of roles would be good in terms of being >> responsible for >> >> - an initial setup, coordination of managers and start of the whole >> application >> >> - a GUI - the main frame (see thread "Merlin for Applications") >> >> Both might implement Initializable, Startable and/or Executable. So which >> one is now the right one for what exactly? > > Based on what you said above - your describing a service interface > equivalent to Executable. In effect - the framework Executable > interface and the semantics it implies on the container/component > contract do not allow for the separation of the concerns you describing > - however, if you put in place your own Executable and published this as > a service that your component provides then you can take control over > this. > > Actually this is exactly what I did in the last GUI app I built.
Stephen, do you have such an application as a starter for these basic application design questions? Would be nice for a framework newbie to profit of the well-done experiences so far. Daniel --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
