当前位置: 首页 > 专利查询>微软公司专利>正文

关系建模制造技术

技术编号:2850415 阅读:156 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及项之间的关系。可以在项本身外部定义项之间的关系,从而提供模块化、灵活且可扩展的系统。例如,可以在包含用于根据指定的关系返回特定元素或值的方法的类中定义项之间的关系。而且,可以扩展编译器或类似的系统来接受简单属性格式的关系表达式,并指引这样的调用至特定的方法。

【技术实现步骤摘要】
相关申请的交叉引用本申请要求于2005年2月18日提交的、名为“OBJECT ORIENTEDRELATIONSHIP MODELING(面向对象关系建模)”的美国专利临时申请第60/654,237号的优先权。该临时申请的整体通过引用包含在此。
技术介绍
程序设计语言是专门用来为执行任务而将指令传递至计算机或微处理器的形式语言。近年来,面向对象程序设计成为设计员和程序员用来实现计算机系统内的功能的多个惯用且流行的模型之一。面向对象的程序设计是独特的,至少因为其前提是按照对象或事物而不是像其它模型那样按照动作来查看。对象技术的好处源于三个基本原理封装、多态以及继承。对象隐藏或封装其数据和相关联方法的内部结构。并非展示实现细节,而是对象呈现清晰地表示它们的抽象而无需无关信息的接口。多态比封装更进一步。多态允许为不同的数据类型使用相同的代码,即多种形状一个接口的想法。从而,软件组件可以请求另一组件而不必确切地了解该组件。接收请求的组件解释该请求,并根据其变量和数据来判断如何执行该请求。第三个原理是继承性,它使得开发员能够再次使用之前存在的设计和代码。该能力允许开发员避免从零开始创建所有软件。相反,通过继承,开发员可以导出继承和修改其它类的状态和行为的子类。面向对象的程序设计模型通常由基于类的方法来定义。在该系统中,对象是包括状态和行为两者的实体。对象的状态和行为均由类定义,类标识了特定类型的对象。基于类定义创建的对象被认为是在动态类型中反映的该类的实例。因此,类指定对象可以包含的数据(即,状态)以及该对象可以执行的方法、功能或行为。方法用于通过变更其中包含的数据来修改相关联对象的内部状态。对象中这样的数据和方法的组合通常被称为面向对象程序设计中的封装。封装规定对象的状态仅由与该对象相关联的良好定义的方法改变。当对象的行为限于这样的良好定义的位置和接口时,对象中的改变(例如,代码修改)将对系统中的其它对象和元素产生最小的影响。
技术实现思路
以下提供了本专利技术的简化概述,以提供对所要求保护的本专利技术的主题的某些方面的基本理解。该概述不是本专利技术的广泛概观。它既不旨在标识本专利技术的关键或重要的元素,也不描绘本专利技术的范围。该概述的唯一目的是以简化的形式呈现本专利技术的某些概念,作为之后呈现的更详细描述的序言。简言之,本专利技术涉及项和/或其元素之间的关系的表达式。更具体地,关系被作为一级概念。根据本专利技术的一方面,关系可以由项外部的构造,诸如类来表示,该构造提供计算和/或导航关系的机制或方法。根据本专利技术的另一方面,可以利用数据类型属性记号来调用关系方法。本专利技术的各方面至少因为它们提供了用于与项之间的关系交互的可扩展且易于使用的系统和方法而是有益的。通过使得关系成为一级编程对象,可以在现有项之间创建新的关系,而不必修改项。这是有价值的,至少因为它允许定义可能不受程序员控制的某些或全部项或元素之间的关系,或者在不可能修改这样的元素来反映新关系的情况下允许定义这样的关系。而且,可以通过属性表示容易地实现类方法的调用,并将其映射至实际方法记号。为了达到前述和相关的目的,此处结合以下描述和附图来描述所要求保护的本专利技术的某些说明性方面。这些方面指示了可实现本专利技术的各种方法,所有这些方法旨在落入所要求保护的本专利技术的范围之内。当结合附图考虑阅读以下详细描述时,其它优点和新颖的特征将变得明显。附图说明图1是关系系统的框图。图2是示例性关系系统的框图。图3是包含影响组件的关系系统的框图。图4是编译系统的框图。图5是便于与数据交互的接口系统的框图。图6是集成开发系统或环境的框图。图7是定义关系的方法的流程图。图8是编译方法的流程图。图9是数据交互方法的流程图。图10是协助程序开发的方法的流程图。图11是示例性编译环境的示意性框图。图12是示出合适的操作环境的示意性框图。图13是示例计算环境的示意性框图。具体实施例方式现在参考附图描述本专利技术的各方面,在所有附图中,同样的标号指的是相同或对应的元素。然而,应该理解,附图和关于附图的详细描述不旨在将所要求保护的本专利技术限于所揭示的具体形式。而是相反,本专利技术旨在覆盖落入所要求保护的本专利技术的精神和范围内的所有修改、等效方案和替换方案。如在本申请中所用的,术语“组件”和“系统”等指的是计算机相关的实体,它们或者是硬件、硬件和软件的组合、软件或者是执行中的软件。例如,组件可以是,但不限于,运行在处理器上的进程、处理器、对象、可执行代码、执行的线程、程序和/或计算机。作为说明,运行在服务器上的应用程序和服务器本身都可以是组件。一个或多个组件可以驻留在执行中的进程和/或线程内,且组件可以位于一台计算机上和/或分布在两台或多台计算机之间。术语“示例性”在此处用来指的是作为示例、实例或说明。此处被描述为“示例性”的任何方面或设计不必被解释为与其它方面或设计相比是较佳的或更有利的。而且,此处提供了各种示例性代码片段。应该理解,这些示例是为说明清楚的目的而提供的,并且应理解,这些示例不意味着将所揭示的本专利技术的范围限于在所要求保护的本专利技术的各方面描述中所使用的语言、体系结构和/或特征。可以将基于人工智能的系统(例如,显式和/或隐式训练的分类器、基于知识的系统...)用于执行根据如下所述的本专利技术的一个或多个方面的推断和/或概率判断和/或基于统计的判断。如此处所用的,术语“推断”一般指的是从通过事件和/或数据捕捉到的一组观察值中推出或推断系统、环境和/或用户的状态的过程。推断例如可以被用来标识特定的上下文或动作,或者可以生成状态的概率分布。推断可以是概率性的,即,基于对数据和事件的考虑对所关注的状态的概率分布的计算。推断也可以指的是用于从一组事件和/或数据中组成更高级事件的技术。这样的推断导致从一组观察到的事件和/或存储的事件数据中构造出新的事件或动作,而不论原先的事件是否在时间上紧密相关,也不论原先的事件和数据是来自一个还是若干个事件和数据源。可以将各种分类方案和/或系统(例如,支持矢量机、神经网络、专家系统、贝叶斯信任网络、模糊逻辑、数据融合引擎...)用于执行关于本专利技术的自动和/或推断出的动作。另外,所揭示的本专利技术可以被实现为系统、方法、装置或制品,它们使用生产软件、固件、硬件或其任何组合的标准程序设计和/或工程技术来控制基于计算机或处理器的设备,以实现此处所详细描述的各方面。如此所用的术语“制品”(或者“计算机程序产品”)旨在包括可从任何计算机可读设备、载波或介质来访问的计算机程序。例如,计算机可读介质可以包括,但不限于,磁性存储设备(例如,硬盘、软盘、磁条...)、光盘(例如,高密度盘(CD)、数字多功能盘(DVD)...)、智能卡、以及闪存设备(例如,卡、棒、跳转驱动器(jump drive)...)。另外,可以理解,载波可以用来承载诸如在发送和接收电子邮件或访问诸如因特网或局域网(LAN)等网络时使用的计算机可读电子数据。当然,本领域的技术人员可以认识到,可以对该配置进行各种修改,而不背离所要求保护的本专利技术的范围和精神。最初转向图1,根据本专利技术的一方面示出关系系统100。关系系统100可以包括项接收器组件110和关系生成系统120。项接收器组件110接收、检索或获取项和/或其元素。这些项可以包括,但不限于,数据类型本文档来自技高网
...

