[发明专利]独立于产品发布的API版本控制有效
申请号: | 201580055961.5 | 申请日: | 2015-10-13 |
公开(公告)号: | CN106796521B | 公开(公告)日: | 2020-11-13 |
发明(设计)人: | B.雷克托尔;L.W.奥斯特曼;T.巴苏 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F9/54 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 立于 产品 发布 api 版本 控制 | ||
用于根据所提供的API合约的集合而被进行版本控制的合约平台的技术。API合约既是开发时间的可执行组件,又是运行时间的可执行组件。每个这样的合约定义了在运行时间被对应的实施模块完全支持的API的特定集合。与遗留平台的单体API不同,合约应用被写入API合约。这样的应用是“与平台无关的”。
背景技术
常规地,遗留平台倾向于是功能的单体(monolithic)分组。也就是说,平台通常经由其单体平台API来展现其全部功能。应用利用该API在平台上进行操作检验。
这样的遗留平台倾向于当它随时间推移而发生变化时作为整体被进行版本控制。较新版本的平台可以是或不是较旧版本的超集。也就是说,较新版本可以支持或不支持所有与较旧版本相同的功能,并且如果它们支持,它们可能并非以相同的方式支持该功能。因此,为了保证正确的操作,常规应用必须被明确开发为在平台的某些版本上工作。在这种情况下,对于应用将支持哪些平台的决定必须在开发时间(应用正被创建的时候)而不是运行时间(应用正在执行的时候)被做出。因此,针对遗留平台设计和实现的应用与那些平台联系起来,并且将可能无法在其它平台或平台版本上正确操作。
发明内容
此部分所提供的发明内容概括了本发明的一个或多个部分或完整的示例实施例,以便为读者提供基本的高水平的理解。该发明内容并非是本发明的扩展性描述,并且其可能并未标识出本发明的关键元素或方面或者对本发明的范围加以界定。其仅有的目的是以简化形式呈现本发明的各个方面来作为以下所提供的详细描述的引言。因此,本发明作为整体不应局限于本文提供的任何特定的(多个)实施例或(多个)示例或(多种)组合。
本发明包含用于根据所提供的API合约的集合而被进行版本控制的合约平台的技术。API合约既是开发时间的可执行组件又是运行时间的可执行组件。每个这样的合约定义了在运行时间被对应的实施模块完全支持的API的特定集合。与遗留平台的单体API不同,合约应用被写入API合约。这样的应用是“与平台无关的”。本文使用的术语“合约应用”或类似术语指代以编程方式访问或利用由一个或多个API合约定义的特征的任意实体,包括软件。
许多所附特征将被更容易地领会,因为同样的特征通过参考以下结合附图所提供的详细描述而变得更好理解。
附图说明
以下提供的详细描述将在结合附图进行考虑时被更好地理解,在附图中:
图1是示出本文描述的其中可以实施本发明的示例计算环境的框图。
图2是示出被配置为提供遗留平台的示例系统的框图。
图3是示出被配置为提供合约平台的示例系统的框图。
图4是示出API合约的示例图示的框图。
图5是示出用于确定API合约在运行时间的可用性的示例方法的框图。
图6是示出用于由API合约对可用性查询等做出响应的示例方法的框图。
图7是示出用于由合约平台对合约可用性查询等做出响应的示例方法的框图。
图8是示出类似于图3的示例系统的被配置为提供填充(shimmed)合约平台的示例系统的框图。
不同图中被同样编号的标记被用来在附图中标示相似或相同的元素或步骤。
具体实施方式
此部分中结合附图所提供的详细描述描述了本发明的一个或多个部分或完整的示例实施例,但是其并非意在描述本发明的所有可能的实施例。该详细描述给出了技术、系统和/或方法发明中的至少一些的各种示例。然而,也可以根据示例实现相同或等同的技术、系统和/或方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580055961.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种背光源及液晶显示模组
- 下一篇:滤除短波蓝光的显示面板