Thursday, August 31, 2006

Framework, modules and plugins.

me having a bad hair day
It's been a long time since last post now. That's mainly because I've had my hands full of other things I had to do. When it comes to myPal I've used the last weeks to find out more about how to create a usable framework for the application. This has not been an easy task as I must admit that I have no clue about how to build one or what to search for. I felt like a blind man in the forest. I have lost the count of how many ".NET framework", "Mozilla Framework" and "Web application framework" sites I have found during the search.

Lucky as I am, I have managed to find an Open Source project, Java Plugin Framework we can build myPal on. The team has not yet decided if we should use this or not, but I believe it is a very good solution. Saves us a lot of work too... I've got a very good feeling about JPF, since developing myPal as plugins and extensions; we can modify myPal in a thousand ways later on. One example could be to make myPal skinnable. By creating the GUI as extensions, we can later on add as many extensions of this type as we like, and then let the user choose between different skins ( of course, the skin chooser will be a dynamically driven module, giving the user choices based on the amount of installed skins).

We have decided to use the Model-View-Controller pattern for developing myPal. By separating the Model and View into different modules, it will be possible to change the whole myPal user interface, just by adding or replacing an extension. myPal has grown a lot bigger than my original idea. But I am not complaining. Every idea, even the rejected ones, that comes from the developer team brings myPal one step closer to greatness. Making myPal a pluggable application is one of those.
For the upcoming days, I guess most of my myPal-time will be used on creating a small test application to see how we can use the framework. So, Cheers for now.

No comments: