软件/编程框架的实际定义是什么?

时间:2010-04-03 17:48:12

标签: frameworks terminology

Wikipedia中的文章似乎过于冗长。

我将框架理解为一套精心设计的库和工具。 Qt框架为跨平台GUI提供了一组库/工具。可可框架为Mac做同样的事情。

软件框架的实际定义是什么?

3 个答案:

答案 0 :(得分:6)

如果您自己定义整体程序结构,但是对于某些操作使用预构建的构建块和基元,则使用

框架另一方面为您定义整体程序结构,允许您在预定义的扩展点添加和扩展功能。

答案 1 :(得分:1)

在您的问题中看起来像答案。

它是一组集成的库,它抽象了底层语言或体系结构的某些部分,并提供了在其设计的特定区域中常用的工具(例如,Web框架将具有处理HTML的工具)。 / p>

答案 2 :(得分:0)

该定义的第一部分就像我可以想象的那样简洁,像软件框架那样含糊不清,模糊不清。来自维基百科(以保存其他人浏览):

  

计算机中的软件框架   编程,是一种抽象   哪些通用代码提供通用   功能可以有选择性   用户代码覆盖或专门化   提供特定功能。   框架是一个特例   软件库就是这样的   包含代码的可重用抽象   在一个定义良好的API中,他们   包含一些关键的区别   将它们分开的功能   普通图书馆。软件框架   有这些显着特征   将它们与库或库分开   普通用户应用程序:

     
      
  1. 控制倒置 - 在一个   框架,不像在图书馆或   普通的用户应用程序   整体计划的控制流程是   不是由来电者决定的,而是由   框架。[1]
  2.   
  3. 默认行为 - 框架有一个   默认行为。这个默认值   行为实际上必须是一些   有用的行为,而不是一系列的   空操作。
  4.   
  5. 可扩展性 - 框架可以   通常由用户扩展   选择性覆盖或专门   通过提供特定的用户代码   功能
  6.   
  7. 不可修改的框架代码 -   一般来说,框架代码不是   允许修改。用户可以   扩展框架,但不能修改   它的代码。
  8.   
相关问题