首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >软件/编程框架的实际定义是什么?

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

Stack Overflow用户
提问于 2010-04-04 01:48:12
回答 3查看 2.4K关注 0票数 3

Wikipedia上的文章似乎太冗长了。

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

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

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-04-04 01:58:19

如果您自己定义了整个程序结构,但在某些操作中使用了预先构建的构建块和原语,那么您就是在使用库。

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

票数 6
EN

Stack Overflow用户

发布于 2010-04-04 01:52:19

看起来答案就在你的问题里。

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

票数 1
EN

Stack Overflow用户

发布于 2010-04-04 01:54:35

这个定义的第一部分是我所能想象到的最简洁的定义,它的定义就像软件框架一样模糊和模糊。来自维基百科(为了节省其他人的浏览):

在计算机编程中,软件框架是一种抽象,其中提供通用功能的通用代码可以由提供特定功能的用户代码选择性地覆盖或专门化。框架是软件库的一个特例,因为它们是包装在定义良好的API中的代码的可重用抽象,但它们包含一些将它们与普通库区分开来的关键区别功能。软件框架具有这些区别于库或普通用户应用程序的显著特征:

  1. 控制反转-与库或普通用户应用程序不同,在框架中,整个程序的控制流不是由调用者决定的,而是由framework.1
  2. default行为决定的-框架具有默认行为。这种默认行为实际上必须是一些有用的行为,而不是一系列no-ops.
  3. extensibility -A框架可以由用户扩展,通常通过选择性覆盖或由提供特定functionality
  4. non-modifiable框架代码的用户代码专门化-通常不允许修改框架代码。用户可以扩展框架,但不能修改其代码。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2572109

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档