[发明专利]用于在编程语言中深嵌入表达式树的通用接口有效
| 申请号: | 200780015874.2 | 申请日: | 2007-03-15 |
| 公开(公告)号: | CN101438244A | 公开(公告)日: | 2009-05-20 |
| 发明(设计)人: | A·赫杰斯伯格;M·J·沃伦;H·J·M·梅杰;D·C·库尔卡尼;M·托格森 | 申请(专利权)人: | 微软公司 |
| 主分类号: | G06F9/45 | 分类号: | G06F9/45;G06F17/30;G06F15/16 |
| 代理公司: | 上海专利商标事务所有限公司 | 代理人: | 陈 斌 |
| 地址: | 美国华*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 编程 语言 嵌入 表达式 通用 接口 | ||
背景
全球通信网络(例如,因特网)的出现现在使得大量数据可被访问。人们 每天都访问并查询非结构化和结构化数据。非结构化数据用于创建、储存和检 索报告、电子邮件、电子表格和其它类型的文档,并且由在原子级以非结构化 格式储存的任何数据构成。换言之,在非结构化内容中,没有概念性定义且没 有数据类型定义—在文本文档中,单词仅仅是单词。用于对非结构化数据的内 容搜索的现有技术需要诸如名称等加标签的实体或应用关键字和元标签。因 此,需要人类干预来帮助使得非结构化数据变得机器可读。结构化数据是具有 对原子数据类型的强制合成的任何数据。结构化数据通过允许针对预定数据类 型和理解的关系来进行查询和报告的技术来管理。
编程语言持续不断地演进以便于程序员指定并便于高效执行。在早期的计 算机语言中,低级机器码是盛行的。采用机器码,计算机程序或构成计算机程 序的指令用机器语言或汇编语言来编写并且由硬件(例如,微处理器)来执行。 这些语言提供了控制计算硬件的有效手段,但是对程序员而言非常难以理解和 开发复杂的逻辑。
随后,引入了提供各种抽象层的语言。因此,程序员可以用较高级源语言 在较高级编写程序,该程序然后可经由编译器或解释器转换成硬件理解的较低 级机器语言。程序设计的更大进步提供了附加的抽象层以允许比从前更迅速地 指定更先进的编程逻辑。然而,这些进步并不是没有任何处理成本地出现的。
主流编程语言中的数据库集成的状态还有许多有待改进之处。存在许多专 门的数据库编程语言,诸如xBase、T/SQL和PL/SQL,但是这些语言具有弱 且可扩展性差的类型系统,有极少或没有对面向对象的编程的支持,并且需要 专用的运行时环境。类似地,并不缺乏诸如C#、VB.NET、C++和Java等通用 编程语言,但是这些语言中的数据访问通常是通过缺少强类型化和编译时验证 的难以处理的API来发生的。另外,这些API缺少提供查询数据、数据集合等 的通用接口的能力。
概述
以下呈现了本发明的简化描述以便提供对在此描述的某些方面的基本理 解。本概述并不是对所要求保护的主题的全面综述。它既不旨在标识所要求保 护的主题的关键或重要要素,也不描绘本发明的范围。其唯一目的是以简化的 形式来介绍所要求保护的主题的一些概念,作为稍后呈现的更为详细的描述的 前序部分。
本发明涉及方便创建表达式树表示以允许实现数据操作的系统和/或方 法。一镜像组件可以创建允许利用通用接口IQueryable和IQueryable<T>来实 现各种数据操作和/或查询的表达式树表示,其中IQueryable和IQueryable<T> 对IEnumerable和IEnumerable<T>制作镜像。IEnumerable组件可以提供特别地 对数据集合工作并且具有特定且刚性特性的通用集合类型。另外,IEnumerable 组件可以采用一组查询标准查询操作符扩展函数,使得每一这样的操作符可以 取委托作为其自变量(例如,如在任何合适的命名空间中定义的)。该镜像组 件可以复制IEnumerable和IEnumerable<T>来提供允许查询通过利用 IQueryable和IQueryable<T>所创建的表达式树的通用接口,其中标准查询操作 符扩展方法的IQueryable和IQueryable<T>版本取所创建的表达式树而非委托 作为其自变量。
根据所要求保护的主题的一方面,该镜像组件可实现一查询处理器。该查 询处理器可利用与IEnumerable相关联的数据操作,诸如但不限于,Where、 Select、SelectMany、过滤器函数、分组函数、变换函数、与IEnumerable接口 和/或IEnumerable<T>接口兼容的任何合适的函数等等。该镜像组件可以创建 数据集合的表达式树表示(例如,查询可产生数据集合,而该数据集合由一表 达式树来表示),其中该表示可以是用于任何合适的查询处理器的更通用且查 询友好类型的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200780015874.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:改进的薄化法制造的玻璃绝缘体上的半导体
- 下一篇:一种新型超低温空调热泵系统





