OK, I don't know if David is the only one interested to get gritty with
a component based approach, but since I happen to find some very good
presentations of CBD I thought I'd share it, so everyone can do as they
wish.
Most CBD information I've been able to find on the net, are specifically
aimed at webapplications development and not so much for client desktop
and GUI application development.
Anyways I've begun to outlining a couple of "services" I think must be
in the system of our application. I'm concentrating on the very core. I
would really like to show it to you, but you need to understand the
concepts of CBD first.
So please get started with it and then I help you to catch up and
explain my thinking around the core services.
Here are some documents I think could serve as something of a
starting-point (an exclusive select after having browsed to numberous of
more and less relevant resources):
---
Short presentation comparing object and component technology (PDF
212KB):
http://www.umlcomponents.com/objectsandcomponents.pdf
This one I think describes neatly - visually - the difference between
the object oriented and the component based design thinking.
---
From Requirements to Components (PDF 237KB)
http://www.umlcomponents.com/elm-sa.pdf
This one puts in context with the Unified Modelling Language UML - again
very visual :). It's good to know, because UML is a really good way for
doing the design specs more visual which I'm striving for, because i
belive strongly that the base of a good application is a well
communicated architecture.
---
And worth mentioning again, since its the one really promise-looking
Open Source project commited to Component Based Design as well as having
extensive material on the subject - Apache Avalon:
http://jakarta.apache.org/avalon/
There's a lot of general information on CBD on the site, but the best
about the site is the online book on "developing with Apache Avalon":
http://jakarta.apache.org/avalon/developing/developing-with-avalon.pdf
It suggests that Avalon fits best for appliications that are going to be
on or communicating through a network server of some kind, and not so
much for client-only GUI-based applications. However they don't assume
that parts of Avalon can be used as a base. Especially the framework
itself - which also is one of the subpojects - could be used for
example.
---
Anyways, I'm really excited about this, and hope you'll all be with me
...sooner or later ;)
Henrik
|