Wikipedia中的文章看起来过于冗长。软件/编程框架的实际定义是什么?
我将框架理解为一套设计良好的库和工具。 Qt框架为跨平台GUI提供了一套库/工具。可可框架为Mac做同样的事情。
什么是软件框架的实际定义?
Wikipedia中的文章看起来过于冗长。软件/编程框架的实际定义是什么?
我将框架理解为一套设计良好的库和工具。 Qt框架为跨平台GUI提供了一套库/工具。可可框架为Mac做同样的事情。
什么是软件框架的实际定义?
如果你自己定义的整体方案的结构,但使用预构建模块和原语的某些操作,您使用的是库。
A 框架另一方面为您定义了整体程序结构,让您在预定义的扩展点上添加和扩展功能。
看起来像你的问题中的答案。
它是一套集成的库,它抽象出底层语言或体系结构的某些部分,并提供通常用于其设计的特定区域的工具(例如,Web框架将具有处理HTML的工具)。
该定义的第一部分与我可以想象的那样简洁,像一个软件框架可能会模糊和模糊的东西。维基百科(保存浏览其他人的话):
软件框架,在计算机 编程,是一种抽象的 它提供通用 功能的通用代码可以选择性 重写或由用户代码 提供专业具体的功能。 框架是在 软件库一个特殊的情况下,他们的代码可重用 抽象定义良好的API中包裹 ,但他们 包含一些关键的区别 功能,从 正常的库将它们分开。软件框架 有这些显着特征 从图书馆或 普通用户的应用程序将它们分开:
- 控制反转 - 在 框架,不像在图书馆或 普通用户的应用程序,控制 总体方案的流程是 不是由调用者决定的,而是由 构成。[1]
- 默认行为 - 框架具有 默认行为。此默认 行为实际上必须是一些 有用行为,而不是一系列 无操作。
- 延展性 - 甲框架可以是 由用户扩展通常由 选择性压倒一切的或专门 由用户代码提供特定 功能
- 不可修改的框架代码 - 将 框架代码,在一般情况下,是不 允许被修改。用户可以扩展框架 ,但不能修改其代码 。