CN109840086A - 程序代码获取方法及装置、计算机装置、及可读存储介质 - Google Patents
程序代码获取方法及装置、计算机装置、及可读存储介质 Download PDFInfo
- Publication number
- CN109840086A CN109840086A CN201811537215.1A CN201811537215A CN109840086A CN 109840086 A CN109840086 A CN 109840086A CN 201811537215 A CN201811537215 A CN 201811537215A CN 109840086 A CN109840086 A CN 109840086A
- Authority
- CN
- China
- Prior art keywords
- level
- program code
- label
- module
- relation table
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000009434 installation Methods 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000006870 function Effects 0.000 claims description 96
- 230000015654 memory Effects 0.000 claims description 30
- 230000002452 interceptive effect Effects 0.000 claims description 4
- TVEXGJYMHHTVKP-UHFFFAOYSA-N 6-oxabicyclo[3.2.1]oct-3-en-7-one Chemical compound C1C2C(=O)OC1C=CC2 TVEXGJYMHHTVKP-UHFFFAOYSA-N 0.000 claims 1
- 238000004590 computer program Methods 0.000 description 16
- 238000003058 natural language processing Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 229910052799 carbon Inorganic materials 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种程序代码获取方法,包括:建立一个关系表,在所述关系表中记录不同功能模块分别与不同的一级标签建立关联;接收用户输入的包括查询标签的查询指令;根据所述查询标签检索所述关系表;及当所述关系表中存在与所述查询标签相匹配的一级标签时,获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户。由此软件开发人员无需再编写所述程序代码,节省了软件开发人员的工作量。本发明还提供实现所述程序代码获取方法的计算机装置、程序代码获取装置、及存储介质。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种程序代码获取方法及装置、计算机装置、及可读存储介质。
背景技术
目前在开发安卓端的App(Application,应用程序)时,都是基于传统的调用方式即基于Java Native Interface(JNL,Java本地接口)利用Java去调用C++生成的动态链接库.dll等。然而,若Java端长时间的调取C++生成的动态链接库.dll等,会比较消耗时间也容易会出现崩溃问题。此外,软件开发人员在开发每个App的时候需要对每个App的每个功能模块编写程序代码,软件开发人员开发App时的工作量也大。
发明内容
鉴于以上内容,有必要提出一种程序代码获取方法及装置、计算机装置、及可读存储介质,用以解决软件开发人员在开发App时的工作量大的技术问题。
本发明的第一方面提供一种程序代码获取方法,所述方法包括:
当接收到创建关系表的操作指令时,建立一个关系表,在所述关系表中记录不同功能模块分别与不同的一级标签建立关联,所述不同功能模块分别对应不同功能,每个功能模块对应至少一组程序代码,该至少一组程序代码用于实现该每个功能模块所对应的功能;
存储所述关系表和所述不同功能模块分别对应的程序代码;
接收用户输入的查询指令,其中,所述查询指令中包括查询标签;
根据所述查询标签检索所述关系表,判断所述关系表是否存在与所述查询标签相匹配的一级标签;及
当所述关系表中存在与所述查询标签相匹配的一级标签时,获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户。
优选地,所述不同功能模块包括用于启动一个App的启动模块、用于关闭一个App的关闭模块、用于从一个App切换到另一个App的切换模块、用于为一个App加载指定数据的加载模块、用于在一个App的不同页面之间实现数据传递的交互模块。
优选地,所述不同功能模块中的每个功能模块对应一组程序代码,所述一级标签与所述功能模块所要实现的功能相关。
优选地,所述建立一个关系表包括:
根据用户的输入确定每个功能模块所对应的一级标签;及
在所述关系表中记录每个功能模块,以及该每个功能模块所对应的一级标签,由此在所述关系表中为所述不同功能模块与不同的一级标签建立关联。
优选地,所述不同功能模块中的每个功能模块对应多组程序代码,其中,所述建立一个关系表包括:
根据用户的输入确定每个功能模块所对应的一级标签;
根据用户的输入确定每个功能模块所对应的多组程序代码分别所对应的二级标签;及
在所述关系表中记录每个功能模块,该每个功能模块所对应的一级标签,以及每个功能模块所对应的多组程序代码分别所对应的二级标签,由此在所述关系表中为所述不同功能模块与不同的一级标签建立了关联,以及为每个一级标签和多个二级标签建立了关联。
优选地,所述获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户包括:
判断所述关系表中,与所述查询标签相匹配的一级标签是否还与二级标签对应;
若所述关系表中,与所述查询标签相匹配的一级标签没有对应的二级标签,读取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所读取的程序代码反馈给用户;及
若所述关系表中,与所述查询标签相匹配的一级标签还与多个二级标签对应,将与所述查询标签相匹配的一级标签所对应的多个二级标签展示给用户,提示用户从所展示的多个二级标签中选择一个标签,以及从与所述查询标签相匹配的一级标签对应的功能模块所对应的多组程序代码中,读取出与所选择的二级标签所对应的程序代码,并将所读取的程序代码展示给用户。
优选地,所述每个功能模块所对应的多组程序代码分别利用不同编程语言所编写。
本发明第二方面提供一种计算机装置,所述计算机装置包括处理器和存储器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令实现所述程序代码获取方法。
本发明第三方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现所述程序代码获取方法。
本发明第四方面提供一种程序代码获取装置,所述装置包括:
创建模块,用于当接收到创建关系表的操作指令时,建立一个关系表,在所述关系表中记录不同功能模块分别与不同的一级标签建立关联,所述不同功能模块分别对应不同功能,每个功能模块对应至少一组程序代码,该至少一组程序代码用于实现该每个功能模块所对应的功能;
所述创建模块,还用于存储所述关系表和所述不同功能模块分别对应的程序代码;
接收模块,用于接收用户输入的查询指令,其中,所述查询指令中包括查询标签;
执行模块,用于根据所述查询标签检索所述关系表,判断所述关系表是否存在与所述查询标签相匹配的一级标签;及
所述执行模块,还用于当所述关系表中存在与所述查询标签相匹配的一级标签时,获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户。
本发明实施例中所述的程序代码获取方法及装置、计算机装置、及可读存储介质,通过建立一个关系表,在所述关系表中记录不同功能模块分别与不同的一级标签建立关联;接收用户输入的包括查询标签的查询指令;根据所述查询标签检索所述关系表;及当所述关系表中存在与所述查询标签相匹配的一级标签时,获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户。由此软件开发人员无需再编写所述程序代码,节省了软件开发人员的工作量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明实施例一提供的程序代码获取方法的流程图。
图2是本发明实施例二提供的程序代码获取装置的结构图。
图3是本发明实施例三提供的计算机装置的示意图。
图4A-4B举例说明关系表的建立。
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
实施例一
图1是本发明实施例一提供的程序代码获取方法的流程图。
在本实施例中,所述程序代码获取方法可以应用于计算机装置中,对于需要进行程序代码获取的计算机装置,可以直接在计算机装置上集成本发明的方法所提供的用于程序代码获取功能,或者以软件开发工具包(Software Development Kit,SDK)的形式运行在计算机装置上。
如图1所示,所述程序代码获取方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
步骤S11、计算机装置接收创建关系表的操作指令,并当接收到创建关系表的操作指令时,建立一个关系表,在该关系表中记录不同功能模块分别与不同的一级标签建立关联。所述不同功能模块分别对应不同功能。在一个实施例中,所述不同功能模块中的每个功能模块对应至少一组程序代码,该至少一组程序代码中的每组程序代码用于实现该每个功能模块所对应的功能。
在一个实施例中,所述不同功能模块包括,但不限于,用于启动一个App(Application,应用程序)的启动模块、用于关闭一个App的关闭模块、用于从一个App切换到另一个App的切换模块、用于为一个App加载指定数据(例如图片、视频、语音等)的加载模块、用于在一个App的不同页面之间实现数据传递的交互模块。
在一个实施例中,所述至少一组程序代码中的每组程序代码可以是利用编程语言如C语言、C++、C#、Java、PHP,或者是其他编程语言例如JavaScript语言所编写的分别用于实现对应功能模块的功能的计算机程序代码。
在第一实施例中,所述不同功能模块中的每个功能模块对应一组程序代码。
在一个实施例中,当每个功能模块仅对应一组程序代码时,所述建立一个关系表包括:
(a)根据用户的输入确定每个功能模块所对应的一级标签。
(b)在所述关系表中记录每个功能模块,以及该每个功能模块所对应的一级标签,由此在所述关系表中为所述不同功能模块与不同的一级标签建立关联(例如参阅图4A所示)。
在一个实施例中,所述一级标签与该功能模块所要实现的功能相关。
举例而言,以所述不同功能模块包括的启动模块为例,所述计算机装置可以根据用户的输入将“启动App”作为一级标签,并在所述关系表中记录所述启动模块与该一级标签(“启动App”)对应。再如,以所述不同功能模块包括的关闭模块为例,所述计算机装置可以根据用户的输入将“关闭App”作为一级标签,并在所述关系表中记录所述启动模块与该一级标签(“关闭App”)对应。
在第二实施例中,所述不同功能模块中的每个功能模块对应多组程序代码。在一个实施例中,每个功能模块所对应的多组程序代码分别为利用不同编程语言所编写的用于实现对应功能模块的功能的计算机程序代码。
举例而言,用于启动App的所述启动模块对应六组程序代码,该六组程序代码分别为利用C语言所编写的用于实现启动App的计算机程序代码、利用C++所编写的用于实现启动App的计算机程序代码、利用C#所编写的用于实现启动App的计算机程序代码、利用Java所编写的用于实现启动App的计算机程序代码、利用PHP所编写的用于实现启动App的计算机程序代码,以及利用JavaScript语言所编写的用于实现启动App的计算机程序代码。
在一个实施例中,当每个功能模块对应多组程序代码时,所述建立一个关系表包括:
(a)根据用户的输入确定每个功能模块所对应的一级标签。(b)根据用户的输入确定每个功能模块所对应的多组程序代码分别所对应的二级标签。
(c)在所述关系表中记录每个功能模块,该每个功能模块所对应的一级标签,以及每个功能模块所对应的多组程序代码分别所对应的二级标签,由此在所述关系表中为所述不同功能模块与不同的一级标签建立了关联,以及为每个一级标签和多个二级标签建立了关联。
在一个实施例中,每组程序代码所对应的二级标签与编写该组程序代码所采用的编程语言相关。
为清楚说明本发明,以用于启动App的启动模块对应两组程序代码为例。该两组程序代码分别是利用C语言和C++编写的用于实现启动App的计算机程序代码。所述计算机装置可以首先根据用户的输入确定启动模块对应一级标签(例如“启动App”)。所述计算机装置根据用户的输入确定利用C语言所编写的该组程序代码对应二级标签(例如“C语言”),以及根据用户的输入确定利用C++所编写的该组程序代码对应二级标签(例如“C++”)。所述计算机装置然后在所述关系表中记录所述启动模块、所述启动模块所对应的一级标签(例如“启动App”),以及所述启动模块所对应的两组程序代码分别所对应的二级标签“C语言”和“C++”。由此所述计算机装置在所述关系表中为所述启动模块与一级标签“启动App”建立了关联,以及为一级标签“启动App”和两个二级标签“C语言”和“C++”建立了关联(例如参阅图4B所示)。
步骤S12、所述计算机装置存储所述关系表和所述不同功能模块分别对应的程序代码。
例如,将所述关系表和所述不同功能模块分别对应的程序代码存储到所述计算机装置的存储器中。
步骤S13、所述计算机装置接收用户输入的查询指令,其中,所述查询指令中包括查询标签。
在一个实施例中,所述计算机装置可以提供一个用户界面,该用户界面用于供用户输入包括查询标签的查询指令。例如,该用户界面包括一个文本输入框,以及一个按钮。用户可以在该文本输入框中输入查询标签,当用户输入完查询标签后,按压/触碰/点击所述按钮,所述计算机装置即可接收到包括查询标签的查询指令。
步骤S14、所述计算机装置根据所述查询标签检索所述关系表,判断所述关系表是否存在与所述查询标签相匹配的一级标签。若判断得出所述关系表存在与所述查询标签相匹配的一级标签,执行步骤S141。若判断得出所述关系表不存在与所述查询标签相匹配的一级标签,执行步骤S142。
在一个实施例中,所述计算机装置可以利用自然语言处理(natural languageprocessing,缩写为“NLP”)技术来判断所述关系表是否存在与所述查询标签相匹配的一级标签。具体地,所述计算机装置可以于所述查询标签与所述关系表所记录的其中某个一级标签一致时,认为所述关系表存在与所述查询标签相匹配的一级标签。本实施例中,所述查询标签与所述关系表所记录的其中某个一级标签一致可以是指所述查询标签所包括的文字以及文字之间的顺序与所述某个一级标签所包括的文字以及文字之间的顺序相同。
步骤S141、若判断得出所述关系表存在与所述查询标签相匹配的一级标签,所述计算机装置获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户(例如软件开发人员)。
例如,所述计算机装置可以打开一个办公软件如word软件,利用该办公软件向用户展示所获取的程序代码。
在一个实施例中,所述获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户包括:
(a)判断所述关系表中,与所述查询标签相匹配的一级标签是否还与二级标签对应。若所述关系表中,与所述查询标签相匹配的一级标签没有对应的二级标签,执行步骤(b)。若所述关系表中,与所述查询标签相匹配的一级标签还与多个二级标签对应,执行步骤(c)。
(b)读取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所读取的程序代码反馈给用户。
(c)将与所述查询标签相匹配的一级标签所对应的多个二级标签展示给用户,提示用户从所展示的多个二级标签中选择一个标签,以及从与所述查询标签相匹配的一级标签对应的功能模块所对应的多组程序代码中,读取出与所选择的二级标签所对应的程序代码,并将所读取的程序代码展示给用户。
举例而言,假设所确定的标签为“启动App”,所述关系表中记录了一级标签“启动App”与启动模块对应,该一级标签“启动App”还与两个二级标签“C语言”、“C++”对应,所述计算机装置则将与该一级标签“启动App”对应的两个二级标签“C语言”、“C++”展示给用户,提示用户从该两个二级标签中选择一个标签。假设用户选择了二级标签“C语言”,所述计算机装置则从与一级标签“启动App”对应的启动模块所对应的多组程序代码中,读取出与所选择的二级标签“C语言”所对应的程序代码,并将所读取的程序代码展示给用户。
步骤S142、若判断得出所述关系表不存在与所述查询标签相匹配的一级标签,所述计算机装置按照预设的提示方式发出提示。
例如,在所述计算机装置的屏幕上显示一段文字,提示没有与所述查询标签对应的程序代码。
综上所述,本发明实施例中所述的程序代码获取方法,通过建立一个关系表,在所述关系表中记录不同功能模块分别与不同的一级标签建立关联;接收用户输入的包括查询标签的查询指令;根据所述查询标签检索所述关系表;及当所述关系表中存在与所述查询标签相匹配的一级标签时,获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户。由此软件开发人员无需再编写所述程序代码,节省了软件开发人员的工作量。
上述图1详细介绍了本发明的程序代码获取方法,下面结合第2~3图,对实现所述程序代码获取方法的软件装置的功能模块以及实现所述程序代码获取方法的硬件装置架构进行介绍。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
实施例二
参阅图2所示,是本发明实施例二提供的程序代码获取装置的结构图。
在一些实施例中,所述程序代码获取装置30运行于计算机装置中。所述程序代码获取装置30可以包括多个由程序代码段所组成的功能模块。所述程序代码获取装置30中的各个程序段的程序代码可以存储于计算机装置的存储器中,并由所述至少一个处理器所执行,以实现(详见图2描述)程序代码获取功能。
本实施例中,所述程序代码获取装置30根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:创建模块301、接收模块302、执行模块303。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
创建模块301接收创建关系表的操作指令,并当接收到创建关系表的操作指令时,建立一个关系表,在该关系表中记录不同功能模块分别与不同的一级标签建立关联。所述不同功能模块分别对应不同功能。在一个实施例中,所述不同功能模块中的每个功能模块对应至少一组程序代码,该至少一组程序代码中的每组程序代码用于实现该每个功能模块所对应的功能。
在一个实施例中,所述不同功能模块包括,但不限于,用于启动一个App(Application,应用程序)的启动模块、用于关闭一个App的关闭模块、用于从一个App切换到另一个App的切换模块、用于为一个App加载指定数据(例如图片、视频、语音等)的加载模块、用于在一个App的不同页面之间实现数据传递的交互模块。
在一个实施例中,所述至少一组程序代码中的每组程序代码可以是利用编程语言如C语言、C++、C#、Java、PHP,或者是其他编程语言例如JavaScript语言所编写的分别用于实现对应功能模块的功能的计算机程序代码。
在第一实施例中,所述不同功能模块中的每个功能模块对应一组程序代码。
在一个实施例中,当每个功能模块仅对应一组程序代码时,所述建立一个关系表包括:
(a)根据用户的输入确定每个功能模块所对应的一级标签。
(b)在所述关系表中记录每个功能模块,以及该每个功能模块所对应的一级标签,由此在所述关系表中为所述不同功能模块与不同的一级标签建立关联(例如参阅图4A所示)。
在一个实施例中,所述一级标签与该功能模块所要实现的功能相关。
举例而言,以所述不同功能模块包括的启动模块为例,所述创建模块301可以根据用户的输入将“启动App”作为一级标签,并在所述关系表中记录所述启动模块与该一级标签(“启动App”)对应。再如,以所述不同功能模块包括的关闭模块为例,所述创建模块301可以根据用户的输入将“关闭App”作为一级标签,并在所述关系表中记录所述启动模块与该一级标签(“关闭App”)对应。
在第二实施例中,所述不同功能模块中的每个功能模块对应多组程序代码。在一个实施例中,每个功能模块所对应的多组程序代码分别为利用不同编程语言所编写的用于实现对应功能模块的功能的计算机程序代码。
举例而言,用于启动App的所述启动模块对应六组程序代码,该六组程序代码分别为利用C语言所编写的用于实现启动App的计算机程序代码、利用C++所编写的用于实现启动App的计算机程序代码、利用C#所编写的用于实现启动App的计算机程序代码、利用Java所编写的用于实现启动App的计算机程序代码、利用PHP所编写的用于实现启动App的计算机程序代码,以及利用JavaScript语言所编写的用于实现启动App的计算机程序代码。
在一个实施例中,当每个功能模块对应多组程序代码时,所述建立一个关系表包括:
(a)根据用户的输入确定每个功能模块所对应的一级标签。
(b)根据用户的输入确定每个功能模块所对应的多组程序代码分别所对应的二级标签。
(c)在所述关系表中记录每个功能模块,该每个功能模块所对应的一级标签,以及每个功能模块所对应的多组程序代码分别所对应的二级标签,由此在所述关系表中为所述不同功能模块与不同的一级标签建立了关联,以及为每个一级标签和多个二级标签建立了关联。
在一个实施例中,每组程序代码所对应的二级标签与编写该组程序代码所采用的编程语言相关。
为清楚说明本发明,以用于启动App的启动模块对应两组程序代码为例。该两组程序代码分别是利用C语言和C++编写的用于实现启动App的计算机程序代码。所述创建模块301可以首先根据用户的输入确定启动模块对应一级标签(例如“启动App”)。所述创建模块301根据用户的输入确定利用C语言所编写的该组程序代码对应二级标签(例如“C语言”),以及根据用户的输入确定利用C++所编写的该组程序代码对应二级标签(例如“C++”)。所述创建模块301然后在所述关系表中记录所述启动模块、所述启动模块所对应的一级标签(例如“启动App”),以及所述启动模块所对应的两组程序代码分别所对应的二级标签“C语言”和“C++”。由此所述创建模块301在所述关系表中为所述启动模块与一级标签“启动App”建立了关联,以及为一级标签“启动App”和两个二级标签“C语言”和“C++”建立了关联(例如参阅图4B所示)。
所述创建模块301存储所述关系表和所述不同功能模块分别对应的程序代码。
例如,将所述关系表和所述不同功能模块分别对应的程序代码存储到所述计算机装置的存储器中。
接收模块302接收用户输入的查询指令,其中,所述查询指令中包括查询标签。
在一个实施例中,所述接收模块302可以提供一个用户界面,该用户界面用于供用户输入包括查询标签的查询指令。例如,该用户界面包括一个文本输入框,以及一个按钮。用户可以在该文本输入框中输入查询标签,当用户输入完查询标签后,按压/触碰/点击所述按钮,所述接收模块302即可接收到包括查询标签的查询指令。
执行模块303根据所述查询标签检索所述关系表,判断所述关系表是否存在与所述查询标签相匹配的一级标签。
在一个实施例中,所述执行模块303可以利用自然语言处理(natural languageprocessing,缩写为“NLP”)技术来判断所述关系表是否存在与所述查询标签相匹配的一级标签。具体地,所述执行模块303可以于所述查询标签与所述关系表所记录的其中某个一级标签一致时,认为所述关系表存在与所述查询标签相匹配的一级标签。本实施例中,所述查询标签与所述关系表所记录的其中某个一级标签一致可以是指所述查询标签所包括的文字以及文字之间的顺序与所述某个一级标签所包括的文字以及文字之间的顺序相同。
若判断得出所述关系表存在与所述查询标签相匹配的一级标签,所述执行模块304获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户(例如软件开发人员)。
例如,所述执行模块303可以打开一个办公软件如word软件,利用该办公软件向用户展示所获取的程序代码。
在一个实施例中,所述获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户包括:
(a)判断所述关系表中,与所述查询标签相匹配的一级标签是否还与二级标签对应。若所述关系表中,与所述查询标签相匹配的一级标签没有对应的二级标签,执行步骤(b)。若所述关系表中,与所述查询标签相匹配的一级标签还与多个二级标签对应,执行步骤(c)。
(b)读取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所读取的程序代码反馈给用户。
(c)将与所述查询标签相匹配的一级标签所对应的多个二级标签展示给用户,提示用户从所展示的多个二级标签中选择一个标签,以及从与所述查询标签相匹配的一级标签对应的功能模块所对应的多组程序代码中,读取出与所选择的二级标签所对应的程序代码,并将所读取的程序代码展示给用户。
举例而言,假设所确定的标签为“启动App”,所述关系表中记录了一级标签“启动App”与启动模块对应,该一级标签“启动App”还与两个二级标签“C语言”、“C++”对应,所述执行模块303则将与该一级标签“启动App”对应的两个二级标签“C语言”、“C++”展示给用户,提示用户从该两个二级标签中选择一个标签。假设用户选择了二级标签“C语言”,所述执行模块303则从与一级标签“启动App”对应的启动模块所对应的多组程序代码中,读取出与所选择的二级标签“C语言”所对应的程序代码,并将所读取的程序代码展示给用户。
若判断得出所述关系表不存在与所述查询标签相匹配的一级标签,所述执行模块303按照预设的提示方式发出提示。
例如,在所述计算机装置的屏幕上显示一段文字,提示没有与所述查询标签对应的程序代码。
综上所述,本发明实施例中所述的程序代码获取装置,通过建立一个关系表,在所述关系表中记录不同功能模块分别与不同的一级标签建立关联;接收用户输入的包括查询标签的查询指令;根据所述查询标签检索所述关系表;及当所述关系表中存在与所述查询标签相匹配的一级标签时,获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户。由此软件开发人员无需再编写所述程序代码,节省了软件开发人员的工作量。
实施例三
参阅图3所示,为本发明实施例三提供的计算机装置的结构示意图。在本发明较佳实施例中,所述计算机装置3包括存储器31、至少一个处理器32、至少一条通信总线33。本领域技术人员应该了解,图3示出的计算机装置的结构并不构成本发明实施例的限定,既可以是总线型结构,也可以是星形结构,所述计算机装置3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
在一些实施例中,所述计算机装置3包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。
需要说明的是,所述计算机装置3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器31用于存储程序代码和各种数据,例如安装在所述计算机装置3中的程序代码获取装置30,并在计算机装置3的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器31包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-OnlyMemory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他存储介质。
在一些实施例中,所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器32是所述计算机装置3的控制核心(Control Unit),利用各种接口和线路连接整个计算机装置3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行计算机装置3的各种功能和处理数据,例如执行程序代码获取的功能。
在一些实施例中,所述至少一条通信总线33被设置为实现所述存储器31以及所述至少一个处理器32等之间的连接通信。
尽管未示出,所述计算机装置3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述计算机装置3还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是服务器、个人电脑等)或处理器(processor)执行本发明各个实施例所述方法的部分。
在进一步的实施例中,结合图2,所述至少一个处理器32可执行所述计算机装置3的操作装置以及安装的各类应用程序(如所述的程序代码获取装置30)、程序代码等,例如,上述的各个模块。
所述存储器31中存储有程序代码,且所述至少一个处理器32可调用所述存储器31中存储的程序代码以执行相关的功能。例如,图2中所述的各个模块是存储在所述存储器31中的程序代码,并由所述至少一个处理器32所执行,从而实现所述各个模块的功能以达到程序代码获取的目的。
在本发明的一个实施例中,所述存储器31存储多个指令,所述多个指令被所述至少一个处理器32所执行以实现程序代码获取的目的。
具体地,所述至少一个处理器32对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种程序代码获取方法,其特征在于,所述方法包括:
当接收到创建关系表的操作指令时,建立一个关系表,在所述关系表中记录不同功能模块分别与不同的一级标签建立关联,所述不同功能模块分别对应不同功能,每个功能模块对应至少一组程序代码,该至少一组程序代码用于实现该每个功能模块所对应的功能;
存储所述关系表和所述不同功能模块分别对应的程序代码;
接收用户输入的查询指令,其中,所述查询指令中包括查询标签;
根据所述查询标签检索所述关系表,判断所述关系表是否存在与所述查询标签相匹配的一级标签;及
当所述关系表中存在与所述查询标签相匹配的一级标签时,获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户。
2.如权利要求1所述的程序代码获取方法,其特征在于,所述不同功能模块包括用于启动一个App的启动模块、用于关闭一个App的关闭模块、用于从一个App切换到另一个App的切换模块、用于为一个App加载指定数据的加载模块、用于在一个App的不同页面之间实现数据传递的交互模块。
3.如权利要求1所述的程序代码获取方法,其特征在于,所述不同功能模块中的每个功能模块对应一组程序代码,所述一级标签与所述功能模块所要实现的功能相关。
4.如权利要求3所述的程序代码获取方法,其特征在于,所述建立一个关系表包括:
根据用户的输入确定每个功能模块所对应的一级标签;及
在所述关系表中记录每个功能模块,以及该每个功能模块所对应的一级标签,由此在所述关系表中为所述不同功能模块与不同的一级标签建立关联。
5.如权利要求1所述的程序代码获取方法,其特征在于,所述不同功能模块中的每个功能模块对应多组程序代码,其中,所述建立一个关系表包括:
根据用户的输入确定每个功能模块所对应的一级标签;
根据用户的输入确定每个功能模块所对应的多组程序代码分别所对应的二级标签;及
在所述关系表中记录每个功能模块,该每个功能模块所对应的一级标签,以及每个功能模块所对应的多组程序代码分别所对应的二级标签,由此在所述关系表中为所述不同功能模块与不同的一级标签建立了关联,以及为每个一级标签和多个二级标签建立了关联。
6.如权利要求5所述的程序代码获取方法,其特征在于,所述获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户包括:
判断所述关系表中,与所述查询标签相匹配的一级标签是否还与二级标签对应;
若所述关系表中,与所述查询标签相匹配的一级标签没有对应的二级标签,读取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所读取的程序代码反馈给用户;及
若所述关系表中,与所述查询标签相匹配的一级标签还与多个二级标签对应,将与所述查询标签相匹配的一级标签所对应的多个二级标签展示给用户,提示用户从所展示的多个二级标签中选择一个标签,以及从与所述查询标签相匹配的一级标签对应的功能模块所对应的多组程序代码中,读取出与所选择的二级标签所对应的程序代码,并将所读取的程序代码展示给用户。
7.如权利要求5所述的程序代码获取方法,其特征在于,所述每个功能模块所对应的多组程序代码分别利用不同编程语言所编写。
8.一种计算机装置,其特征在于,所述计算机装置包括处理器和存储器,所述存储器用于存储至少一个指令,所述处理器用于执行所述至少一个指令实现如权利要求1至7中任意一项所述程序代码获取方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现如权利要求1至7中任意一项所述程序代码获取方法。
10.一种程序代码获取装置,其特征在于,所述装置包括:
创建模块,用于当接收到创建关系表的操作指令时,建立一个关系表,在所述关系表中记录不同功能模块分别与不同的一级标签建立关联,所述不同功能模块分别对应不同功能,每个功能模块对应至少一组程序代码,该至少一组程序代码用于实现该每个功能模块所对应的功能;
所述创建模块,还用于存储所述关系表和所述不同功能模块分别对应的程序代码;
接收模块,用于接收用户输入的查询指令,其中,所述查询指令中包括查询标签;
执行模块,用于根据所述查询标签检索所述关系表,判断所述关系表是否存在与所述查询标签相匹配的一级标签;及
所述执行模块,还用于当所述关系表中存在与所述查询标签相匹配的一级标签时,获取与所述查询标签相匹配的一级标签所对应的功能模块所对应的程序代码,并将所获取的程序代码反馈给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811537215.1A CN109840086A (zh) | 2018-12-14 | 2018-12-14 | 程序代码获取方法及装置、计算机装置、及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811537215.1A CN109840086A (zh) | 2018-12-14 | 2018-12-14 | 程序代码获取方法及装置、计算机装置、及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109840086A true CN109840086A (zh) | 2019-06-04 |
Family
ID=66883281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811537215.1A Pending CN109840086A (zh) | 2018-12-14 | 2018-12-14 | 程序代码获取方法及装置、计算机装置、及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109840086A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11520567B2 (en) | 2020-05-07 | 2022-12-06 | Beijing Baidu Netcom Science Technology Co., Ltd. | Code reuse processing method, apparatus and electronic device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE202006000135U1 (de) * | 2006-01-05 | 2006-04-20 | Framework Systems Gmbh | Vorrichtung zum Erzeugen von Programmcode eines Nutzerprogrammes |
JP4402168B1 (ja) * | 2008-09-28 | 2010-01-20 | 株式会社エスグランツ | コード列検索装置、検索方法及びプログラム |
CN104461618A (zh) * | 2014-11-26 | 2015-03-25 | 北京国双科技有限公司 | 加载模块的方法及装置 |
CN105871600A (zh) * | 2016-03-28 | 2016-08-17 | 努比亚技术有限公司 | 应用程序的升级包检测方法和服务器、升级方法和系统 |
-
2018
- 2018-12-14 CN CN201811537215.1A patent/CN109840086A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE202006000135U1 (de) * | 2006-01-05 | 2006-04-20 | Framework Systems Gmbh | Vorrichtung zum Erzeugen von Programmcode eines Nutzerprogrammes |
JP4402168B1 (ja) * | 2008-09-28 | 2010-01-20 | 株式会社エスグランツ | コード列検索装置、検索方法及びプログラム |
CN104461618A (zh) * | 2014-11-26 | 2015-03-25 | 北京国双科技有限公司 | 加载模块的方法及装置 |
CN105871600A (zh) * | 2016-03-28 | 2016-08-17 | 努比亚技术有限公司 | 应用程序的升级包检测方法和服务器、升级方法和系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11520567B2 (en) | 2020-05-07 | 2022-12-06 | Beijing Baidu Netcom Science Technology Co., Ltd. | Code reuse processing method, apparatus and electronic device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106067080B (zh) | 提供可配置工作流能力 | |
CN109740732A (zh) | 神经网络处理器、卷积神经网络数据复用方法及相关设备 | |
CN113282795B (zh) | 数据结构图生成及更新方法、装置、电子设备及存储介质 | |
CN110427258B (zh) | 基于云平台的资源调度控制方法及装置 | |
EP3599617A1 (en) | Computer system and method of presenting information related to basis of predicted value output by predictor, data carrier | |
CN109491888A (zh) | 应用程序兼容性测试方法、装置、及计算机可读存储介质 | |
CN109947502B (zh) | 一种快递柜展示界面的配置方法、装置、设备及存储介质 | |
CN107608674A (zh) | 一种应用换肤方法、装置、计算机及存储介质 | |
CN110209574A (zh) | 一种基于人工智能的数据开发系统 | |
CN102243582A (zh) | 用于为自定义用户接口生成用户帮助信息的方法和装置 | |
CN112182359A (zh) | 推荐模型的特征管理方法及系统 | |
CN109582418A (zh) | 用户行为数据收集方法、装置、计算机装置、存储介质 | |
CN106406854A (zh) | 一种计算机监控组态界面设计方法及系统 | |
CN112486491A (zh) | 页面生成方法、装置、计算机设备及存储介质 | |
CN110264147A (zh) | 审批链审批方法、装置、终端及存储介质 | |
CN112214155B (zh) | 一种视图信息播放方法、装置、设备和存储介质 | |
CN109840086A (zh) | 程序代码获取方法及装置、计算机装置、及可读存储介质 | |
CN114064079A (zh) | 算法应用元的打包方法及装置、设备、存储介质 | |
CN109523436A (zh) | 用户学习管理方法、装置、计算机装置、存储介质 | |
CN109598360A (zh) | 业务在线办理方法、装置、及计算可读存储介质 | |
CN110113391A (zh) | 一种客户端上线方法、装置及一种客户端运行方法、装置 | |
CN110276515A (zh) | 任务分配方法、装置、终端及存储介质 | |
US20190042205A1 (en) | Seamless integration of computer and human generated code | |
CN110609967A (zh) | 一种榜单生成方法、装置及存储介质 | |
CN114327779B (zh) | 一种应用运行环境搭建方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190604 |
|
WD01 | Invention patent application deemed withdrawn after publication |