QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

李锟谈 Fielding 博士 REST 论文中文版发布

  • 2007-07-02
  • 本文字数:1284 字

    阅读完需:约 4 分钟

日前,Roy Thomas Fielding 博士关于 REST 的论文 Architectural Styles and the Design of Network-based Software Architectures 中文版(《架构风格与基于网络的软件架构设计》)正式对外发布。在这个2000 年所著的论文中,首次系统阐述了REST 的架构风格和设计思想,对理解Web 架构和HTTP、URI 等标准背后的原理非常有帮助。InfoQ 中文站编辑霍太稳就此采访了主导此次公益性翻译的 Ajaxcn.org 网站站长李锟

Fielding 博士是 HTTP 和 URI 等 Web 架构标准的主要设计者,也是 Apache HTTP 服务器的主要设计者,他的这篇论文是 Web 发展史上的一个重要的技术文献。深入理解 REST 等 Web 架构背后的工作原理,对于开发者设计和构建高效的 Web 应用,这也是李锟决定发起这个翻译项目的主要原因:

翻译这篇论文就是为了将 REST 的思想介绍到中国。我们翻译了《Ajax 模式与最佳实践》,这是一本关于 REST 架构设计的非常好的书籍,内容非常深入。但是如果不懂 REST,就难以理解这本书中介绍的架构。而这本书的作者对于 REST 的来龙去脉也语焉不详,似乎认为每个读者都已经读过了 Fielding 的论文,对于母语不是英语的中国读者而言,这个假设是不成立的。而 Fielding 的论文阅读的难度非常大,如果不翻译过来,普通的读者肯定无法读懂(这个判断是客观的,因为我们自己也是在初稿翻译出来后,又费了很大功夫才真正理解了这篇论文)。为了帮助这本书的读者,我启动了这个公益性的翻译项目。

翻译的过程也是一次学习的过程,在这篇论文的翻译过程中,李锟充分理解了 REST 的各种架构约束,例如通用接口、操作语义的可见性、支持大粒度的数据通信等等。也理解了 HTTP 和 URI 的正确的使用方式,因为 HTTP 和 URI 正是基于 REST 的思想设计出来的。所有 HTTP 的扩展或者使用 HTTP 的 Web 应用,都应该与 REST 的各种架构约束相匹配,否则肯定无法在 Web 上面取得成功。

在过去的 7 年中,Web 技术的发展验证了本论文所主要阐述的 REST 技术的有效性,李锟举例说:

一个典型的反例就是 SOAP,尽管它在企业应用中取得了一些成功,并且被某些人吹嘘的天花乱坠,但是在 Web 应用中,却几乎没有人愿意使用 SOAP。我的判断是,主要的原因在于 SOAP 违反了 REST 的通用接口和语义可见性等架构约束。它仅仅是将 HTTP 作为一种传输协议来使用的,这种将 HTTP 仅仅作为一种能够穿越防火墙的传输协议来使用的扩展不只 SOAP。

但李锟表示虽然理解 REST 对 Web 开发非常重要,这一技术在国内的应用现状却并不乐观:

REST 应用目前在国内刚刚萌芽,还谈不上有什么应用。在 REST 的思想传入国内之前,国内绝大多数开发者并不理解 HTTP 和 URI 是用来做什么的,当然也包括我在内。

这篇论文由李锟和他的几个朋友共同翻译,如 91yee 翻译社区的负责人廖志刚、 Matrix 技术社区负责人刘丹和《重构与模式》的译者杨光等,由李锟负责全文的审校和润色。在这期间还得到了国内技术社区一些专家的支持,比如庄表伟、李琳骁、孟岩骆古道范凯、刘新生、刘江等。全程用时两个半月时间。

Update:

本论文于 2013 年被李锟重新翻译,新版经马国耀审校后于 2014 年发布于 InfoQ 中文站:查看新版论文译本

2007-07-02 21:2614413

评论 1 条评论

发布
用户头像
thx
2020-10-09 11:11
回复
没有更多了
发现更多内容

AI Agent实战:打造京东广告主的超级助手 | 京东零售技术实践

京东零售技术

《Operating System Concepts》阅读笔记:p62-p75

codists

操作系统

Flink基于Paimon的实时湖仓解决方案的演进

Apache Flink

大数据 flink 实时计算

焱融存储联合神州鲲泰发布“训推一体”解决方案

焱融科技

AI存储 DeepSeek 大模型训推一体机

TEN 现已接入智谱 GLM-Realtime丨社区来稿

声网

3月4日巴塞罗那,2025全球数字经济大会 “融合・创新・共赢”,中欧共拓数字经济新赛道

极客天地

我的开源项目达成1000 star里程碑!python-office招募开源小伙伴

程序员晚枫

Python 开源

YashanDB SQL语言

YashanDB

数据库 yashandb

YashanDB PL语言

YashanDB

数据库 yashandb

DeepSeek 重构 AI 基础设施 焱融科技引领 AI 存储新范式

焱融科技

人工智能 焱融科技 AI存储 AI 基础设施 DeepSeek

YashanDB主备复制及切换

YashanDB

数据库 yashandb

40个JS常用使用技巧案例

威哥爱编程

JavaScript js

DeepSeek 即将发布 5 个开源项目;Cartesia Voice Changer:声音转换、克隆和实时语音翻译丨日报

声网

深度对比!为什么海马体最终选择了Affinity而不是PS?affinity photo比PS差哪里?

阿拉灯神丁

设计师 Photoshop 2023中文版 设计软件 Affinity Photo 好用的平面设计软件

YashanDB备份恢复

YashanDB

数据库 yashandb

《文明 7》局域网联机教程,贝锐蒲公英轻松实现组网

贝锐

联机游戏 联机

李锟谈Fielding博士REST论文中文版发布_Java_霍太稳@极客邦科技_InfoQ精选文章