.NET API与.NET SDK

时间:2015-12-31 04:26:38

标签: .net api winapi sdk

免责声明:我是Windows SDK和API的新手,对API和SDK一般都是新手。

我曾经编写过一个Web应用程序,通过它的PHP SDK使用Evernote的API,而不是真正理解SDK与API。最近,一位同事告诉我,有一个Windows SDK没有提及.NET,而且.NET有“自己的SDK和API”。那有意义吗?任何人都可以将此类推给Evernote情景吗?

1 个答案:

答案 0 :(得分: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"是一个解压缩的单个文件。