On csdn today, I saw a netizen asking questions about components and architecture. I thought about it and checked some information.
Component definition (Component)
Broad Definition: a component is short for a computer software component. It is a software entity that can be reused at various stages of the software life cycle. It can be a design,CodeOr other products in the software development process. Such as software that can be assembled,ProgramTemplate, program original code or target module and Software Requirement Description, Specification Description, program description, data description, test description and test case and other software components. "Reuse" refers to the use of existing software components elsewhere in the same system or in another system.
Narrow definition: software components are software products that can be assembled with open interfaces and definite meanings. It can be assembled as a component and other components into a larger software or software component without modification.
Framework)
The architecture is short for the computer software architecture. It is a reusable software that needs to be extended to achieve "half-completion. The framework provides an extensible template for the application domain. It has a complete structure, basic components, and a clear description of the interface to assemble other components or program extension points.
An extension point is a clear identifier of a feature that is allowed to be replaced, modified, or the position of the program body in the framework.
Component Description
Component-the basic unit of the software, which should be large enough to make the component functional and capable of packaging and inserting. This type of unit should be small enough to facilitate maintenance and upgrade.
Components are larger than objects (Information Hiding and data abstraction), providing more reuse mechanisms.
Generally, object-oriented technology is used inside components.
Architecture Description
The architecture provides a unified overall design. It also provides functions (such as interfaces and storage) that are useful to all applications ).
Architecture is a partial solution for similar application sets. Architecture 80%, additional 20%.
The Framework calls components, rather than calling each other between components.
The architecture grasps the immutating part of all the problem solutions in a certain field, and also needs to add the changed part (assembly) to make the application a specific application in the field.
Features of components
Plug-and-use (multiplexing)
Maintenance
Function available
Granular
No path (encapsulation) for direct communication with other components)
Self-describing (separation of IDL interfaces and implementations)
Framework)
Object bus (Platform)