基于组件的软件工程 编辑
基于组件的软件工程或基于组件的开发是针对系统的广泛功能,进行关注点分离的软件工程方式。此方式是以复用为基础的作法,定义、实现许多松耦合的独立组件,再将组件组合成为系统。此作法的目的是希望在软件本身的短期益处以及开发软件组织的长期益处之间取得平衡。
1
相关
在软件开发中,代码库是用于软件组建特定软件系统、应用程序或基于组件的软件工程一组的源代码。
基于接口编程也称基于接口的架构,它是一种在没有模块系统的面向对象程序设计语言中的基于组件的软件工程层面实现模组的架构模式。符合此例的一个语言是Java,截至2015年 ,它没有组件级别的模块系统。Java有一个包系统,但Java软件组件通常由多个Java包组成——并且在任何情况下,接口编程可以提供优于仅使用Java包的优势,即使组件仅由单个Java包组成。
Web组件是万维网联盟正在向HTML和文档对象模型规范添加的一套功能,它允许在Web文档和Web应用程序中创建可重用的小部件或组件。这样做的目的是将基于组件的软件工程引入万维网。组件模型将允许单个HTML元素的封装和互操作性。
跨平台组件对象模型是Mozilla的一个跨平台基于组件的软件工程。它类似微软的组件对象模型和CORBA。它有多个绑扎和接口描述语言描述符,因此程序员可以将自己的自定义函数插入到框架中并与其他组件连接。
Portlets在门户网站上管理和显示的插件的用户界面基于组件的软件工程。Portlet产生可以聚合到门户页面中的标记语言代码的片段,如HTML,XML等。通常,根据桌面比拟,一个门户页面显示为一组互相不重叠的portlet窗口,其中每一个portlet窗口显示一个portlet。因此,可以说一个portlet就像一个在门户网站上运行的基于Web的应用程序。 Portlet应用程序的一些例子包括电子邮件,天气预报,网络论坛和新闻等。
Mozilla应用程序框架是一套跨平台基于组件的软件工程,其构成了Mozilla应用软件。它最早被称为XPFE,一个跨平台前端的缩写。后来也曾被称为XPToolkit。为避免混淆,它现在被称为Mozilla应用程序框架。
Modelica是一种面向对象的程序设计、声明式编程的多领域建模语言,可用于基于组件的软件工程的复杂系统建模。Modelica语言是自由软件,由非盈利性质的Modelica协会开发。Modelica协会也开发了同样为自由软件的Modelica标准库,Modelica标准库包含可用于不同领域的约1290个常见组件模型和910个函数。
JavaServer Faces是一个为网络应用程序构建基于组件的软件工程的用户界面的Java规范,并已通过JCP格式化为Java EE的一部分。它也是一个MVC Web应用框架,通过在页面中使用可重用的UI组件简化了基于服务器的应用程序的用户界面。
马尔科姆·道格拉斯·麦克罗伊,著名数学家、工程师以及程序员,曾服务于贝尔实验室,参与包括Unix与Plan 9的开发。截至2019年,他是达特茅斯学院的客座教授,教授计算机科学。他曾提出基于组件的软件工程,并开发了多个Unix工具程式,如管道、Diff。
马尔科姆·道格拉斯·麦克罗伊,著名数学家、工程师以及程序员,曾服务于贝尔实验室,参与包括Unix与Plan 9的开发。截至2019年,他是达特茅斯学院的客座教授,教授计算机科学。他曾提出基于组件的软件工程,并开发了多个Unix工具程式,如管道、Diff。