什么是 SDK?

软件开发工具包(SDK)是一组适合于开发人员的平台特定构建工具集。您需要调试器、编译器和库等组件来创建在特定平台、操作系统或编程语言上运行的代码。SDK 将开发和运行软件所需的一切都集中在一处。此外,它们还包含文档、教程和指南之类资源,以及用于加快应用程序开发的 API 和框架。

SDK 有哪些优势?

SDK 在整个开发过程中提供多种优势,可协助开发人员创建应用程序。其中包括:

开发高效

SDK 通过提供可整合到应用程序中的预构建组件和库来提高开发效率。这些组件为开发人员节省以前从头开始编码和调试所花费的大量时间。 

加快部署

SDK 通过提供可让开发人员快速构建和集成应用程序的工具来加快部署。它们通常支持多个平台,可让开发人员在多个设备或操作系统上快速部署。

集成

SDK 提供预构建的模块、组件、程序包和工具,供开发人员构建、测试和部署软件应用程序。它们简化开发和测试,以及与其他系统和服务、代码示例和教程、调试工具和代码库的集成。 

节省成本

SDK 减少开发应用程序所需的时间和资源。通过提供预构建的组件和工具库,SDK 可让开发人员快速构建特性和功能。SDK 减少创建新应用程序所需的时间和成本。它们还降低与部署和维护应用程序相关的成本,同时提供简化的安装过程和更新。

SDK 有哪些用途?

SDK 有多种用途,包括如下:

移动应用程序开发

SDK 为开发人员提供用于开发移动应用程序的工具、库和其他资源。这些资源包括用于调试、监控和优化移动应用程序性能的组件。开发人员可以构建 UI 元素、访问数据以及与第三方服务集成。借助 SDK,开发人员还可更加轻松地在不同平台(例如 iOS 或 Android)上部署应用程序。 

Web 开发

SDK 为开发人员提供构建 Web 应用程序前端所需的工具,例如 HTML、CSS 和 JavaScript;同时提供各种后端资源,例如数据库、服务器端编程语言、框架和 API。SDK 还提供用于托管和扩展的部署工具。

云计算

SDK 提供各种 API 和库,用于连接云存储服务,或者用于访问数据库、分析或机器学习等云计算服务。开发人员使用这些 API 和库,采用其首选的语言与云环境集成。

物联网(IoT)

开发人员使用 SDK 创建与传感器交互的 IoT 应用程序,这样就能创建可以监控、收集和分析环境数据的应用程序。此外,您可以更有效地管理设备固件和软件更新,因为 SDK 通常提供各种更新和安全补丁。

游戏开发

游戏 SDK 通常附带示例代码、教程和其他资源,以协助开发人员打造精彩游戏。3D 图形库、音频库、物理引擎、人工智能库、联网库和开发工具都是标准的游戏组件。

SDK 中有哪些常见的工具?

在软件开发工具包中通常可以找到各种软件开发工具和构建块。其中包括:

API 库

应用程序编程接口(API)库是用特定编程语言(例如 Java、C# 或 Python)编写的代码集合。使用 API 访问特定功能、软件应用程序或 iOS 或 Android 等操作系统。  

调试器

调试器可以查找并纠正软件代码中的错误,同时提供对软件程序内部的实时访问。标准调试功能包括设置断点以暂停程序、检查变量的值以及逐行检查代码。

编译器和解释器

编译器和解释器将用编程语言编写的代码转换为机器可读的代码。编译器生成可执行程序,而解释器直接运行程序。

分析程序

分析程序分析应用程序性能,包括内存使用情况、执行时间和代码执行路径。通过收集和分析数据,分析程序可以帮助确定程序中可以进行优化或可能出现问题的区域。 

代码示例

代码示例是开发人员用来理解和实现特定概念或功能的示例代码。代码示例显示如何使用库和 API 等 SDK 组件来构建应用程序。 

部署工具

部署工具可让开发团队将其应用程序部署到目标平台。这可能涉及为相关平台配置应用程序和打包应用程序。部署工具的示例包括安装程序、自动化工具和部署向导。

集成开发环境(IDE)

IDE 汇集了开发人员用来编写和测试软件以及调试代码的基本工具。IDE 通常包括代码编辑器、编译器、调试器、项目管理器和版本控制系统。

SDK 如何运作?

使用 SDK 通常遵循三个步骤: 

  1. 购买或下载特定平台的 SDK,然后安装此 SDK。
  2. 在集成开发环境中使用 SDK 开发应用程序。
  3. 利用 SDK 中包含的说明、文档、代码示例和测试工具进行高效开发。

SDK 和 API 之间的区别

API 是可让应用程序相互通信的一组编程指令。API 为应用程序提供一种访问和共享数据的方式,通常是通过一系列请求和响应。例如,Web API 可能允许用户在网站上搜索产品,并且该 API 将提供相关信息作为响应。开发人员使用 API 将其应用程序与第三方服务(例如社交媒体网络或支付处理程序)集成。API 是两个应用程序之间的通信桥梁。另一方面,SDK 将第三方工具引入开发人员使用的环境。 

选择 SDK 时应考虑哪些事项?

您选择的 SDK 应针对特定使用案例进行优化,不应减慢应用程序的执行速度,同时提供必要的安全措施来保护用户的数据。一些考虑事项包括:

许可协议

务必检查 SDK 的许可协议,确保它涵盖所有必要的用途。SDK 必须符合法律规定,并且对所开发应用程序的使用或分发不应有任何限制。了解可能与 SDK 相关联的任何开源许可证的局限性至关重要。

安全性

您必须确保自己的 SDK 来自授权来源,并且不包含任何恶意或有害代码。您使用的 SDK 应得到适当的记录、支持和定期更新,以确保其安全性。 

兼容性

在决定使用哪个 SDK 时,确保其与应用程序的部署基础设施兼容至关重要。例如,SDK 应与您计划支持的所有设备的操作系统兼容。它还应该支持您应用程序所使用的语言,并提供一种与其他语言集成的方法。

AWS 提供哪些 SDK?

AWS 针对许多流行技术和编程语言提供 SDK。借助这些 SDK,您可以更轻松地在应用程序中使用相应语言或技术调用 AWS 服务。此外,AWS 还针对 AWS SaaS 产品提供 SDK,因此您可以在代码中更有效地使用它们。一些示例包括:

  • 适用于.NET 的 AWS SDK 通过一组一致且为.NET 开发人员所熟悉的库提供简化的 AWS 服务。 
  • 适用于 Python 的 AWS SDK 将 Python 应用程序、库或脚本与 AWS 服务集成。
  • 适用于 Ruby 的 AWS SDK 通过为许多 AWS 服务提供 Ruby 类来消除编程的错综复杂性。
  • 适用于 Rust 的 AWS SDK 通过提供一组一致且为 Rust 开发人员所熟悉的库,简化了 AWS 服务的使用。
  • AWS WorkDocs SDK 通过针对 Amazon WorkDocs 站点资源提供全面的管理员和用户访问权限,消除了在解决方案和应用程序中实现文件协作和管理功能的复杂性。 
  • Amazon Chime SDK 可让开发人员为自己的应用程序添加由机器学习提供支持的实时语音、视频和消息收发功能。

开始免费试用 AWS,以开始使用适合您业务的正确 AWS SDK。

AWS 上的后续步骤

查看其他与产品相关的资源
查看开发人员工具服务 
注册免费账户

立即享受 AWS 免费套餐。

注册 
开始在控制台中构建

在 AWS 管理控制台中开始构建。

登录