Component versus Module
From CSSEMediaWiki
(Difference between revisions)
(New page: A component and a module have distinctions that separate the two terms. Known meanings are noted below: * A module and component is the same thing, that is an encapsulated part of a progr...) |
m |
||
Line 9: | Line 9: | ||
* Mambo, a CMS, defines a module as a lower level architectural part than a component. A component can be a whole application by itself, whereas a module is too low level. | * Mambo, a CMS, defines a module as a lower level architectural part than a component. A component can be a whole application by itself, whereas a module is too low level. | ||
− | * Joomla defines the difference between these two concepts in | + | * Joomla defines the difference between these two concepts in a similar way. |
{{Nomenclature}} | {{Nomenclature}} | ||
[[Category: Nomenclature]] | [[Category: Nomenclature]] |
Latest revision as of 13:43, 10 September 2009
A component and a module have distinctions that separate the two terms. Known meanings are noted below:
- A module and component is the same thing, that is an encapsulated part of a program that provide a semantically related and complete unit of functionality. This is a higher architectural scale than a class as it is not restricted to a single concept. This is related to Separation of concerns.
- Modules and components interact with the use of defined interfaces.
- Components are a concept in Component-based-modelling and UML, in these cases, module is a term that is usually used synonymously.
- Mambo, a CMS, defines a module as a lower level architectural part than a component. A component can be a whole application by itself, whereas a module is too low level.
- Joomla defines the difference between these two concepts in a similar way.
Nomenclature | |
---|---|
Techniques: Abstraction | Aggregation versus Composition | Association versus Dependency | Coupling | Encapsulation | Information hiding | Inheritance | Multiple Inheritance | Overloading | Polymorphism
Features: Abstract class | Class versus Object | Component versus Module | Instance | Interface | Method | Package versus Namespace | Superclass | Subclass |