构件和组件没有标准的定义,很多企业下的定义都不太一样。就“component”一词而言,在不同的场景下有不同的理解和翻译:
1 在JSF下的component可以叫组件,也可以叫控件
2 在SCA中component有多种翻译:组件、构件、原子构件、原子组件
就面向构件的理论体系而言,构件是个抽象的概念,不对应于具体的技术和具体的框架,有一个老外的定义挺好:
A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only. A software component can be deployed independently and is subject to composition by third parties.