科技: 人物 企业 技术 IT业 TMT
科普: 自然 科学 科幻 宇宙 科学家
通信: 历史 技术 手机 词典 3G馆
索引: 分类 推荐 专题 热点 排行榜
互联网: 广告 营销 政务 游戏 google
新媒体: 社交 博客 学者 人物 传播学
新思想: 网站 新书 新知 新词 思想家
图书馆: 文化 商业 管理 经济 期刊
网络文化: 社会 红人 黑客 治理 亚文化
创业百科: VC 词典 指南 案例 创业史
前沿科技: 清洁 绿色 纳米 生物 环保
知识产权: 盗版 共享 学人 法规 著作
用户名: 密码: 注册 忘记密码?
    创建新词条
科技百科
  • 人气指数: 12670 次
  • 编辑次数: 2 次 历史版本
  • 更新时间: 2010-07-04
方兴东
方兴东
发短消息
高兴
高兴
发短消息
相关词条
戴夫·海厄特
戴夫·海厄特
最佳编程语录大全
最佳编程语录大全
程序员笑话大全
程序员笑话大全
下一代程序员
下一代程序员
女程序员
女程序员
彼得·诺维格
彼得·诺维格
Russ Cox
Russ Cox
15名程序员界性感的奇葩
15名程序员界性感的奇葩
Mike Kruzeniski
Mike Kruzeniski
Jeff Fong
Jeff Fong
推荐词条
希拉里二度竞选
希拉里二度竞选
《互联网百科系列》
《互联网百科系列》
《黑客百科》
《黑客百科》
《网络舆情百科》
《网络舆情百科》
《网络治理百科》
《网络治理百科》
《硅谷百科》
《硅谷百科》
2017年特斯拉
2017年特斯拉
MIT黑客全纪录
MIT黑客全纪录
桑达尔·皮查伊
桑达尔·皮查伊
阿里双十一成交额
阿里双十一成交额
最新词条

热门标签

微博侠 数字营销2011年度总结 政务微博元年 2011微博十大事件 美国十大创业孵化器 盘点美国导师型创业孵化器 盘点导师型创业孵化器 TechStars 智能电视大战前夜 竞争型国企 公益型国企 2011央视经济年度人物 Rhianna Pratchett 莱恩娜·普莱契 Zynga与Facebook关系 Zynga盈利危机 2010年手机社交游戏行业分析报告 游戏奖励 主流手机游戏公司运营表现 主流手机游戏公司运营对比数据 创建游戏原型 正反馈现象 易用性设计增强游戏体验 易用性设计 《The Sims Social》社交亮 心理生理学与游戏 Kixeye Storm8 Storm8公司 女性玩家营销策略 休闲游戏的创新性 游戏运营的数据分析 社交游戏分析学常见术语 游戏运营数据解析 iPad风行美国校园 iPad终结传统教科书 游戏平衡性 成长类型及情感元素 鸿蒙国际 云骗钱 2011年政务微博报告 《2011年政务微博报告》 方正产业图谱 方正改制考 通信企业属公益型国企 善用玩家作弊行为 手机游戏传播 每用户平均收入 ARPU值 ARPU 游戏授权三面观 游戏设计所运用的化学原理 iOS应用人性化界面设计原则 硬核游戏 硬核社交游戏 生物测量法研究玩家 全球移动用户 用户研究三部曲 Tagged转型故事 Tagged Instagram火爆的3大原因 全球第四大社交网络Badoo Badoo 2011年最迅猛的20大创业公司 病毒式传播功能支持的游戏设计 病毒式传播功能 美国社交游戏虚拟商品收益 Flipboard改变阅读 盘点10大最难iPhone游戏 移动应用设计7大主流趋势 成功的设计文件十个要点 游戏设计文件 应用内置付费功能 内置付费功能 IAP功能 IAP IAP模式 游戏易用性测试 生理心理游戏评估 游戏化游戏 全美社交游戏规模 美国社交游戏市场 全球平板电脑出货量 Facebook虚拟商品收益 Facebook全球广告营收 Facebook广告营收 失败游戏设计的数宗罪名 休闲游戏设计要点 玩游戏可提高认知能力 玩游戏与认知能力 全球游戏广告 独立开发者提高工作效率的100个要点 Facebook亚洲用户 免费游戏的10种创收模式 人类大脑可下载 2012年最值得期待的20位硅谷企业家 做空中概股的幕后黑手 做空中概股幕后黑手 苹果2013营收 Playfish社交游戏架构

Don Box 是一位著名的教育家,被公认为组件对象模型 (COM) 领域的权威人物;他是简单对象访问协议 (SOAP) 规范的制定者之一,也是“COM,我的爱”一词的发明者。最近,他作为架构师加入了 Microsoft .NET Developer and Platform Evangelism Group。Box 是以下三本畅销书的作者:Essential COM、Effective COM 和 Essential XML。他还撰写了一系列以审视 .NET 战略为内容、名为 Essential .NET 的书籍。在其早期的职业生涯中,Box 与他人共同创立了DevelopMentor Inc.。此公司是一家组件软件思想库,致力于为开发人员提供 COM、Java 和 XML 使用方面的培训。

