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