在开发环境中,技术人员会常用“sdk”、“rest”以及“API”等专有词汇。那么这些名词分别是什么含义?他们又分别用在哪些场景中呢?今天我们就来具体介绍下SDK和REST的概念和区别。
1、什么是SDK?
SDK即“软体开发工具包”,一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。通俗点是指由第三方服务商提供的实现软件产品某项功能的工具包。
通常SDK是由专业性质的公司提供专业服务的集合,比如提供安卓开发工具、或者基于硬件开发的服务等。也有针对某项软件功能的SDK,如推送技术、图像识别技术、移动支付技术、语音识别分析技术等,在互联网开放的大趋势下,一些功能性的SDK已经被当作一个产品来运营。
开发者不需要再对产品的每个功能进行开发,选择合适稳定的SDK服务并花费很少的经历就可以在产品中集成某项功能。
2、什么是Rest接口?
在目前的Web服务实现方案中,REST模式的Web服务相对更加简洁。REST从资源的角度来观察整个网络,分布在各处的资源由URI确定,客户端的应用通过URI来获取资源以及资源获取的结果信息。对资源的操作包括获取、修改、创建和删除资源,这些操作正好对应HTTP协议提供的GET、POST、PUT和DELETE方法。对象存储提供的就是标准的基于HTTP协议的REST接口,对象存储中的容器和对象就是两种REST资源,用户可以使用标准的HTTP请求来创建,获取,删除容器和对象。
对象存储rest接口域名及端口号请查阅开发者文档下的对象存储开发文档。
3、SDK与REST接口分别在什么时候使用?
SDK的开发比较简单,直接使用Restful接口更加灵活、不受语言和平台限制。
SDK适于集成到本地或者服务器端的应用开发中,Java、C++、Python等开发应用时可以直接调用API访问对象存储系统服务,如JavaEE应用、服务器脚本、视频应用等。
Rest对外接口适用于暂时没有SDK支持的开发场景下,例如网页应用,或者使用其他语言开发时,可以自行请求Restful 接口,通过HTTP协议与对象存储系统进行交互。
4、关于SDK与REST对外接口的区别?
二者只是封装程度的区别,SDK内部实现也是要访问rest接口。对象存储的服务都是以Restful web 服务的形式提供访问的,为了提高开发效率,对象存储系统提供给用户的多语言开发包SDK,支持Java,c++,python等。用户可以选择自行编程直接访问 rest接口,也可以调用对应的SDK库函数来访问 rest 接口。
Vecloud作为专业的Cloud MSP服务商,为企业用户提供上云咨询、迁移等服务,帮助企业更好的管理、优化云资源。