【问题标题】:API vs Toolkit vs Framework vs LibraryAPI vs Toolkit vs Framework vs Library
【发布时间】:2011-03-27 22:48:21
【问题描述】:

我的问题很简单,我想通过一个简单的例子得到一个明确的答案。

API、工具包、框架和库之间的主要区别是什么?

【问题讨论】:

    标签: api frameworks terminology toolkit


    【解决方案1】:

    我更喜欢以下:

    1. API 是对如何使用应用程序的抽象描述。例如,API 可以描述聊天服务器的函数语法(声明)。即登录、发布消息、订阅消息。并且,它描述了使用该应用程序的任何协议。即必须在发送或接收消息之前登录,否则如果没有发送或接收消息,客户端会在 2 分钟后被丢弃。
    2. 库是 API 的实现,它包含实现功能和协议(保持使用状态)的编译代码。
    3. 工具包是一组库 (API) 和服务组合在一起,为开发人员提供更广泛的可能解决方案。例如,Globus Toolkit 提供开发人员可以在其服务器上安装和启动的服务(例如文件传输、作业订阅和调度)。他们还提供 API 来构建可以使用以集成方式部署的服务的应用程序。例如,开发人员可以构建一个程序,使用 Job Submission API 与 Job Submission Service 进行通信。
    4. 框架是一组防止不当使用或开发的指南。开发人员必须在框架的规则和边界内构建他们的应用程序。这是通过强制开发人员扩展当前框架以开发新软件来完成的。通过扩展框架,您可以强制遵守框架。

    我并不是说这些是完全正确的,但到目前为止它对我来说还可以!

    【讨论】:

      【解决方案2】:

      这一直是我的理解,你无疑会看到关于这个问题的不同意见:

      API(应用程序编程接口)- 允许您以独立的方式在已经运行的应用程序中使用代码。

      框架 - 为特定任务/应用程序类型提供基类和接口的代码,通常采用设计模式的形式。 (虽然不总是)

      库 - 可以随意换入和换出以完成类级别任务的相关代码

      Toolkit - 可用于在组件级别完成任务的相关代码。

      【讨论】:

        【解决方案3】:

        这些术语有时会被误解。

        类似的帖子,请阅读:

        What is the major difference between a framework and a toolkit?

        Framework vs. Toolkit vs. Library

        我更喜欢将库称为模块或命名空间的别名。工具包和 A.P.I.通常是一组用于共同任务的库。 Altought,A.P.I.与面向对象编程相比,更用于过程式编程。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-11-13
          • 2011-03-19
          • 2021-10-14
          • 2014-05-24
          • 2023-03-26
          • 1970-01-01
          相关资源
          最近更新 更多