用于本机语言ide代码帮助的方法和系统的制作方法

文档序号:6534742阅读:170来源:国知局
用于本机语言ide代码帮助的方法和系统的制作方法
【专利摘要】本发明涉及一种用于本机语言IDE代码帮助的方法和系统。本发明的一个实施例提供一种方法,包括:从用户接口接收输入,其中所述输入包括采用第一语言的代码段的名称。使用采用所述第一语言的所述代码段的所述名称查询数据库,以便标识采用不同于所述第一语言的第二语言的所述代码段的名称。所述数据库包括采用多种语言的代码段的名称。显示采用所述第二语言的所述代码段的所述名称和/或使用采用所述第二语言的所述代码段的所述名称替换采用所述第一语言的所述代码段的所述名称。
【专利说明】用于本机语言IDE代码帮助的方法和系统
【技术领域】
[0001]本发明涉及用于本机语言集成开发环境(IDE)代码帮助的系统、方法和计算机程
序广品。
【背景技术】
[0002]许多应用程序接口都具有类名称和方法名称,这些名称以英语进行某种程度的描述(例如,AlertType、AccelerometerData)。因此,对于查找现有类和/或方法的用户,如果用户的第一语言是英语,则可能能够找到所需的类和/或方法。当开发代码时,程序员通常查看参考以便确定要使用哪个类或要调用哪个函数。这些类或函数通常具有反映类或函数的功能的英语名称。快速扫描列表可以告诉用户要执行哪个调用。

【发明内容】

[0003]本发明的一个实施例提供一种方法,包括:从用户接口接收输入,其中所述输入包括采用第一语言的代码段的名称。使用采用所述第一语言的所述代码段的所述名称查询数据库,以便标识采用不同于所述第一语言的第二语言的所述代码段的名称。所述数据库包括采用多种语言的代码段的名称。显示采用所述第二语言的所述代码段的所述名称和/或使用采用所述第二语言的所述代码段的所述名称替换采用所述第一语言的所述代码段的所述名称。
[0004]本发明的另一个实施例提供一种方法,其中从用户接口接收采用第一语言的输入,其中所述输入包括代码段的描述和/或所述代码段的功能。使用所述输入和/或采用第二语言的转换后的输入查询数据库,以便标识采用所述第二语言的所述代码段的名称。所述数据库包括采用多种语言的代码段的名称、采用多种语言的代码段的描述和/或采用多种语言的代码段的功能。显示采用所述第二语言的所述代码段的所述名称和/或使用采用所述第二语言的所述代码段的所述名称替换采用所述第一语言的所述输入。
[0005]根据本发明的另一个实施例的方法从用户接口接收输入,其中所述输入包括采用第一语言的代码段的名称。将所述代码段的所述名称从所述第一语言转换为不同于所述第一语言的第二语言。使用采用所述第二语言的所述代码段的所述名称查询数据库,以便标识所述代码段和/或至少一个相关代码段,其中所述相关代码段(多个)具有与所述代码段的阈值相似度。显示采用所述第二语言的所述代码段的所述名称和/或所述相关代码段(多个)的名称(多个)。
[0006]本发明的另一个实施例提供一种方法,其中从用户接口接收采用第一语言的输入,所述输入包括代码段的描述和/或所述代码段的功能。使用所述输入和/或采用第二语言的转换后的输入查询数据库,以便标识采用所述第二语言的所述代码段的名称和/或相关代码段的名称(多个)。所述相关代码段(多个)具有与所述代码段的阈值相似度。所述数据库包括采用多种语言的代码段的名称、采用多种语言的代码段的描述和/或采用多种语言的代码段的功能。显示采用所述第二语言的所述代码段的所述名称,显示所述相关代码段(多个)的名称(多个),使用采用所述第二语言的所述代码段替换采用所述第一语言的所述输入,以及/或者使用所述相关代码段替换采用所述第一语言的所述输入。
【专利附图】

