api first

第三章. API 设计的第一次探险

RESTful 架构遵循着一套代理可以通过交换资源通信的原则.
这套通用规则为应用程序交换数据流和为有助于构建一个web创造了巨大的可能,使得Web更开放和可访问性.
在Web的黑暗时代,经常可以看到网站声明它们首选,支持的最好的浏览器."本站最好使用<浏览器名称和版本>来查看"是页面中最常见的标语.
现在已不是关乎偏好了.每个浏览器都会解析和显示不同HTML代码,同时有些功能并不能像预期的一样工作.尽管我们已经离开了互联网的的中世纪(大部分),web开发者仍继续在为创建跨多设备之间的web应用程序作斗争.
要注意的是Web是为使得与彼此能够更好的交流而发明的,因此,人类和软件代理都可以作用于整个系统的信息共享.然而Web,以及后来的REST,是被设计成在它的体系结构的不同中实现核心原则的简单性和均匀性重复.

应用程序接口

API 是一个一些软件组件之间进行交互的接口.所以,一个 RESTful 接口也是一个对开发者和外部应用暴漏软件系统的内部函数的表述状态传递的接口.现在这些可以通过API自身来对特定的资源消费和交互.
API 并不是新奇的东西,或者说它不仅仅只在 web 世界中开发应用.事实上,一个API是指一套功能能够通过和一些组件交互来完成.这些动作和组件可以是数据库系统需要被web服务访问,或者一张视频卡通过通过软件类库暴漏了它的一些功能.在 REST 架构中,API定义了动作通过交换状态来访问或者修改资源:

  ________                                          _________                               ________
                    ________________                                ___________     
  App Data  _App Interface__            API             ____REST___     Client
  ________                                          _________    Interface      _________


  | Data |                                      /entrypoint                                     Client App
  | Model|      Server                   /collection                                    REST Library
                                                            /resource                                       HTTP Library
                                                             /action                                        Transport Protocols
                                                              /actions                                  Network Protocols
                                                             /collection                                Physical Link
                                                              /resource
                                                              /resource
                                                              /resource

API 设计过程是由应用数据需要被一个或者一套客户端或者服务端访问此数据上的行为开始的.
API 已经成为软件开发的一个重要方面.通过API对外开放一些功能,能够对用户完全隐藏内部系统的复杂程度和强制分离用户的关注点.
API 正在成为产品开发和企业执行力的基础.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,704评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,261评论 4 61
  • 我总是通过风的温度,空气的味道和天空的颜色,实实在在的感受到四季的变迁。这个季节是一年中舒适的时候,而这个季节的傍...
  • 独通文武善谋略, 孤行德信立中原。 如此功名浪淘尽, 愿随佛祖累世前。
    鱼行海底阅读 239评论 0 0