【问题标题】:.NET API vs .NET SDK.NET API 与 .NET SDK
【发布时间】:2015-12-31 04:26:38
【问题描述】:

免责声明:我是 Windows SDK 和 API 的新手,一般来说对 API 和 SDK 有点陌生。

我曾经编写了一个通过 PHP SDK 使用 Evernote API 的 Web 应用程序,但我并没有真正了解 SDK 与 API。最近,一位同事告诉我,有一个 Windows SDK 并没有过多提及 .NET,而 .NET 有“自己的 SDK 和 API”。那有意义吗?谁能将这与 Evernote 场景进行类比?

【问题讨论】:

    标签: .net api winapi sdk


    【解决方案1】:

    SDK 就像旅行社可能为您准备前往未知领域的东西一样:工具、文档、用例示例、头文件。 API 就像当地人承诺始终遵守的该国家/地区的标准做事方式。

    Evernote 创建了一种与其服务交互的标准方式:一种合同。 SDK 通常会提供可用接口的文档,包括该软件开发工具包 (SDK) 中的应用程序编程接口 (API)。例如,Windows SDK has lots of tools, header files 和其他只有开发人员才需要和想要的好东西。它似乎不包括 WinAPI 文档,因为那是 available on MSDN.

    WinAPI 由通过随 Windows 分发的 DLL 公开的函数组成。您可以在 Visual C++ 中本机使用它们。在 .Net 中使用它们需要平台调用。这些是应用程序可能想要做的常见事情:创建新窗口、打开并写入磁盘上的文件,或打开浏览对话框供用户选择数据文件。我相信您对 Windows 打开文件对话框很熟悉;想象它不存在,每个应用程序都必须自己制作。一方面,许多用户会感到困惑。每个应用程序的做法都会有所不同。

    .Net 确实具有任何 CLR(公共语言运行时)语言原生的完整函数框架:C#、Vb.net、托管 c++ 等等。很多时候,.net 调用实际上只是在底层使用对 WinAPI 的调用。那毕竟是Windows下做事的“方式”。

    最后一点:有一个可下载的 Windows SDK,但实际上没有单一下载的“.Net SDK”之类的东西。 Microsoft 将所有 .Net 资源下载统称为“.Net SDK”的一部分,但通常“SDK”是您解压缩的单个文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-16
      • 2017-10-06
      • 1970-01-01
      相关资源
      最近更新 更多