[发明专利]运算次序的图形表示有效
| 申请号: | 201380006662.3 | 申请日: | 2013-01-21 |
| 公开(公告)号: | CN104081347A | 公开(公告)日: | 2014-10-01 |
| 发明(设计)人: | A·洛维特 | 申请(专利权)人: | 微软公司 |
| 主分类号: | G06F9/44 | 分类号: | G06F9/44 |
| 代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 段登新 |
| 地址: | 美国华*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 运算 次序 图形 表示 | ||
背景
计算机程序根据一定的运算次序来执行表达式中的运算(operation)。运算次序是一个规则集,该规则集指定表达式中的哪些运算符优先于其他运算符。例如,数学表达式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设备、分布式计算系统、多处理器系统或其组合。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380006662.3/2.html,转载请声明来源钻瓜专利网。