【附图说明】
[0007]参考附图描述本发明。在附图中,相同的参考标号指示相同或功能类似的元素,这些附图是:
[0008]图1是示出根据本发明的一个实施例的用于本机语言集成开发环境(IDE)代码帮助的方法的流程图;
[0009]图2是示出根据本发明的另一个实施例的用于本机语言IDE代码帮助的方法的流程图;
[0010]图3是示出根据本发明的另一个实施例的用于本机语言IDE代码帮助的方法的流程图;
[0011]图4示出根据本发明的一个实施例的代码段的英语描述;
[0012]图5是示出根据本发明的另一个实施例的用于本机语言IDE代码帮助的方法的流程图;
[0013]图6是示出根据本发明的一个实施例的用于代码段转换的方法的流程图;
[0014]图7示出根据本发明的一个实施例的代码片段;
[0015]图8示出根据本发明的一个实施例的转换后的代码段的描述;
[0016]图9示出根据本发明的一个实施例的用于本机语言IDE代码帮助的系统;以及
[0017]图10示出根据本发明的一个实施例的计算机程序产品。
【具体实施方式】
[0018]下面详细讨论本发明的示例性、非限制性实施例。尽管讨论特定配置以便提供清晰的理解,但应该理解,仅出于示例目的而提供所公开的配置。所属【技术领域】的普通技术人员将认识到,可以使用其它配置而不偏离本发明的精神和范围。
[0019]本发明的至少一个实施例包括一种系统和方法,以便通过检索目前使用的代码段作为最接近的匹配转换,尽可能最好地将实时代码段从本机语言转换为默认开发语言。知道采用其本机语言的方法或变量的名称的开发人员可以采用其本机语言键入输入,并且所述系统可以确定默认开发语言转换,以便建议要使用的可能方法或变量。
[0020]图1是示出根据本发明的一个实施例的用于本机语言集成开发环境(IDE)代码帮助的方法的流程图。从用户接口接收输入(110),其中输入包括采用第一语言(在此也称为“本机语言(native language)”)的代码段的名称。如在此使用的,术语“用户接口”包括用于从用户处接收输入的硬件组件。用户接口的实例包括一但不限于一鼠标、键盘、触摸屏显示器和麦克风。此外,术语“代码段”如在此使用的,可以包括计算机程序中的预先编写或预先存在的代码行。例如,用户可以输入文本“AccelerometerData”,该文本是已经由另一名开发人员编写的计算机程序的代码段的名称。
[0021]在至少一个实施例中,代码段是类,该类是对象中的方法和变量的模板定义。术语“对象”如在此使用的,包括包含实变量的类实例。代码段还可以是方法,该方法是定义为类的一部分的编程过程。在另一个实施例中,代码段是变量,该变量是以下值:可以根据程序中使用的条件或信息而更改;在程序中用作数据。此外,代码段可以是函数或常量,其中函数类似于方法,因为它是在程序中使用的编程过程。常量可以是保持固定而不更改的值。
[0022]使用采用第一语言的代码段的名称查询数据库(例如,通过处理器查询),以便标识采用不同于第一语言的第二语言的代码段的名称(120)。如在此使用的,术语“数据库”包括计算机硬件存储器件。数据库可以包括采用多种语言的代码段的名称(该数据库在此也称为“第一数据库”)。在至少一个实施例中,第二语言是由软件开发团队选择的默认编码语言(例如,英语)。例如,西班牙语开发人员输入名称“Sistema.de”,该名称最后由系统转换为 “System, out,,。
[0023]在本发明的至少一个实施例中,系统将采用第一语言的代码段的名称分成多个单词。这可以根据代码段的名称中的字母大写来完成。例如,处理器将输入“ottenereDifettoSessione” 分成单词 “ottenere”、“Difetto” 和 “Sessione”。可以通过使用每个单词(采用第一语言)查询数据库,将每个单独的单词从第一语言转换为第二语言。因此,在前一个实例中,使用每个单词“ottenere”、“Difetto”和“Sessione”查询数据库,以便标识单词“get”、“Default”和“Session”,然后组合这些单词以便标识名称“getDefaultSession”。
[0024]标识采用第二语言的代码段的名称(在此也称为“转换后的名称”)之后,可以将采用第二语言的代码段的名称作为选项向用户显示(例如,在显示屏上)(130A)和/或可以使用采用第二语言的代码段的名称替换采用第一语言(即,用户输入)的代码段的名称(例如,通过处理器替换)(130B)。
[0025]在本发明的至少一个实施例中,使用采用第一语言的代码段的名称和/或采用第二语言的代码段的名称查询数据库(例如,第一数据库,或者单独的数据库)。该数据库(在此也称为“第二数据库”)包括代码段库(即,对应于代码段名称(多个)的预先编写的代码行)。从第二数据库检索代码段。
[0026]在本发明的至少一个实施例中,将代码段的名称中的每个单词从第一语言转换为第二语言。例如,在上面讨论的实例中,将输入“ottenereDifettoSessione”分解成单词 “ottenere”、“Difetto” 和 “Sessione”,将这些单词转换为 “get”、“Default” 和“Session”。可以将每个转换后的单词(即,采用第二语言)按顺序组合成单个单词(例如,“getDefaultSession”);以及可以使用该单个单词查询第一和/或第二数据库以便检索代码段。
[0027]在本发明的另一个实施例中,如下面更全面描述的,在屏幕上显示采用第一语言的代码段的名称;以及处理器检测采用第一语言的代码段的名称之上或附近的鼠标指针或光标的存在。如在此使用的,“附近”旨在表示接近、相邻、邻近、旁边、靠近、附近、接触等。可以显示鼠标指针附近的文本窗口(例如,弹出菜单、弹出窗口、对话框、文本框),其中文本窗口包括采用第二语言的代码段的名称。
[0028]图2是示出根据本发明的一个实施例的用于本机语言IDE代码帮助的方法的流程图。从用户接口接收输入(例如,通过处理器接收)(210),其中输入包括采用第一语言的代码段的名称。转换引擎将代码段的名称从第一语言转换为不同于第一语言的第二语言(220)。如在此使用的,术语“转换引擎”包括用于在不同语言之间转换单词的硬件计算机设备。[0029]处理器使用采用第二语言的代码段的名称查询数据库,以便标识所述代码段和/或与所述代码段相关的一个或多个代码段(在此也称为“相关代码段”)(230)。相关代码段具有与所述代码段的阈值相似度,阈值相似度包括名称(采用第一或第二语言)相似性、描述相似性和/或功能相似性。例如,代码段“System, out”、“System, println”和“System,err”是在名称、描述和功能方面具有阈值相似度的相关代码段。
[0030]向用户显示采用第二语言的代码段的名称和/或采用第二语言的相关代码段(多个)的名称(多个)(例如,通过图形用户界面显示)(240)。在本发明的至少一个实施例中,根据字母大写将采用第一语言的代码段的名称(例如,ottenereDifettoSessione)分成多个单词;单独转换每个单词(例如,从“ottenere”、“Difetto”和“Sessione”转换);以及使用每个转换后的单词(例如,“get”、“Default”和“Session”)查询数据库。
[0031]在另一个实施例中,将代码段的名称中的每个单词从第一语言转换为第二语言。例如,将“ottenere,,、“Difetto,,和“Sessione,,转换为“get'“Default,,和“Session,,。将每个转换后的单词(采用第二语言)按顺序组合成单个单词(例如,“getDefaultSession”);以及使用该单个单词查询数据库。
[0032]图3是示出根据本发明的另一个实施例的用于本机语言IDE代码帮助的方法的流程图。从用户接口接收采用第一语言的输入(310),其中输入包括代码段的描述和/或代码段的功能。例如,图4示出根据本发明的一个实施例的代码段“getDefaultSessionO ”的英语描述。在至少一个实施例中,代码段“getDefaultSessionO ”的功能不是可能方法(例如“System, out”)的实际文本,而是方法将执行的功能,例如与方法“System, out”匹配的“print to screen (打印到屏幕)”。可以将所述输入从第一语言转换为不同于第一语言的第二语言(例如,使用转换引擎)。
[0033]使用所述输入和/或转换后的输入(采用第二语言)查询数据库,以便标识采用第二语言的代码段的名称(320)。所述数据库包括采用多种语言的代码段的名称、采用多种语言的代码段的描述和/或采用多种语言的代码段的功能。标识采用第二语言的代码段的名称之后,可以将采用第二语言的代码段的名称作为选项向用户显示(例如,在显示屏上)(330A)和/或可以使用采用第二语言的代码段的名称替换采用第一语言(S卩,用户输入)的代码段的名称(例如,通过处理器替换)(330B)。在至少一个实施例中,使用采用第二语言的代码段的名称查询第二数据库,其中所述第二数据库包括采用多种语言的代码段库。从所述第二数据库检索代码段。
[0034]图5是示出根据本发明的另一个实施例的用于本机语言IDE代码帮助的方法的流程图。从用户接口接收采用第一语言的输入(510),其中所述输入包括代码段的描述和/或代码段的功能。可以将所述输入从第一语言转换为不同于第一语言的第二语言(例如,使用转换引擎)。
[0035]使用所述输入和/或转换后的输入(采用第二语言)查询数据库,以便标识采用第二语言的代码段的名称和/或采用第一语言和/或第二语言的一个或多个相关代码段(520)。所述数据库可以包括采用多种语言的代码段的名称、采用多种语言的代码段的描述和/或采用多种语言的代码段的功能。相关代码段(多个)具有与所述代码段的阈值相似度,阈值相似度包括名称(采用第一或第二语言)相似性、描述相似性和/或功能相似性。
[0036]处理器显示采用第二语言的代码段的名称(530A),显示采用第一语言和/或第二语言的相关代码段(多个)的名称(530B),使用采用第二语言的代码段的名称替换采用第一语言的输入(530C),以及/或者使用采用第一语言和/或第二语言的相关代码段(多个)的名称替换米用第一语言的输入(530D)。
[0037]在至少一个实施例中,使用采用第二语言的代码段的名称和/或采用第一语言和/或第二语言的相关代码段(多个)的名称查询第二数据库。第二数据库可以包括代码段库,其中从第二数据库检索所述代码段和/或相关代码段(多个)。
[0038]图6是示出根据本发明的一个实施例的用于代码段转换的方法的流程图。用户(在此也称为“开发人员”或“程序员”)开始采用其本机语言将代码段的名称键入到系统中(610)。本机语言是可以随时更改的设置偏好。如在此使用的,术语“代码段”包括类、方法、
变量、函数和常量。
[0039]用户然后指示她想要转换输入的文本(620)。例如,用户可以输入键组合以便启动转换,例如Shift+Space (传统的eclipse提前键入方法填充)+T (转换)。备选地,用户可以选择系统中的菜单选项,例如菜单〉转换。在另一个实施例中,系统(在此也称为“IDE”)具有全局设置,当用户敲击特定键时该设置自动进行转换。例如,在激活句点键(即,”)之后将文本“Sistema”转换为“System”,并且系统建议名称“System.0ut”、“System.err”等。用户可以从这些选项中进行选择以便继续键入ex.de,其导致System, out.println O。可以具有多种方法用于在IDE中启用提前键入功能。在至少一个实施例中,当用户选择这些工具之一(例如,“SHIFT”和“SPACE”,或者从菜单选择)时,采用他或她的本机语言键入单词(例如,“sistema”),并且敲击属于方法语法一部分的句点键(“.”),然后将自动代替键入的单词(例如,使用“system.”代替)。在另一个实施例中,采用程序设计语言向用户显示选项“system, out”和“system, err”。如果建议不正确,则用户可以继续键入字母。
[0040]从用户处接收转换指示之后,系统执行查找以便判定是否存在输入文本的转换(630)。具体地说,系统可以查询本机语言到开发语言转换字典(例如,西班牙语到英语)。系统将转换选项与可用的编码选项相匹配,例如,将“System”与“System, out”和“System.err”相匹配。
[0041]如果系统找到至少一个匹配或者找到部分匹配,则向用户显示匹配(或部分匹配)(640)。在另一个实施例中,将匹配自动填充到代码中(即,使用匹配文本替换本机语言文本),其中可以将本机语言文本作为注释批注到匹配文本(例如,Sistema de System, out.println (“ ”);//Sistema de)。可以保存匹配文本以便随后快速替换。这可以允许系统在将来跳过项目530和540,并且根据保存的用户定义的映射来执行替换。如果没有找到匹配,则通知用户(650)。如果用户继续编码,则系统重复项目510。
[0042]以下提供根据本发明的一个实施例的用于代码段转换的方法的一个实例实现。本机西班牙语开发人员无法记住系统中的方法的采用默认编码语言(英语)的名称以便编写控制台语句。开发人员开始采用西班牙语键入感兴趣的方法或调用。IDE执行输入文本的查找;以及向开发人员建议代码段“System, out”。开发人员选择该建议,并且IDE使用采用默认编码语言的有效编译版本替换开发人员的本机语言输入。
[0043]在至少一个实施例中,保存跨团队开发环境的通用转换以便创建团队字典或通用映射建议,从而实现更快速的本机语言代码帮助。在另一个实施例中,程序员将他或她的鼠标悬停在帮助图标上,并且直接在IDE中转换程序员的输入。[0044]编码可以使用表示法(notation)标识类、方法和变量,其中表示法可以使字符组与大写字母分开(第一个字母小写)。例如,将代码段“getDefaultSession O”分成其各部分:“get”、“Default” 和 “Session”。在意大利语中,将其转换为 “ottenere”、“Difetto”和 “Sessione”,这导致 “ottenereDifettoSessione O ”。
[0045]还可以转换方法的描述。图4示出根据本发明的一个实施例的代码段“getDefaultSessionO ”的英语描述。IDE可以转换该方法的描述并返回描述。
[0046]图7示出根据本发明的一个实施例的采用英语的一个实例代码片段。根据代码段中的字符大写,IDE针对英语代码段“getDefaultlnstanceO”建议转换后的代码段“ottenereDifettoSessione O ”。如图8中所示,点击“ + ”展开图标将显示转换后的代码段的描述。程序员可以选择IDE中的选项以便始终采用其本机语言查看其代码环境(反向转换)。这不会显示工作区或编译错误。
[0047]图9示出根据本发明的一个实施例的用于本机语言IDE代码帮助的系统900,其中系统900包括连接到数据库920的用户接口 901。如在此使用的,术语“连接”包括在操作上连接、在逻辑上连接、通信、在物理上连接、结合、耦合、接触、链接、附接和附加。用户接口 910可以是接收输入的硬件计算机组件(例如,键盘、鼠标、⑶I),所述输入包括采用第一语言的代码段的名称。在至少一个实施例中,所述代码段包括计算机程序中的预先编写的代码行,例如类、系统、变量、函数和常量。如在此使用的,术语“数据库”包括存储电子数据的计算机存储器件。例如,数据库920包括采用多种语言的代码段的名称。
[0048]系统900还包括连接到数据库920的处理器930。如在此使用的,术语“处理器”包括以下硬件计算机组件:使用采用第一语言的代码段的名称查询数据库920,以便标识采用不同于第一语言的第二语言的代码段的名称。第二语言可以是软件开发团队选择的默认编码语言。处理器930在显示器940 (例如,显示器、触摸屏显示器)上显示采用第二语言的代码段的名称和/或使用采用第二语言的代码段的名称替换采用第一语言的代码段的名称。
[0049]系统900可以还包括第二数据库950和/或转换引擎960,其中第二数据库950包括代码段库。处理器930可以使用采用第一语言的代码段的名称和/或采用第二语言的代码段的名称查询第二数据库950,以便从第二数据库950检索代码段。
[0050]如在此使用的,术语“转换引擎”包括将单词从一种语言转换为另一种语言的硬件计算机组件。在至少一个实施例中,处理器930根据采用第一语言的代码段的名称中的字母大写,将采用第一语言的代码段的名称分成多个单词;以及转换引擎960将每个单词从第一语言转换为第二语言。
[0051]在另一个实施例中,转换引擎960将代码段的名称中的每个单词从第一语言转换为第二语言;以及处理器930将采用第二语言的每个转换后的单词按顺序组合成单个单词。处理器930可以使用该单个单词查询第二数据库950以便检索代码段。
[0052]在本发明的至少一个实施例中,处理器930检测采用第一语言的代码段的名称上的鼠标指针(在显示器940上)。处理器930可以在显示器940上显示鼠标指针附近的文本窗口,其中所述文本窗口包括采用第二语言的代码段的名称。
[0053]本发明的另一个实施例提供一种系统,其具有用户接口以便接收采用第一语言的输入,其中所述输入包括代码段的描述和/或代码段的功能。所述代码段可以是类、系统、变量、函数和/或常量。提供转换引擎,其将采用第一语言的输入转换为采用第二语言的转换输入。第二语言可以是软件开发团队选择的默认编码语言。
[0054]数据库连接到用户接口和处理器,其中所述数据库包括采用多种语言的代码段的名称、采用多种语言的代码段的描述和/或采用多种语言的代码段的功能。处理器使用所述输入和采用第二语言的转换后的输入查询数据库,以便标识采用第二语言的代码段的名称。处理器显示采用第二语言的代码段的名称和/或使用采用第二语言的代码段的名称替换采用第一语言的输入。
[0055]根据本发明的另一个实施例的系统包括接收输入的用户接口,所述输入包括采用第一语言的代码段(例如,类、系统、变量、函数、常量)的名称。连接到用户接口的转换引擎将代码段的名称从第一语言转换为不同于第一语言的第二语言。
[0056]在至少一个实施例中,处理器根据采用第一语言的代码段的名称中的字母大写,将采用第一语言的代码段的名称分成多个单词。转换引擎可以转换多个单词中的每一个;以及处理器可以使用转换后的多个单词中的每一个查询数据库。在另一个实施例中,转换引擎将代码段的名称中的每个单词从第一语言转换为第二语言。处理器可以将采用第二语言的每个转换后的单词按顺序组合成单个单词,并且使用该单个单词查询数据库。
[0057]处理器连接到转换引擎,并且使用采用第二语言的代码段的名称查询数据库,以便标识代码段和/或一个或多个相关代码段。相关代码段(多个)具有与所述代码段的阈值相似度,其中阈值相似度可以包括名称相似性、描述相似性和/或功能相似性。
[0058]显示器连接到处理器以便显示采用第二语言的代码段的名称和/或相关代码段(多个)的名称(多个)。可以提供具有代码段库的第二数据库,其中处理器使用采用第二语言的代码段的名称和/或采用第二语言的相关代码段(多个)的名称(多个)查询第二数据库,以便从第二数据库检索所述代码段和所述相关代码段(多个)的名称(多个)。
[0059]在至少一个实施例中,处理器检测采用第一语言的代码段的名称上的鼠标指针(在显示器上)。显示器可以显示鼠标指针附近的文本窗口,其中所述文本窗口包括采用第二语言的代码段的名称和/或采用第二语言的相关代码段(多个)的名称(多个)。
[0060]所属【技术领域】的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
[0061]可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是一但不限于一电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0062]计算机可读的信号介质可以包括例如在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括一但不限于一电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0063]计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括一但不限于一无线、有线、光缆、RF等等,或者上述的任意合适的组合。
[0064]可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的各个方面的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言一诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言一诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络一包括局域网(LAN)或广域网(WAN) —连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0065]下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
[0066]也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其它设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)0
[0067]也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令提供实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
[0068]现在参考图10,其中示出用于实现本发明的至少一个实施例的代表性硬件环境。该示意图示出根据本发明的至少一个实施例的信息处理/计算机系统的硬件配置。所述系统包括至少一个处理器或中央处理单元(CPU) 10。CPUlO通过系统总线12与诸如随机存取存储器(RAM) 14、只读存储器(ROM) 16和输入/输出(I/O)适配器18之类的各种设备互连。I/O适配器18可以连接到外围设备,例如磁盘机11和磁带驱动器13,或者可由所述系统读取的其它程序存储器件。所述系统可以读取程序存储器件上的本发明的指令并且执行这些指令,以便执行本发明的至少一个实施例的方法。所述系统还包括用户接口适配器19,其将键盘15、鼠标17、扬声器24、麦克风22和/或其它用户接口设备(例如触摸屏设备,未示出)连接到总线12以便收集用户输入。此外,通信适配器20将总线12连接到数据处理网络25,显示适配器21将总线12连接到显示设备23,显示设备23例如可以实现为诸如显示器、打印机或发送器之类的输出设备。[0069]附图中的流程图和框图显示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0070]在此使用的术语只是为了描述特定的实施例并且并非旨在作为本发明的限制。如在此所使用的,单数形式“一”、“一个”和“该”旨在同样包括复数形式,除非上下文明确地另有所指。还将理解,当在此说明书中使用时,根术语“包括”和/或“具有”指定了声明的特性、整数、步骤、操作、元素和/或组件的存在,但是并不排除至少一个其它特性、整数、步骤、操作、元素、组件和/或其组的存在或增加。
[0071]以下的权利要求中的对应结构、材料、操作以及所有功能性限定的装置(means)或步骤的等同替换,旨在包括任何用于与在权利要求中具体指出的其它元件相组合地执行该功能的结构或材料。出于示例和说明目的给出了对本发明的描述,但所述描述并非旨在是穷举的或是将本发明限于所公开的形式。在不偏离本发明的范围和精神的情况下,对于所属【技术领域】的普通技术人员来说许多修改和变化都将是显而易见的。实施例的选择和描述是为了最佳地解释本发明的原理和实际应用,并且当适合于所构想的特定使用时,使得所属【技术领域】的其它普通技术人员能够理解本发明的具有各种修改的各种实施例。
【权利要求】
1.一种方法,包括: 从用户接口接收输入,所述输入包括采用第一语言的代码段的名称; 使用采用所述第一语言的所述代码段的所述名称查询数据库,以便标识采用不同于所述第一语言的第二语言的所述代码段的名称,所述数据库包括采用多种语言的代码段的名称;以及 以下操作之一:显示采用所述第二语言的所述代码段的所述名称;以及使用采用所述第二语言的所述代码段的所述名称替换采用所述第一语言的所述代码段的所述名称。
2.根据权利要求1的方法,其中所述代码段包括类、方法、变量、函数和常量中的至少一个。
3.根据权利要求1的方法,其中所述第二语言是由软件开发团队选择的默认编码语言。
4.根据权利要求1的方法,还包括: 使用采用所述第一语言的所述代码段的所述名称和采用所述第二语言的所述代码段的所述名称中的至少一个查询第二数据库,所述第二数据库包括代码段库;以及从所述第二数据库检索所述代码段。
5.根据权利要求1的方法,其中所述使用采用所述第一语言的所述代码段的所述名称查询数据库的步骤包括: 根据采用所述第一语言的所述代码段的所述名称中的字母大写,将采用所述第一语言的所述代码段的所述名称分成多个单词;以及 将所述单词中的每个单词从所述第一语言转换为所述第二语言。
6.根据权利要求1的方法,还包括: 将所述代码段的所述名称中的每个单词从所述第一语言转换为所述第二语言; 将采用所述第二语言的每个转换后的单词按顺序组合成单个单词;以及 使用所述单个单词查询第二数据库以便检索所述代码段。
7.根据权利要求1的方法,其中接收输入的步骤包括检测采用所述第一语言的所述代码段的所述名称上的鼠标指针,并且 其中所述显示采用所述第二语言的所述代码段的所述名称的步骤包括显示所述鼠标指针附近的文本窗口,所述文本窗口包括采用所述第二语言的所述代码段的所述名称。
8.根据权利要求1的方法,其中所述代码段包括计算机程序中的预先编写的代码行。
9.一种系统,所述系统包括被配置为执行权利要求1至8中的任一权利要求的方法步骤的装置。
10.一种方法,包括: 从用户接口接收采用第一语言的输入,所述输入包括代码段的描述和所述代码段的功能中的至少一个; 使用所述输入和采用第二语言的转换后的输入中的至少一个查询数据库,以便标识采用所述第二语言的所述代码段的名称,所述数据库包括采用多种语言的代码段的名称、采用多种语言的代码段的描述和采用多种语言的代码段的功能中的至少一个;以及 以下操作之一:显示采用所述第二语言的所述代码段的所述名称;以及使用采用所述第二语言的所述代码段的所述名称替换采用所述第一语言的所述输入。
11.根据权利要求10的方法,其中所述代码段包括类、方法、变量、函数和常量中的至少一个。
12.根据权利要求10的方法,其中所述第二语言是由软件开发团队选择的默认编码语言。
13.根据权利要求10的方法,还包括在查询所述数据库之前,将采用所述第一语言的所述输入转换为采用所述第二语言的转换后的输入。
14.一种系统,所述系统包括被配置为执行权利要求10至13中的任一权利要求的方法步骤的装置。
15.—种方法,包括: 从用户接口接收输入,所述输入包括采用第一语言的代码段的名称; 将所述代码段的所述名称从所述第一语言转换为不同于所述第一语言的第二语言;使用采用所述第二语言的所述代码段的名称查询数据库,以便标识所述代码段和至少一个相关代码段中的至少一个,所述至少一个相关代码段具有与所述代码段的阈值相似度;以及 显示采用所述第二语言的所述代码段的所述名称和所述至少一个相关代码段的名称中的至少一个。
16.根据权利要求15的方法,其中与所述代码段的所述阈值相似度包括名称相似性、描述相似性和功能相似性中的至少一个。
17.根据权利要求15的方法,其中所述代码段包括类、方法、变量、函数和常量中的至少一个。
18.根据权利要求15的方法,其中所述第二语言是由软件开发团队选择的默认编码语言。
19.根据权利要求15的方法,还包括: 使用采用所述第二语言的所述代码段的所述名称和采用所述第二语言的所述至少一个相关代码段的所述名称中的至少一个查询第二数据库,所述第二数据库包括代码段库;以及 从所述第二数据库检索所述代码段和所述至少一个相关代码段中的至少一个。
20.根据权利要求15的方法,其中从所述第一语言转换所述代码段的所述名称的步骤包括: 根据采用所述第一语言的所述代码段的所述名称中的字母大写,将采用所述第一语言的所述代码段的所述名称分成多个单词;以及转换所述多个单词中的每一个, 其中查询所述数据库包括使用转换后的多个单词中的每一个查询所述数据库。
21.根据权利要求15的方法,其中从所述第一语言转换所述代码段的所述名称的步骤包括: 将所述代码段的所述名称中的每个单词从所述第一语言转换为所述第二语言, 将采用所述第二语言的每个所转换的单词按顺序组合成单个单词,并且 其中查询所述数据库包括使用所述单个单词查询所述数据库。
22.根据权利要求15的方法,其中接收所述输入的步骤包括检测采用所述第一语言的所述代码段的所述名称上的鼠标指针,并且 其中所述显示的步骤包括显示所述鼠标指针附近的文本窗口,所述文本窗口包括以下项中的至少一个: 采用所述第二语言的所述代码段的所述名称,以及 采用所述第二语言的所述至少一个相关代码段的名称。
23.—种系统,所述系统包括被配置为执行权利要求15至22中的任一权利要求的方法步骤的装置。
24.—种方法,包括: 从用户接口接收采用第一语言的输入,所述输入包括代码段的描述和所述代码段的功能中的至少一个; 根据所接收的输入查询数据库,以便标识以下项中的至少一个: 采用所述第二语言的所述代码段的名称,以及 至少一个相关代码段的名称,所述至少一个相关代码段具有与所述代码段的阈值相似度, 所述数据库包括采用多种语言的代码段的名称、采用多种语言的代码段的描述和采用多种语言的代码段的功能中的至少一个;以及 以下操作中的至少一个:显示采用所述第二语言的所述代码段的所述名称,显示所述至少一个相关代码段的所述名称,使用采用所述第二语言的所述代码段替换采用所述第一语言的所述输入,以及使用所述相关代码段替换采用所述第一语言的所述输入。
25.根据权利要求24的方法,其中与所述代码段的所述阈值相似度包括名称相似性、描述相似性和功能相似性中的至少一个。
26.根据权利要求24的方法,其中所述代码段包括类、方法、变量、函数和常量中的至少一个。
27.根据权利要求24的方法,其中所述第二语言是默认编码语言,所述默认编码语言由软件开发团队选择。
28.根据权利要求24的方法,还包括: 使用采用所述第二语言的所述代码段的所述名称和采用所述第二语言的所述至少一个相关代码段的名称中的至少一个查询第二数据库,所述第二数据库包括代码段库;以及从所述第二数据库检索所述代码段和所述至少一个相关代码段中的至少一个。
29.—种系统,所述系统包括被配置为执行权利要求24至28中的任一权利要求的方法步骤的装置。
【文档编号】G06F9/44GK103914296SQ201410001203
【公开日】2014年7月9日 申请日期:2014年1月2日 优先权日:2013年1月3日
【发明者】L·S·德鲁卡, G·D·米勒 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1