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

运算次序的图形表示制造技术

技术编号:10489196 阅读:179 留言:0更新日期:2014-10-03 17:27
在源代码查看器或编辑器引擎中生成并显示源代码的一部分的运算次序的图形表示。图形表示可以按照多种不同格式与源代码同时可视地显示在同一窗口中,或显示在独立的窗口中。图形表示的各种显示格式可采取以下形式:线表示、树表示、数字排序、颜色高亮文本、颜色高亮运算符等等。运算次序的图形表示帮助查看源代码的用户理解源代码执行过程中运算被执行的次序。

【技术实现步骤摘要】
【国外来华专利技术】运算次序的图形表示背景计算机程序根据一定的运算次序来执行表达式中的运算(operat1n)。运算次序是一个规则集,该规则集指定表达式中的哪些运算符优先于其他运算符。例如,数学表达式2+3x4可被求值如下:其中加法运算符优先于乘法运算符,由此产生值20(即,(2+3)x4 =20)。替代地,同一数学表达式可被求值如下:其中乘法运算符优先于加法运算符,由此产生值24(即,2+(3x4) =24)。在不指定运算次序的情况下,可能产生不一致的结果。运算次序通常由编写该计算机程序(例如,应用、脚本等)的编程语言的语法来指定。每种编程语言可使用一种不同的运算次序来对表达式求值。当用户观看或者编辑用不熟悉的编程语言编写的源代码时,不同的运算次序可能为用户带来问题。此外,某些编程语言的语法的细微差别可能很复杂,由此使得运算次序难以确定。
技术实现思路
提供本概述是为了以简化的形式介绍将在以下【具体实施方式】中进一步描述的选择的概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。 源代码是用编程语言编写的,该编程语言具有指定运算被执行的方式的语言模型或语法。具体而言,运算次序指定编程语言中使用的运算符相对于其他运算符的优先关系。将运算次序的图形表示连同源代码一起显示,使得用户能够理解运算被执行的次序。这在开发和维护源代码的过程中是有益的。 该图形表示可以按照多种不同格式可视地显示。图形表示的各种显示格式可采取以下形式:线表不、树表不、数字排序、颜色闻売文本、颜色闻売运算符等等。该图形表不可以显示可按任何次序执行而不影响结果的运算。图形表示的各部分可被折叠和/或用特定字符遮掩(ghost)。 通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。应该理解,前面的概括说明和下面的详细描述只是说明性的,不会对所要求保护的各方面形成限制。 附图简述 图1解说用于生成和显示运算次序的图形表示的第一示例性系统。 图2解说用于生成和显示运算次序的图形表示的第二示例性系统。 图3A-3F解说为了运算的顺序执行而格式化的运算次序的图形表示的各实施例。 图4A-4J解说为了运算的并行和顺序执行而格式化的运算次序的图形表示的各实施例。 图5解说一表达式的图形表示,其中仅该表达式的运算符被显示在运算次序的图形表示中。 图6解说选择性地遮掩和折叠运算次序的图形表示的一些部分。 图7A-7C解说运算次序的图形表示在显示器上的放置的各实施例。 图8解说动态生成的运算次序的图形表示。 图9是解说用于生成所显示的源代码的一部分的图形表示的示例性方法的流程图。 图10是示出操作环境的框图。 图11是解说第一示例性计算设备的框图。 图12是解说第二示例性计算设备的框图。 图13是示出示例性服务器的框图。 【具体实施方式】 各实施例涉及源代码的所选部分的运算次序的图形表示的生成及显示。运算次序的图形表示可以被可视地显示以帮助用户(例如,开发者、程序员等)更完整地理解源代码的所选部分的执行流程。图形表示可以按照多种不同格式与源代码同时可视地显示在同一窗口中,或显示在独立的窗口中。图形表示的各种显示格式可采取以下形式:线表示、树表不、数字排序、颜色闻売文本、颜色闻売运算符等等。运算次序的图形表不帮助查看源代码的用户理解源代码执行过程中运算被执行的次序。这种知识可被用户用来调试、测试和/或编辑源代码以实现其意图。 现在将注意力转向对利用运算次序的图形表示的第一示例性系统的讨论。参考图1,示出用于生成和显示运算次序的图形表示的示例性系统100的框图。虽然图1中示出的系统100具有按照某种拓扑结构的有限数量的元素,但可以理解,系统100可以视给定实现的需要而包括按照替代拓扑结构的更多或更少元素。 系统100可包括计算设备102,该计算设备可以是能够执行可编程指令的任何类型的电子设备,这些设备为诸如但不限于:移动设备、个人数字助理、移动计算设备、智能电话、蜂窝电话、手持式计算机、服务器、服务器阵列或服务器场、web服务器、网络服务器、因特网服务器、工作站、小型机、大型机、巨型机、网络设备、web设备、分布式计算系统、多处理器系统或其组合。 计算设备102可包括能够显示源代码108的源代码查看器104和编辑器引擎106。源代码查看器104可以是使用户(例如,程序员、开发者等)能够查看源代码108的软件应用。编辑器引擎106可以是程序员用来查看、编辑、和/或创建源代码的软件应用。源代码108可以是计算机程序指令序列,该序列在被处理器执行时致使该处理器根据规定的任务来执行方法和/或操作。源代码108可以是可使用任何适当的高级、低级、面向对象、可视、编译和/或解释性编程语言实现的软件应用、程序代码、程序、过程、模块、代码段、程序栈、中间件、固件、方法、例程、网页、可执行代码、脚本文件等等。 当在源代码查看器104或编辑器引擎106中查看源代码时,用户可选择该源代码108中该用户希望查看其运算次序的部分。输入选择器110可被用户用来标识源代码中对其次序感兴趣的部分。输入选择器I1可以是光标位置112和/或高亮器114。光标位置112是光标被放置的位置,其标识感兴趣的源代码部分。高亮器114可以是源代码中的阴影部分,其标识感兴趣的源代码。应当注意,输入选择器110可以是用户可用来标识感兴趣的源代码的任何机制。 输入分析器116接收该源代码中用户或程序已选择来进行运算次序分析的部分。输入分析器116还可基于语言模型或用户选项来寻找该分析所需要的整个语句。输入分析器116可从源代码查看器104接收源代码的静态选择的部分。源代码的静态选择的部分是从静态源代码列表标识的。源代码的静态选择的部分可以通过光标位置、高亮文本等来指定。输入分析器116可识别被指定的源代码的量不是完整的表达式或语句,如由语言模型或用户选项所指定的。在此情况下,输入分析器116可将附加的文本或字符结合到源代码的所选部分中以补全该表达式或语句。 输入分析器116也可从动态模块选择器107接收源代码的动态选择的部分。源代码的动态选择的部分在用户生成该源代码、测试该源代码和/或编辑该源代码的同时被实时标识。 动态模块选择器107确定源代码中用户想要显示其相应运算次序的部分。在一些情况下,用户可通过高亮文本来标识源代码的该部分。在其他情况下,动态模块选择器107必须从输入选择器110 (诸如光标位置112)确定来确定源代码的该部分。例如,如果光标位置112被放置在一行源代码中间,则动态模块选择器107确定该行中的什么字符要包括在该源代码部分中,以便获得经补全的表达式。 此外,动态模块选择器107可能必须推断该源代码中用户选择以进行运算次序分析的部分。在实时编辑上下文中,诸如用编辑器引擎来编辑,用户可能没有完成在源代码中的键入,或者即便用户已选择了源代码的一部分以进行运算次序分析也仍在进行编辑。根据语言模型或用户选项,该源代码的可被选择的部分不是完整的表达式或语句。在此情形中,动态模块选择器107必须推断该用户的动作来确定是否包括附加字符、等待用户继续键入并键入逻辑代码分隔符等等。 本文档来自技高网...

