sdk是什么(常说的API和SDK又是什么)
前台、后台,指的是具体页面。
前端/后端,很多时候指的是人,即前/后端工程师。衍生含义为——前/后端工程师的工作内容。
不严谨的说法是:写页面的就是前端,操作数据的就是后端,一般设计师只需要与前端沟通,产品经理需要与两者沟通。
前端若细分,可分为小程序前端、web前端、H5前端。一般来说,小程序前端、web前端、H5前端用户的语言都是html+css,因此一个前端一般能做web页面也能做H5页面,也能干小程序的页面开发的活。而对于APP开发,安卓开发和iOS开发就是前端,一般只会专注于某端APP的活。
前台页面和数据库的沟通,主要通过API进行沟通。
举例:猫眼APP的影院列页面,前端只要需要负责页面布局部分和接口(API)联调的工作,如文字大小、页面布局排版、标签的样式等;但是影院列表的数据返回就要连接数据库,这个就需要后台开发做逻辑处理了。
如果你发现你身边有这样一个人,他前端后台,样样精通,文能提笔发paper,武能调试除bug。这种人叫做:全栈工程师。
再进一步探讨猫眼APP页面,前端的任务就是页面的搭建,而后端负责开发接口,定义接口的入参和出参数。
影院列表页的接口除了获取影院列表的接口外,还有其他接口,比如城市列表接口、品牌列表接口、区域列表接口、地铁列表接口、搜索接口等,获取用户当前位置,这个就不需要后端参与了,前端直接调用系统定位服务就可以实现了
那么产品经理的验收的时候,如果是数据返回不对的问题,一般就需要跟后端沟通了,当然也有可能是前端入参传错了。了解了前后端的原理后,后续对于功能出现bug时,就不至于不知道找谁了。
API是前端调用后端数据的一个通道,就是我们俗说的接口,通过这个通道,可以访问到后端的数据,但是又无需调用源代码。
API又分为open API和私有API。Open API顾名思义,即是向所有人公开的接口,允许任何人调用它并获取到它背后的数据。在也有些公司作为产品出售。如百度的AI市场,有语音识别、语音合成、人脸识别、美颜SDK等出售,研发使用现成的SDK,节省了研发时间。
接口的关键在于入参和出参,接口相当于函数,客户端调用API,输入信息后,执行完函数,输入结果返回前端,下图是1个银行看OCR识别的接口例子。也可看上方猫眼APP的案例。
注:可到阿里云、百度云、腾讯云等云平台找更多的接口案例。
SDK:概念:软件开发工具包(SDK,全称:Software Development Kit)。
一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。
通俗点是指由第三方服务商提供的实现软件产品某项功能的工具包。
就相当于很多API和其他文件的集合体,你可以用这个完成某一个事情。SDK可不需要依赖网络,如APP安装包里只要涵盖人脸对比SDK,因为人脸对比的方法已经封装在SDK,而SDK在用户安装APP时,已经下载到手机,中因此可以实现离线场景下的人脸对比。如百度人脸对比SDK。
举例子:整个计算器产品可以看做是一个SDK,它里面有API集合(计算器),说明文档(说明书),以及一些其他文件。这个SDK的功能就是计算,可能要算什么不确定,但是你可以通过这个SDK中的某个方法完成,实现你的目的。
作者:版本627;公众号:版本627
本文由 @无序逻辑 原创发布于人人都是产品经理,未经作者许可,禁止转载。
题图来自Unsplash,基于CC0协议