文章目录

  • 前言一:什么是API
  • 分类一
  • 分类二
  • 前言二:Web的发展
  • 前言三:传统开发模式VS前后端分离
  • 传统的开发模式
  • 前后端分离



了解API和Web的发展有利于帮助你掌握Restful接口设计

前言一:什么是API

API(Application Programming Interface, 应用程序接口),是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。目的是提供应用程序与开发人员基于某软件或者硬件得以访问一组例程的能力,而无需访问源码,或者理解内部的共组机制的细节。

分类一

a程序需要b程序部分功能,只需要将b程序部分功能打包,交给a程序直接使用。
比如:Java中的jar包,这种API一般称之为SDK。

分类二

a程序或者项目 需要 b程序或者项目的部分功能,只需要b程序或者项目对外提供一个访问路径(入口),a程序按照约定好的访问方式进行访问,即可实现对象的功能。
比如:具有http协议请求访问,这种API称之为web应用接口。

具体例子如下:

ios 开发 在接口传参时必须要求参数的类型 接口程序开发_后端

点击例如的单号,自动填入到输入单号中,按F12,再点击查快递

ios 开发 在接口传参时必须要求参数的类型 接口程序开发_API_02

我们可以看到这种风格就是web应用接口。

前言二:Web的发展

Web 开发技术的发展可以粗略划分成以下几个阶段
静态内容阶段:在这个最初的阶段,使用 Web 的主要是一些研究机构。 Web 由大量的静态 HTML 文档组成。
CGI 程序阶段:在这个阶段, Web 服务器增加了一些编程 APl 。通过这些 API 编写的应用程序,可以向客户端提供一些动态变化的内
容。
脚本语言阶段:在这个阶段,服务器端出现了 ASP 、 PHP 、 JSP 、 ColdFusion 等支持 session 的脚本语言技术,浏览器端出现了 Java Applet 、 JavaScript 等技术。使用这些技术,可以提供更加丰富的动态内容。
瘦客户端应用阶段:在这个阶段,在服务器端出现了独立于 Web 服务器的应用服务器。同时出现了 Web MVC 开发模式,各种 Web MVC 开发框架逐渐流行,并且占据了统治地位。基于这些框架开发的 Web 应用,通常都是瘦客户端应用,因为它们是在服务器端生成全
部的动态内容。
RIA 应用阶段:在这个阶段,出现了多种 RIA ( Rich Internt Application )技术,大幅改善了 Web 应用的用户体验。应用最为广泛的 RIA 技术是 DHTML + Ajax 。 Ajax 技术支持在不刷新页面的情况下动态更新页面中的局部内容。同时诞生了大量的 Web 前端 DHTML 开发库,例如 Prototype 、 Dojo 、 ExtJS 、 jQuery / jQuery UI 等等。
移动 Web 应用阶段:在这个阶段,出现了大量面向移动设备的 Web 应用开发技术。除了 Android 、 iOS 、 Windows Phone 等操作系统平台原生的开发技术之外,基于HTML5的开发技术也变得非常流行。

前言三:传统开发模式VS前后端分离

传统的开发模式

前端写好静态的 html 页面交给后端开发,后端把 html 改成模板,然后使用模板引擎去套模板,比如 jsp , freemarke
后端人员在开发过程中如果发现页面有问题,要返回给前端修改,前端再交给后端,直至功能实现。
问题:前后端严重耦合

  1. 前端需要改 bug 调试时,需要在当前电脑安装一整套后端的开发工具,启动后端程序。
  2. 还要求后端人员会 html , js 等前端语言。
  3. 前端页面也会嵌入很多后端的代码 ;
  4. 一旦后端换了一套语言,前端也需要重新开发
  5. 沟通成本,调试成本,前后端开发进度相互影响,从而大大降低开发效率。

前后端分离

ios 开发 在接口传参时必须要求参数的类型 接口程序开发_API_03

前后端分离并不只是开发模式,也是 web 应用的一种架构模式。

在开发阶段,前后端人员约定好数据交互接口,即可并行开发与测试。

前端开发完成可以独自进行 mock 测试,后端也可以使用 postman 等接口测试工具进行测试。最后可进行功能联调测试。

优点:

1.前后端责任清晰,后端专注于数据上,前端专注于视觉上。

2.无需等待对方的开发工作结束,提高开发效率。

3.可应对复杂多变的前端需求。

4.增强代码可维护性

ios 开发 在接口传参时必须要求参数的类型 接口程序开发_java_04