GoogleAPI权威指南中文版

GoogleAPI权威指南中⽂版
去年有段时间得空,就把⾕歌GAE的API权威指南看了⼀遍,收获颇丰,特别是在⾃⼰⼏乎独⽴开发了公司的云数据中⼼之后,感触更深。
公司的云数据中⼼⽀撑着600多应⽤(截⽌2017年7⽉),应⽤种类繁多和开发者也不尽相同,虽然有⼩明做了统⼀的SDK,但是依然让我深深地感觉到TMD不仅仅是界⾯,API也是很考验作者⽤户体验设计能⼒的。
所以,现在将API权威指南翻译出来,与⼤家分享。英语⽔平有限,勿怪哈。劳教警察
介绍
海员培训
这是⽹络API的⼀般设计指南。⾃2014年以来,它已在Google内部使⽤,是Google在设计Cloud API和其他Google API时所遵循的指南。本设计指南在此共享,以通知外部开发⼈员,并使我们所有⼈更容易合作。
Google Cloud Endpoints开发⼈员可能会发现本指南在设计gRPC API时特别有⽤,我们强烈建议此类开发⼈员使⽤这些设计原则。但是,我们不要求使⽤它。您可以使⽤Cloud Endpoints和gRPC,⽽⽆需遵循指南。
本指南适⽤于REST API和RPC API,特别关注gRPC API。 gRPC API使⽤Protocol Buffersto定义其API表⾯和API服务配置来配置其API服务,包括HTTP映射,⽇志记录和监视。 HTTP映射功能由Google API和云端点⽤于JSON / HTTP到协议缓冲区/ RPC转码的gRPC API使⽤。
沙扬娜拉赏析本指南是⽣活⽂件,随着时间的推移,新的风格和设计模式得到采纳和批准。以这种精神,它永远不会是完整的,⽽且API设计的艺术和⼿艺将永远有⾜够的空间。arm linux
烫吸
本⽂档的使⽤约定
要求等级关键字“MUST”,“MUST NOT”,“REQUIRED”,“SHALL”,“SHALL NOT”,“SHOULD”,“SHOULD
NOT”,“RECOMMENDED”,“MAY”和“OPTIONAL” ⽂档将被解释为RFC 2119中所述。
在本⽂档中,使⽤粗体字体突出显⽰这些关键字。
⾯向资源设计借贷记账法
本指南的总⽬标是为了帮助开发者设计简单、易⽤和风格⼀致性的⽹络API。 At the same time, it also helps converging designs of socket-based RPC APIs with HTTP-based REST APIs.
传统上,⼈们根据API接⼝和⽅法(如CORBA和Windows COM)设计RPC API。 随着时间的推移,越来越多的接⼝和⽅法被引⼊。 最终的结果可能是出现了⼤量的接⼝和⽅法,它们每个都与其他⽅法不同。 开发⼈员必须仔细地学习每⼀个,才能正确使⽤它,这既费时⼜容易出错。
REST架构风格第⼀次出现是在2000年左右, 主要⽬的是为了让在HTTP/1.1协议上更有效的⼯作。 它的核⼼思想是定义那些可以使⽤少量操作⽅法来操作的命名资源。资源和⽅法,就如同API的 名词 和 动词 .结合HTTP协议, 资源名称其实就已经可以映射为⼀个URL了, ⽽⽅法,具体来说就是常见的HTTP⽅法,如 POST, GET, PUT, PATCH, 和 DELETE.
在互联⽹上,HTTP REST API最近取得了巨⼤的成功。在2010年,⼤约74%的公共⽹络API是HTTP REST API。
虽然HTTP REST API在互联⽹上⾮常受欢迎,但它们传输的数据量⽐传统的RPC API⼩。例如,美国⾼峰时段的互联⽹流量的⼤约⼀半是视频内容,很少有⼈会因为性能原因考虑使⽤REST API来传送这些内容。在数据中⼼内部,许多公司使⽤基于插座的RPC API来承载⼤多数⽹络流量,这可能⽐公共REST API⾼出数量级。
实际上,由于各种原因需要RPC API和HTTP REST API。理想情况下,API平台应为所有API提供最佳⽀持。本设计指南可帮助您设计和构建符合这⼀原则的API。它通过将资源导向的设计原理应⽤于通
⽤API设计来实现,并且定义了许多常见的设计模式以提⾼可⽤性并降低复杂性。
注意:本设计指南解释了如何将REST原理应⽤于独⽴于编程语⾔,操作系统或⽹络协议的API设计。它不仅仅是创建REST API的指南。

本文发布于:2024-09-22 14:34:34,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/501723.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:设计   指南   资源   风格   映射   可能   公司
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议