[發明專利]軟件開發工具無效
| 申請號: | 201110118036.6 | 申請日: | 2011-04-29 |
| 公開(公告)號: | CN102236551A | 公開(公告)日: | 2011-11-09 |
| 發明(設計)人: | D·J·帕克;H·常;T·揚 | 申請(專利權)人: | 微軟公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 上海專利商標事務所有限公司 31100 | 代理人: | 陳斌 |
| 地址: | 美國華*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 軟件 開發 工具 | ||
技術領域
本申請涉及軟件開發工具和方法。
背景技術
集成開發環境(IDE)是幫助程序員開發軟件的一組工具。IDE可包括源代碼編輯器、編譯器和調試器。它可包括允許程序員查看類層次結構信息、關于類、方法或其他程序元素的信息的瀏覽器。
IDE或其他編程環境可包括自動完成特征來在程序員輸入文本時幫助程序員。使用自動完成特征,用戶可鍵入已被定義成屬于一特定類的對象的名稱,后跟一句點。自動完成工具可識別對象的類并提供包括字段、屬性和方法的類成員列表。用戶可從該列表進行選擇,而不是鍵入所希望的類成員的名稱。該工具然后將所選的成員名稱插入源代碼。如果用戶在作出選擇之前鍵入了一個或多個字符,則自動完成工具可過濾該列表使其限于匹配文本。在鍵入了一個或多個字符之后,用戶可從列表選擇一項目。
發明內容
提供本發明內容以便以簡化形式介紹將在以下的具體實施方式中進一步描述的一些概念。本發明內容并不旨在標識出所要求保護的主題的關鍵特征或必要特征,也不旨在用于限定所要求保護的主題的范圍。
簡而言之,一種系統、方法和各組件用于生成與還未被靜態地聲明具有類型的程序變量對應的完成列表。變量的類型可在目標程序的執行期間被解析。在一個實施方式中,運行時監控程序在目標程序代碼的執行期間跟蹤事件,以確定程序變量的類型解析。對于每個運行時類型解析,可確定并聚集與該類型相關聯的一組類成員以形成完成列表。
在一個實施方式中,在編輯會話中時,列表調用事件使得列表生成器執行對目標程序的至少一些部分的控制流分析。可找到對所述變量的一個或多個賦值。每個表達式可被分析以確定變量的候選類型集。與每個候選類型相關聯的、或可從該候選類型的對象獲得的類成員被檢索并插入到完成列表中。
在一個實施方式中,對變量的使用可被分析來確定一個或多個候選類型。這可基于調用變量對象的成員的指令、將變量用作對其中相應參數具有聲明的類型的方法的自變量、將變量對象用作表達式中的操作數、以及對變量的其他使用。
在一個實施方式中,控制流分析可導致匯編件(assembly)。編譯時匯編件可被分析來檢索候選類型或相應成員。在編輯會話中時,運行時匯編件可被加載,并且指定的類型可被實例化。可使用反射(Reflection)來確定相應成員的列表。
在一個實施方式中,完成列表的項目可基于運行時類型解析或靜態分析來排序。完成列表可被過濾以呈現具有配置的準則的完成列表,或呈現完成列表項目的各組。
為了實現前述及相關目的,在這里結合以下描述及附圖來描述該系統的某些說明性方面。然而,這些方面僅指示了可采用本發明的原理的各種方法中的少數幾種,且本發明旨在包括所有這樣的方面及其等效方面。通過結合附圖考慮本發明的以下詳細描述,本發明的其它優點以及新穎的特征將變得顯而易見。
附圖說明
參考以下附圖來描述本發明的非限制性且非窮盡性實施方式。在各附圖中,除非另外指明,否則在全部附圖中相同的附圖標記指代相同的部分。
為了幫助理解本發明,將參考以下與附圖相關聯地閱讀的具體實施方式,附圖中:
圖1是其中可實現此處所描述的機制的計算機系統的框圖;
圖2示出其中可采用此處所描述的某些機制的示例編輯會話的屏幕截圖;
圖3示出其中可采用此處所描述的某些機制的另一示例編輯會話的屏幕截圖;
圖4示出其中可采用此處所描述的某些機制的另一示例編輯會話的屏幕截圖;
圖5A示出其中可采用此處所描述的某些機制的另一示例編輯會話的屏幕截圖;
圖5B示出其中可采用此處所描述的某些機制的另一示例編輯會話的屏幕截圖;
圖6示出其中可采用此處所描述的某些機制的另一示例編輯會話的屏幕截圖;
圖7A-C示出其中可采用此處所描述的某些機制的示例編輯會話的附加屏幕截圖;
圖8是示出向用戶提供完成列表的過程的示例實施方式的流程圖;
圖9是示出確定程序變量的一個或多個候選類型的過程的示例實施方式的流程圖;
圖10是示出確定程序變量的候選類型的過程的示例實施方式的流程圖;
圖11是示出基于動態分析確定程序變量的候選類型的過程的示例實施方式的流程圖;
圖12示出了計算設備的一個實施方式,示出可用于執行此處所描述的功能的計算設備的所選組件。
具體實施方式
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于微軟公司,未經微軟公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110118036.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:抗菌地毯
- 下一篇:一種寬度可調的便攜式衣架





