Inherently Component Based Applications
Some applications do not require a component-based application, whereas others seem to require a component-based environment (or at least an enivironment that
provides very similar functionality).
Examples of inherently component based applications/systems include:
-
CGI/Servlets (web server-side)
-
Compound document systems. (e.g. OpenDoc, OLE, and possibly the client-side of the web e.g. Java, ActiveX and the plug-ins.)
-
Microkernel and similar OS architectures (i.e. systems where OS parts can be "plugged in" after the OS installation)
-
Application extensions (aka "plug-ins) (e.g. PhotoShop plug-ins, Excel plug-ins,... )
-
...
Counter-examples:
-
Very small, self-contained embedded systems. (i.e. the whole software package comes on an EPROM, so the application is the "unit of release")
-
...
Forces affecting this classification
Why is it necessary to build an application using components? (Discarding
any "developer convenience" or "development economy" factors.)
-
Change of at least part of the application after the point of a working release is required.
Feel free to add examples, counterexamples and forces that affect the classification
CategoryComponents