【技术保护点】
一种计算机实现的关系系统,所述关系系统包括以下计算机可执行组件:    项接收器组件,用于获取两个或多个程序项;以及    关系生成组件,用于从所述接收器组件接受项,并生成定义所述项之间的一个或多个关系的构造。

【技术特征摘要】
US 2005-2-18 60/654,237;US 2005-9-20 11/230,9831.一种计算机实现的关系系统,所述关系系统包括以下计算机可执行组件项接收器组件,用于获取两个或多个程序项;以及关系生成组件,用于从所述接收器组件接受项,并生成定义所述项之间的一个或多个关系的构造。2.如权利要求1所述的系统,其特征在于,所述项是数据类型和XML文档之一。3.如权利要求1所述的系统,其特征在于,所述构造是类。4.如权利要求3所述的系统,其特征在于,所述类包括根据指定关系检索特定项元素的方法。5.如权利要求4所述的系统,其特征在于,所述类是静态类。6.如权利要求1所述的系统,其特征在于,所述一个或多个关系是包括一对一、一对多、多对一和多对多的二元关系。7.如权利要求1所述的系统,其特征在于,所述一个或多个关系是由对所述项封装导航计算的方法指定的。8.如权利要求1所述的系统,其特征在于,所述一个或多个关系包括组成、关联和链接之一。9.如权利要求1所述的系统,其特征在于,所述关联是公值、条件和实体之一。10.如权利要求1所述的系统,其特征在于,还包括为关系生成项专用名的影响组...

【专利技术属性】
技术研发人员:B阿尔巴哈瑞HJM迈耶ME蒂姆
申请(专利权)人:微软公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1