作为一名广受欢迎的公众演说家,Box 以善于吸引世界各地的观众,拥有深邃的技术洞察力以及令人目瞪口呆的惊人之举而著称—一项惊人举措是在 2001 年于巴塞罗那举行的 TechEd 上,他在满是肥皂泡沫的浴缸里主持一个有关 SOAP 的讨论。在业余时间,Box 喜欢与 MSDN Magazine 的撰稿人同仁在 Band on the Runtime(它演奏有关各种编程主题的歌曲)打发时光。此外,Box 还负责创建了一个时尚栏目“与Don Boxers同行”。

目录

Don Box 论 WSDL 的重要性 编辑本段回目录

Don Box

架构师,Microsoft Corporation

2002 年 2 月

摘要:对 Web 服务社区发出的个人呼吁,通过为基于脚本的 Web 服务编写 WSDL,让类型安全成为优先考虑的事情。(3 页打印页)

在观察各种 Internet 论坛的时候,明显感受到,整个开发社区仍然一直致力于如何将 Web 服务的结构集中在一起。到 2001 年底,新兴的 Web 服务行业的所有人都将注意力集中到了 SOAP 上。从 1999 年激烈的争论来看,这的确是一个了不起的进步。遗憾的是,仅 SOAP 一项是不够的,就像在它之前的 XML 不足以满足大家的要求一样。目前的 SOAP 假定各方都“仅仅知道”可以交换哪些消息以及它们如何联系在一起。尽管 SOAP 的一位原始作者(也就是鄙人)在不断地进行呼吁,但是 SOAP 仍然对于人们如何获知消息的内容没有提供任何帮助。我个人认为,标准化的发现过程和元数据格式的开发相对滞后,这将在 1999 和 2000 年的大部分时间内阻碍 SOAP 的发展。

抓住问题的本质
无论何时,只要有两方或者多方开展协作,就需要对协作的具体内容达成共识。首先,也是最重要的,所有协作方都需要理解协作的本质。即每一方能够从协作中获得哪些利益?每一方承担哪些责任和义务?对于人类之间的交互来说,这些问题十分重要,对于Web服务之间的交互或者软件集成,情况也大体如此。

某个特定协作的含义和条款可以被视作一个协定。在理想世界中,协定应该简洁、清晰地描述协定的语义,而不涉及其他任何东西。例如,如果我雇佣您修剪我的草坪,那么协定可能如下所示:

读者负责修剪作者的草坪,每周一次,报酬为 10 美元。

该协定的语义十分清晰。您修剪我的草坪。我付钱给您。简单、清楚。大功告成。

遗憾的是,美国的法律界通过理清如上所示的协定带来的混乱挣得大量财富。为什么是这样呢?因为协定一方或多方的目的并没有通过协定语言充分地反映。英语这种语言的多变性为解释留下了太多的空间。例如,如果有一个以上的读者要为我修剪草坪怎么办?我需要付钱给所有人还是仅仅付钱给您一个人(您知道这里的“您”是谁吗)?此外,我可以用加元付报酬吗?我可以欠帐并且每 10 年付一次钱吗?如果您的工作做得很糟糕又该如何?人类协定与软件协定一样,明确声明的意图越多,产生误解的机会就越少。

在 Web 服务领域中,有一种强烈的观点,认为协定应该以机读格式进行保存和传输。出于几种原因,机读格式要优于非机读格式。首先,采用机读格式的协定可以具有众多的功能,包括验证、加速和深层的工具集成。此外,如果使用机读格式,可以通过编写程序,将协定转换为任何已知格式。包括将协定转换为人类能够阅读的文档。而反过来则非如此;从正常文档中获取任何信息都不可避免地需要大量的人工干预。

采用机读协定显然是针对使用强类型编程语言(例如 Java、Delphi 或者 C++)的开发人员。遗憾的是,这种思想很难被某些编程人员所接受,特别是那些沉湎于大多数脚本语言的弱类型世界中的开发人员。但是,在整个世界都转变为 Perl 之前,我们需要采取一些行动,使强类型语言能够以一种自然的方式处理 Web 服务。

渴望帮助的呼声
多年来,我一直在努力使脚本开发人员相信机读协定格式具有各种优点。我曾经从技术角度与他们争论这个问题,但是没有任何用处。我也曾尝试从个人偏好 的角度来讨论这个问题,但是却无法让我自己走得那么远。所以,今天我要尝试一种不同的方法,从个人坦诚和自我否定的角度来谈这个问题:

您好,我的名字叫 Don。

我使用强类型语言。

我需要您的帮助。

我曾经试着只使用脚本语言。而且真的这样做了。

我必须承认,使用脚本让我感到很自由。它令人激动不已。甚至会令人上瘾。没想到,我真的上瘾了。

我的第一个问题是,我的程序有时候不能正常工作。尽管我努力了,有时我还是忘记为某个函数传递一个参数。而其他时候,我会向数学库传递类似 "XXVII" 或 "Twenty Seven" 这样的参数。我最大的问题是,我的拼写水平实在很糟糕,我发现,尽管很多脚本语言不区分大小写,但是它们好像对拼写十分敏感。