【技术保护点】
一种计算机实现的方法,包括:从计算机程序选择第一代码部分,所述代码部分具有一行或多行源代码;确定所述第一代码部分的执行的运算次序,所述运算次序基于与所述源代码相关联的语言模型;提供所述运算次序的图形表示;以及根据所述图形表示显示所述运算次序。

【技术特征摘要】
【国外来华专利技术】2012.01.25 US 13/357,6231.一种计算机实现的方法,包括: 从计算机程序选择第一代码部分,所述代码部分具有一行或多行源代码; 确定所述第一代码部分的执行的运算次序,所述运算次序基于与所述源代码相关联的语目模型; 提供所述运算次序的图形表示;以及 根据所述图形表示显示所述运算次序。2.如权利要求1所述的计算机实现的方法,其特征在于,进一步包括: 指定图形表示来按行表示格式显示所述运算次序。3.如权利要求1所述的计算机实现的方法,其特征在于,进一步包括: 指定图形表示来按树表示格式显示所述运算次序。4.如权利要求1所述的计算机实现的方法,其特征在于,进一步包括: 指定图形表示来按着色文本表示格式显示所述运算次序。5.如权利要求1所述的计算机实现的方法,其特征在于,进一步包括: 指定图形表示来按数字次序表示格式显示所述运算次序。6.如权利要求1所述的计算机实现的方法,其特征在于,进一步包括: 指定图形表示来按并行表示格式显示所...

【专利技术属性】
技术研发人员:A·洛维特
申请(专利权)人:微软公司
类型:发明
国别省市:美国;US

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

1