构建时解析和类型检查引用

文档序号:9932629阅读:362来源:国知局
构建时解析和类型检查引用
【专利说明】构建时解析和类型检查引用
[000。 背景
[0002] 计算机和计算系统已经影响了现代生活的近乎每一个方面。计算机通常设及工 作、休闲、医疗保健、运输、娱乐、家政管理等。计算系统正提供越来越复杂且精致的功能。运 样的功能通常主要由底层软件驱动,该底层软件自身正变得越来越复杂。应用开发者具有 开发运种软件的任务,并调谐性能来确保高效且安全的操作。
[0003] 通常遵从客户端一服务器计算模型来设计和实现Web应用。运个模型通常提供,核 屯、应用逻辑在远程服务器上执行,执行结果通过客户端(例如,web浏览器)来访问W及客户 端代码使用应用层协议(例如,HTTP)来与服务器代码通信。服务器上web应用的执行通常由 一组件来驱动,该组件取得并解析接收自客户端的输入,将具有经识别的输入参数的请求 分派到相应的业务逻辑组件W供处理,并接着产生要被发送回客户端的输出。所产生的输 出通常还确定接下来应用将要接收什么输入。运样的组件通常使用域语言(domain language)来开发,所述域语言不同于用于开发所述应用的其他组件的编程语言。运种差异 性有时可能导致解析输入的代码和产生输出的代码之间的语义间隙,W及不同的标识符被 用于在不同组件中指代相同对象。
[0004] 此处要求保护的主题不限于解决任何缺点或仅在诸如上述环境运样的环境中操 作的各实施例。相反,提供该背景仅用于例示其中可实现所述一些实施例的一个示例性技 术领域。
[0005] 简要概述
[0006] 本文描述的至少一些实施例是指一种用于在引用相同值的不同代码中对应的引 用的解析和类型强制的构建时机制。分析两个代码段,并且作为结果,检测到在第一代码中 的第一引用将与第二代码中的第二引用相关使得它们都指代相同数据的指示 (directive)。响应于所检测到的指示,如果第一和第二引用的类型是兼容的,则代码生成 工具自动生成相关代码,该代码可由编译器解释为允许第一代码的经编译形式的第一引用 的类型的值被作为第二代码的经编译形式的第二引用的相同类型的相同值传递。
[0007] 随后可W编译所述第一代码、第二代码和所生成的相关代码。如果编译成功,运意 味着所述第一和第二引用已被适当地解析为指代相同值,同时适当的类型强制也在构建时 发生。因此,当经编译的代码运行时,不需要使用更多的计算资源来相关运两个引用,或确 保它们的类型是兼容的。运样,在运两个代码之间的语义间隙在构建时而非在运行时被贯 通。
[000引提供本
【发明内容】
W便W简化的形式介绍将在W下的【具体实施方式】中进一步描述 的一些概念。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用 作辅助确定要求保护的主题的范围。
[0009] 附图简述
[0010] 为了描述可获得本发明的上述和其它优点和特征的方式,将通过参考附图中示出 的本发明的具体实施例来呈现W上简要描述的本发明的更具体描述。可W理解,运些附图 只描绘了本发明的各典型实施例,并且因此不被认为是对其范围的限制,将通过使用附图 并利用附加特征和细节来描述和解释本发明,在附图中:
[0011] 图1例示出其中可采用本文中所描述的原理的示例计算系统;
[0012] 图2示出根据本文描述的原理的编程时环境,在其中代码创作实体提供关于到代 码的名字映射的信息;
[0013] 图3示出一种环境,在其中两个不同的代码片段包括语义上不同但指代相同或基 本上相同的数据的引用;
[0014] 图4示出用于解析和类型强制引用的构建时方法的流程图;
[0015] 图5示出根据本文中描述的原理的构建时环境。
[0016] 详细描述
[0017] 在此所述的至少一些实施例是指一种用于在引用相同值的不同代码中对应的引 用的解析和类型强制的构建时机制。分析两个代码段,并且作为结果,检测到在第一代码中 的第一引用将与第二代码中的第二引用相关使得它们都指代相同数据的指示 (directive)。响应于所检测到的指示,如果第一和第二引用的类型是兼容的,则代码生成 工具自动生成相关代码,该代码可由编译器解释为允许第一代码的经编译形式的第一引用 的类型的值被作为第二代码的经编译形式的第二引用的相同类型的相同值传递。
[0018] 随后可W编译所述第一代码、第二代码和所生成的相关代码。如果编译成功,运意 味着所述第一和第二引用已被适当地解析为指代相同值,伴随自从在检查对应的引用的类 型之后发生所述构建开始适当的类型强制。因此,当经编译的代码运行时,不需要使用更多 的计算资源来相关运两个引用,或确保它们的类型是兼容的。运样,在运两个代码之间的语 义间隙在构建时而非在运行时被贯通。
[0019] 尽管用结构特征和/或方法动作专用的语言描述了本主题,但可W理解,所附权利 要求书中定义的主题不必限于上述特征或动作或上述动作的次序。相反,上述特征和动作 是作为实现权利要求的示例形式而公开的。
[0020] 计算系统现在越来越多地采取多种多样的形式。例如,计算系统可W是手持式设 备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统或甚至常规上不被认为是计 算系统的设备。在本说明书W及权利要求书中,术语"计算系统"被广义地定义为包括任何 设备或系统(或其组合),该设备或系统包含至少一个物理且有形的处理器W及其上能具有 可由处理器执行的计算机可执行指令的物理且有形的存储器。计算系统可W分布在网络环 境中,并可包括多个组分计算系统。
[0021] 如图1所例示,在其最基本的配置中,计算系统100通常包括至少一个处理单元102 和存储器104。存储器104可W是物理系统存储器,该物理系统存储器可W是易失性的、非易 失性的、或两者的某种组合。术语"存储器"也可在此用来指示诸如物理存储介质运样的非 易失性大容量存储器。如果计算系统是分布式的,则处理、存储器和/或存储能力也可W是 分布式的。
[0022] 如本文中所使用的,术语"可执行模块"或"可执行组件"可W指可W在计算系统上 执行的软件对象、例程或方法。此处所描述的不同组件、模块、引擎W及服务可W实现为在 计算系统上执行的对象或进程(例如,作为分开的线程)。
[0023] 在随后的描述中,参考由一个或多个计算系统执行的动作描述了各实施例。如果 运样的动作是W软件实现的,则执行动作的相关联计算系统的一个或多个处理器响应于已 经执行了计算机可执行指令来引导计算系统的操作。例如,运样的计算机可执行指令可W 在形成计算机程序产品的一个或多个计算机可读介质上实现。运样的操作的示例设及对数 据的操纵。计算机可执行指令(W及被操纵的数据)可W存储在计算系统100的存储器104 中。计算系统100还可包含允许计算系统100例如通过网络110与其他消息处理器通信的通 信信道108。
[0024] 在此描述的各实施例可包括或利用专用或通用计算机系统,该专用或通用计算机 系统包括诸如例如一个或多个处理器和系统存储器等计算机硬件,如W下更详细讨论的。 系统存储器可被包括在整体存储器104内。系统存储器还可被称为"主存储器",并且包
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1