产品经理须知:如何区分前端后端,常说的API和SDK又是什么?

10 评论 18718 浏览 220 收藏 8 分钟

编辑导语:产品经理的工作常常需要和多个岗位的人进行对接,因此,对其他岗位的名称、工作内容等,产品经理最好有所了解,以免工作时找错对应人员。其中,前端、后端、API、SDK等名词便是产品经理需要了解的,本文作者进行了总结,一起来看一下。

一、如何区分前台、后台、前端开发人员、后端开发人员

前台、后台,指的是具体页面。

  • 前台,是用户直接能看到的页面,所有人都可以访问。
  • 后台,是有权限的运营人员或特殊用户(比如淘宝卖家)用权限登录后才看得到的页面,除了能看到其他人看不到的报表外,在后台还能修改前台显示给用户看的内容。
  • 前端/后端,很多时候指的是人,即前/后端工程师。衍生含义为——前/后端工程师的工作内容。

不严谨的说法是:写页面的就是前端,操作数据的就是后端。前端负责还原UI设计的界面,以及与后端联调接口。一般设计师只需要与前端沟通,产品经理需要与两者沟通。

前端若细分,可分为小程序前端、web前端、H5前端。一般来说,小程序前端、web前端、H5前端使用的语言都是html+css,因此一个前端一般能做web页面也能做H5页面,也能干小程序的页面开发的活。而对于APP开发,安卓开发和iOS开发就是前端,一般只会专注于某端APP的活。

  • Web前端开发:HTML+CSS+JavaScript。
  • Android终端开发:Java(开发工具:Androidstudio)。
  • iOS终端开发:Objective-C(开发工具:Xcode)。

前台页面和数据库的沟通,主要通过API进行沟通。

举例:猫眼APP的影院列页面,前端只要需要负责页面布局还原和接口(API)联调的工作,如文字大小、页面布局排版、标签的样式等;但是影院列表的数据返回就要连接数据库,这个就需要后端开发做逻辑处理了,页面调用接口,后端根据入参从数据库中查询相应数据,再进行逻辑处理,最后返回到前端页面,可以理解为一个输入输出的过程。

如果你发现你身边有这样一个人,他前端后台,样样精通,文能提笔发paper,武能调试除bug。这种人叫做:全栈工程师。

再进一步探讨猫眼APP页面,猫眼APP“影院列表页”的接口除了“获取影院列表”的接口外,还有其他接口,比如城市列表接口、品牌列表接口、区域列表接口、地铁列表接口、搜索接口等,但是“获取用户当前位置”功能,这个就不需要后端参与了,前端直接调用系统定位服务就可以实现了。

多个接口的组合使用形成了功能,如上方猫眼APP,多个接口组合,形成了一个完整的找影院的功能。后续如果产品要去接入第三方的开放平台,本质就是对第三方开放出来的接口进行组合使用,来实现自己所需的功能。

了解了前后端的原理后,后续对于功能出现bug时,就不至于不知道找谁了。产品经理在验收的时候,如果是页面布局问题,直接找前端沟通,但如果是页面数据返回不对的问题,这一般是接口的问题,就需要跟后端沟通了,当然也有可能是前端入参传错了。

二、API与SDK的区别

上文提到接口,也就是API,那么API到底是什么?API是前端调用后端数据的一个通道,通过这个通道,前端页面可以访问到后端的数据,但是又无需调用源代码。

API又分为open API和私有API。Open API顾名思义,即是向所有人公开的接口,允许任何人调用它并获取到它背后的数据。在也有些公司作为产品出售。如百度的AI市场,有语音识别、语音合成、人脸识别、美颜SDK等出售,研发使用现成的SDK,节省了研发时间。

阅读接口文档的关键在于读懂入参和出参,接口相当于函数,客户端调用API,输入信息后,执行完函数,输出结果返回前端,下图是“银行卡OCR识别”接口实例。

入参:银行卡图片
出参:OCR识别到的卡号,以及根据卡号查询到的银行卡基本信息:卡类型、银行logo、银行名称等

注:可到阿里云、百度云、腾讯云等云平台找更多的接口案例。

SDK:概念:软件开发工具包(SDK,全称:Software Development Kit)。

一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。

通俗点是指由第三方服务商提供的实现软件产品某项功能的工具包。

就相当于很多API和其他文件的集合体,你可以用这个完成某一个事情。SDK可不需要依赖网络,如APP安装包里只要涵盖人脸对比SDK,因为人脸对比的方法已经封装在SDK,而SDK在用户安装APP时,已经下载到手机,中因此可以实现离线场景下的人脸对比。如百度人脸对比SDK。

举例子:整个计算器产品可以看做是一个SDK,它里面有API集合(计算器),说明文档(说明书),以及一些其他文件。这个SDK的功能就是计算,可能要算什么不确定,但是你可以通过这个SDK中的某个方法完成,实现你的目的。

 

作者:口述产品,公众号:口述产品

本文由 @口述产品 原创发布于人人都是产品经理,未经许可,禁止转载

题图来自 Unsplash,基于 CC0 协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 知识点+1+1……

    一、
    Web前端开发:HTML+CSS+JavaScript。
    Android终端开发:Java(开发工具:Androidstudio)。
    iOS终端开发:Objective-C(开发工具:Xcode)。

    二、
    SDK就相当于很多API和其他文件的集合体,你可以用这个完成某一个事情。
    举例子:整个计算器产品可以看做是一个SDK,它里面有API集合(计算器),说明文档(说明书),以及一些其他文件。这个SDK的功能就是计算,可能要算什么不确定,但是你可以通过这个SDK中的某个方法完成,实现你的目的。

    来自广东 回复
  2. 写的很好

    来自广东 回复
  3. 太妙了

    来自北京 回复
  4. 👍

    回复
  5. 我也听懂了 太棒啦

    来自北京 回复
  6. 感谢,很通俗易懂!

    来自广东 回复
  7. 感谢!对于没有技术背景的产品小白来说,非常有用,通俗易懂!

    来自北京 回复
    1. 谢谢

      来自广东 回复
  8. 真不错!收藏了!

    来自广东 回复
  9. 很实用啊~谢谢分享~

    来自北京 回复