真正奇怪的事情是,在我测试脚本程序的时候,很多编程错误并不会显现出来。相反,总是在用户开始实际应用我的程序之后,这些错误才浮出水面。这让我感到很郁闷,尤其是在用户知道我家里的电话的时候。我想,我的妻子肯定比其它任何人都讨厌我使用脚本。她提醒我说,当我在 K&R C 工作的时候,我们经常会接到询问类似问题的许多电话;而当我转移到 ANSI C 之后,我们有了更多的睡眠时间。

我发现,通过戒酒和将每天花费在编程上的时间限制在 30 分钟之内以减轻疲劳,我可以大幅度降低程序错误的数量。遗憾的是,我总是发现我必须与其他编程人员一同工作,而他们中的很多人使用强类型语言。我试着让这些人将我的程序与他们的程序一起使用,但却总是出现问题。我编写的基于 Windows 的脚本可以被访问,但是只能通过 Idispatch 进行,我的 C++ 朋友看上去对此十分不满。他们会经常编写这些看上去十分奇怪的 IDL 文件,同时又经常窃窃私语,说一些有关我的不太友好的话。我曾经试着劝说他们像我一样转移到脚本语言,但是没有任何效果。我很快发现,C++ 的编程人员是世界上最聪明的编程人员,因为我遇到的每一位这样的人都会向我迅速表明这一点。

我必须承认,我很弱小。我最终屈服于强类型语言的力量。

如果编译器不帮助我在程序中检查出一些愚蠢的编程错误和拼写错误,我很难写出优秀的代码。

我不能无视使用 C++ 的同事对我的奚落。

所以现在,我需要得到脚本开发人员社区的帮助。

尽管多年以来,我一直在努力让 SOAP 成为程序在 Internet 上通讯的一种标准方法,但我发现原始的 SOAP 和 XML 与我现在正在使用的所有编译器不一致。我知道如果您给我机读协定的定义,那么我的编译器就可以帮助我与您的 Web 服务对话。能提供很多帮助。

如果您没有给我提供一个机读的协定,那么我将手工编写一个看上去很奇怪的 WSDL 文件,这简直要让我发疯了。我相信编写 WSDL 文件这个工作也会让您发疯的,但是我敢打赌,如果您写了一个 WSDL 并且将它放在您的 Web 站点上,那么其他任何人都可以使用它,并且没有人需要再次编写 WSDL。此外,如果您还同时编写了一个 10 行的 WS-Inspection 或者 DISCO 文件,那么我可以找到您的所有其他服务有关的信息。

我知道 WSDL 并不是十全十美。老天知道,在发布之前,我想方设法让它能够更完美一些。幸运的是,W3C 刚刚建立了一个 WSDL 工作组。它整体看上去像社区,但是拥有清理整顿的决心,就像 SOAP,在得到大量业内人士和专家的注意之后,便得到了整顿。实际上,SOAPBuilders 正于二月份进行一个 WSDL bake-off 会议,它必定会对此产生一些推动作用。

我还知道,为基于脚本的 Web 服务编写 WSDL 需要付出更多的劳动,但是辛苦您一个,将使成千上万的开发人员受益。仔细想想吧,如果您让他们的生活更加轻松,他们会对您所做的一切大加赞赏。

而且不再窃窃私语诋毁您。

相关链接:

WSDL 1.1 规范

SOAP v1.1 规范

Web 服务操作

Don Box 是一位著名的教育家,被公认为组件对象模型 (COM) 领域的权威人物;他是简单对象访问协议 (SOAP) 规范的制定者之一,也是“COM,我的爱”一词的发明者。最近,他作为架构师加入了 Microsoft .NET Developer and Platform Evangelism Group。Box 是以下三本畅销书的作者:Essential COM、Effective COM 和 Essential XML。他还撰写了一系列以审视 .NET 战略为内容、名为 Essential .NET 的书籍。在其早期的职业生涯中,Box 与他人共同创立了DevelopMentor Inc.。此公司是一家组件软件思想库,致力于���开发人员提供 COM、Java 和 XML 使用方面的培训。作为一名广受欢迎的公众演说家,Box 以善于吸引世界各地的观众,拥有深邃的技术洞察力以及令人目瞪口呆的惊人之举而著称—一项惊人举措是在 2001 年于巴塞罗那举行的 TechEd 上,他在满是肥皂泡沫的浴缸里主持一个有关 SOAP 的讨论。在业余时间,Box 喜欢与 MSDN Magazine 的撰稿人同仁在 Band on the Runtime(它演奏有关各种编程主题的歌曲)打发时光。此外,Box 还负责创建了一个时尚栏目“与Don Boxers同行”。

相关链接编辑本段回目录

参考文献编辑本段回目录

→如果您认为本词条还有待完善,请 编辑词条

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。
1

标签: Don Box

收藏到: Favorites  

同义词: 暂无同义词

关于本词条的评论 (共0条)发表评论>>

对词条发表评论

评论长度最大为200个字符。