An abstraction layer (or abstraction level, or a layer of abstraction) is a way of hiding the implementation details of a particular set of functionality.
The simplification provided by a good abstraction layer allows for easy reuse.
Modularity is the degree to which a system's components may be separated and recombined.
wiki - Modular design
Modular design, or "modularity in design", is an approach that subdivides a system into smaller parts (modules) that can be independently created and then used in different systems to drive multiple functionalities. A modular system can be characterized by the following:
- Functional partitioning into discrete scalable, reusable modules consisting of isolated, self-contained functional elements
- Rigorous use of well-defined modular interfaces, including object-oriented descriptions of module functionality
- Ease of change to achieve technology transparency and, to the extent possible, make use of industry standards for key interfaces.
In industrial design, modularity refers to an engineering technique that builds larger systems by combining smaller subsystems.
Anything constructed can then be taken apart again, and the pieces used to make other objects.
No comments:
Post a Comment