CN113822014A - 一种代码物料的存储方法、装置、电子设备及存储介质 - Google Patents
一种代码物料的存储方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113822014A CN113822014A CN202111372905.8A CN202111372905A CN113822014A CN 113822014 A CN113822014 A CN 113822014A CN 202111372905 A CN202111372905 A CN 202111372905A CN 113822014 A CN113822014 A CN 113822014A
- Authority
- CN
- China
- Prior art keywords
- stored
- code
- code material
- information
- file
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/123—Storage facilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种代码物料的存储方法、装置、电子设备及存储介质,包括:根据用户存储请求确定待存储代码物料的主文件,其中,所述待存储代码物料为复制到已有代码中可以直接实现出对应功能的代码片段;解析所述主文件,得到待存储代码物料的文件类型和运行参数;基于所述文件类型和所述运行参数生成标签;将所述标签与所述待存储代码物料进行绑定,将绑定标签的待存储代码物料上传服务器端进行存储,完成存储。优化了代码物料存储的流程,只需要发起针对任一待存储代码物料信息的存储请求,就可以将待存储代码物料信息进行标签标注并上传到服务器中,完成存储,提高存储效率。
Description
技术领域
本申请涉及软件开发技术领域,尤其是涉及一种代码物料的存储方法、装置、电子设备及存储介质。
背景技术
代码物料为一种代码片段,由样式css文件和脚本js文件组成。如果将代码物料复制到已有代码中,可以直接实现出相应的功能,而且可以对其自定义修改,例如,在一个空白的页面中设置了第一仪表盘,仪表盘内指针颜色为蓝色,仪表盘内指针指示数据为30,后续研发人员想要在同一或者另一个空白的页面中添加一个指针颜色为绿色,指针指示数据数值为50的第二仪表盘,在同一或者另一个空白的页面中添加第二仪表盘时只需要复制第一仪表盘底层代码,并修改第一仪表盘底层代码中的参数就可以实现,由此,第一仪表盘的代码文件夹即底层代码为代码物料。
现有技术中,在进行代码物料存储时,只能手动去填写相关物料信息,复制样式文件和脚本文件到对应的物料库中,无法体现当前被存储的代码物料的属性信息,即,运行参数和/或文件类型,当用户想要调用当前代码物料时,需要打开文件查看具体代码或者运行当前代码物料,以进行检验当前代码物料是否满足要求,由此带来了代码物料存储的不便利,进而影响软件开发的效率,要求调用者具有一定阅读代码的能力,进而导致代码物料存储的适用范围较小,代码物料存储的过程效率低下的问题。
发明内容
有鉴于此,本申请的目的在于提供一种代码物料的存储方法、装置、电子设备及存储介质,基于用户的存储请求自动存储物料,降低操作成本,使得被存储在被调用时,体现当前被存储的代码物料的属性信息,增加了代码物料存储的适用范围。
本申请实施例提供了一种代码物料的存储方法,所述方法包括:
根据用户存储请求携带的存储信息,确定待存储代码物料的主文件,其中,所述待存储代码物料为复制到已有代码中可以直接实现出对应功能的代码片段;
解析所述主文件,得到待存储代码物料的文件类型和运行参数;
根据所述文件类型和所述运行参数生成属性标签;
将所述属性标签与所述待存储代码物料进行绑定,将绑定属性标签的待存储代码物料上传服务器端进行存储。
可选的,所述根据用户存储请求确定待存储代码物料的主文件的步骤,包括:
根据用户存储请求携带的存储信息,获取所述待存储代码物料的总文件夹,其中,所述总文件夹内包括样式文件和脚本文件;
基于所述样式文件和所述脚本文件的文件类型选择出所述待存储代码物料的脚本文件;
将所述待存储代码物料的脚本文件作为所述待存储代码物料的主文件。
可选的,所述根据用户存储请求携带的存储信息,获取所述待存储代码物料的总文件夹的步骤,包括:
若所述请求类型为用户通过触碰屏幕产生的电信号,则根据所述电信号确定待存储代码物料,获取所述待存储代码物料的样式文件和脚本文件。
可选的,所述根据用户存储请求携带的存储信息,获取所述待存储代码物料的总文件夹的步骤,还包括:
若所述请求类型为通过用户的功能描述获取的文本信息,则基于所述文本信息确定所述待存储代码物料的总文件夹,获取所述待存储代码物料的样式文件和脚本文件,其中,所述代码物料具有功能标签。
可选的,所述基于所述文本信息确定所述待存储代码物料的总文件夹的步骤,包括:
根据预设筛选规则对所述文本信息进行筛选,获取所述文本信息内的关键词信息;
基于所述关键词信息匹配所有代码物料的功能标签,确定所述待存储代码物料。
可选的,所述基于所述关键词信息匹配所有代码物料的功能标签,确定所述待存储代码物料的步骤,包括:
基于所述功能标签为所述代码物料进行分类,得到类别信息;
根据所述类别信息与所述关键词信息进行第一次匹配,得到与所述关键词信息匹配度最高的类别信息;
获取与所述关键词信息匹配度最高的类别信息对应的初始代码物料;
基于所述关键词信息在所述初始代码物料中确定所述待存储代码物料。
可选的,所述待存储代码物料为所述待存储代码物料的主文件的父级文件。
第二方面,本申请提供了一种代码物料的存储装置,所述装置包括:
确定模块,用于根据用户存储请求的存储信息,确定待存储代码物料的主文件,其中,所述待存储代码物料为复制到已有代码中可以直接实现出对应功能的代码片段;
解析模块,用于解析所述主文件,得到待存储代码物料的文件类型和运行参数;
生成模块,用于基于所述文件类型和所述运行参数生成属性标签;
存储模块,用于将所述属性标签与所述待存储代码物料进行绑定,将绑定属性标签的待存储代码物料上传服务器端进行存储。
可选的,所述确定模块,用于根据以下步骤确定待存储代码物料的主文件:
根据用户存储请求携带的存储信息,获取所述待存储代码物料的总文件夹,其中,所述总文件夹内包括样式文件和脚本文件;
基于所述样式文件和所述脚本文件的文件类型选择出所述待存储代码物料的脚本文件;
将所述待存储代码物料的脚本文件作为所述待存储代码物料的主文件。
可选的,所述确定模块还用于:
若所述用户存储请求的请求类型为用户通过触碰屏幕产生的电信号,则根据所述电信号确定待存储代码物料,获取所述待存储代码物料的总文件夹。
可选的,所述确定模块还用于:
若所述用户存储请求的请求类型为通过用户的功能描述获取的文本信息,则基于所述文本信息确定所述待存储代码物料的总文件夹,获取所述待存储代码物料的样式文件和脚本文件,其中,所述代码物料具有功能标签。
可选的,所述确定模块还用于:
根据预设筛选规则对所述文本信息进行筛选,获取所述文本信息内的关键词信息;
基于所述关键词信息匹配所有代码物料的功能标签,确定所述待存储代码物料的总文件夹。
可选的,所述确定模块还用于:
基于所述功能标签为所述待存储代码物料的总文件夹进行分类,得到类别信息;
根据所述类别信息与所述关键词信息进行第一次匹配,得到与所述关键词信息匹配度最高的类别信息;
获取与所述关键词信息匹配度最高的类别信息对应的初始代码物料;
基于所述关键词信息在所述初始代码物料中确定所述待存储代码物料的总文件夹。
可选的,所述待存储代码物料的总文件夹为所述待存储代码物料的主文件的父级文件。
第三方面,本申请提供了一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器用于执行存储器中存储的计算机程序时实现如上述的代码物料的存储方法。
第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序:所述计算机程序被处理器执行时实现如上述的代码物料的存储方法。
本申请实施例提供的代码物料的存储方法及装置,优化了物料存储的流程,只需要在想要存储的物料主文件中,点击存储,然后填写一些物料相关的信息,就可以将物料文件自动打包并上传,供其他人使用。与现有技术中的代码物料的存储方法相比,不需要手动去填写相关物料信息,也不需要复制样式文件和脚本文件到对应的物料库中,将物料文件自动打包并上传,体现当前被存储的代码物料的属性信息,利于所述代码物料的调用与使用,增加了所述代码物料存储的适用用户范围。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种代码物料的存储方法的流程图;
图2示出了本申请实施例所提供的一种代码物料的存储装置的结构示意图;
图3示出了本申请实施例所提供的一种电子设备的结构示意图;
图4示出了本申请实施例所提供的一种计算机存储介质的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。
首先,对本申请可适用的应用场景进行介绍。本申请可应用于软件开发的场景。
经研究发现,现有技术中的代码物料的存储方法,需要手动去填写相关物料信息,还需要复制样式文件和脚本文件到对应的物料库中,大大降低了物料存储的效率。
基于此,本申请实施例提供了一种代码物料的存储方法,以提高物料存储的效率,简化代码物料的存储步骤。
如图1中所示,本申请实施例提供的代码物料的存储方法,包括:
S101、根据用户存储请求携带的存储信息,确定待存储代码物料的主文件。
其中,所述待存储代码物料为复制到已有代码中可以直接实现出对应功能的代码片段;
示例性的,一个物料在一个工程中通常为一个文件夹,里面有一个scss文件夹,里面是对应的样式文件,里面还有一个index.tsx文件,这个是物料主文件。打开需要存储的物料主文件,在页面发送物料存储请求。
S102、解析所述主文件,得到待存储代码物料的文件类型和运行参数;
示例性的,使用babel工具包来解析待存储代码物料的主文件,得到文件中的默认参数和该组件所依赖的文件信息,即,运行参数和主文件类型和样式文件类型。
Babel 是一个工具链,主要用于将采用 ECMAScript 2015+ 语法编写的代码转换为向后兼容的 JavaScript 语法,以便能够运行在当前和旧版本的浏览器或其他环境中。
S103、根据所述文件类型和所述运行参数生成属性标签;
示例性的,根据所述主文件类型、所述样式文件类型和所述运行参数生成属性标签,其中,所述属性标签还可以设置有物料简介等预设信息。
S104、将所述属性标签与所述待存储代码物料进行绑定,将绑定属性标签的待存储代码物料上传服务器端进行存储。
示例性的,获取当前index文件所在文件夹的路径,将当前文件夹移动到临时文件夹A,然后在临时文件夹A中根据数据A生成一个package.json文件。然后将临时文件夹A压缩打包,上传。
示例性的,打包流程,包括:
获取预先设置的当前信息打包操作的属性信息。
一般的,打包操作为将项目中的代码、资源等整合成一个可执行的软件,在执行打包操作前,需预先对当前打包操作设置属性信息,以区别历史打包结果。示例性的,可以对当前打包操作设置新的版本号,通过版本号来区别历史打包结果。还可以对当前打包操作设置md5(Message Digest Algorithm MD5,消息摘要算法第五版)值,通过md5值的唯一性区别当前打包操作对应的打包结果与历史打包结果。
从共享存储空间中获取与所述当前信息打包操作的属性信息相似度最大的历史打包结果。
示例性的,共享存储空间可以是大容量的高速硬盘,将所有的历史打包结果存储于共享存储空间中,在局域网中共享该硬盘,使得所有打包机都可以访问到共享存储空间,使所有打包机都可以获取共享存储空间中的历史打包结果。
在执行当前打包操作前,根据预先设置的当前打包操作的属性信息从共享存储空间中获取属性信息相似度最大的历史打包结果。可选的,所述从共享存储空间中获取与所述当前信息打包操作的属性信息相似度最大的历史打包结果,包括:将所述当前信息打包操作的属性信息与所述共享存储空间中的各历史打包结果的属性信息进行相似度计算,获取与当前信息打包操作的属性信息相似度最大的历史打包结果。将当前信息打包操作的属性信息与共享空间中存储的所有历史打包结果的属性信息进行相似度计算,将与当前信息打包操作的属性信息相似度最大的历史打包结果从共享存储空间中下载至打包机。通过计算当前信息打包操作的属性信息与各历史打包结果的属性信息的相似度,使获取的历史打包结果更加符合需要,从而节省打包时间,提高打包效率。
确定所述当前信息打包操作对应的打包结果与所述历史打包结果的差异信息。
从共享存储空间下载与当前信息打包操作的属性信息相似度最高的历史打包结果后,需计算当前信息打包操作对应的打包结果与历史打包结果之间的差异,从而生成当前信息打包结果。可选的,所述确定所述当前信息打包操作对应的打包结果与所述历史打包结果的差异信息,包括:获取当前信息打包操作的当前打包信息列表与历史打包结果的历史打包信息列表;根据所述当前打包信息列表与所述历史打包信息列表确定差异信息。在计算当前信息打包操作对应的打包结果与所述历史打包结果的差异信息时,获取当前信息打包操作与历史打包结果的信息列表,信息列表中记载了打包内容,如代码,视频,图片等。根据二者的信息列表,计算当前信息打包操作与历史打包结果的差异信息,成为后续生成当前信息打包结果的基础。
根据所述历史打包结果与所述差异信息生成当前打包操作的打包结果。
在历史打包结果的基础上,根据当前信息打包操作与历史打包结果的差异信息,生成当前打包操作的打包结果。可选的,所述根据所述历史打包结果与所述差异信息生成当前打包操作的打包结果,包括:当所述差异信息为空时,将所述历史打包结果作为当前信息打包的结果。当所述差异信息为空时,即当前信息打包操作与历史打包结果的信息列表中的内容一致,也说明当前信息打包操作的属性信息与历史打包结果的属性信息一致,此时将从共享存储空间获取的历史打包结果作为当前信息打包操作的打包结果。
可选的,所述根据所述历史打包结果与所述差异信息生成当前打包操作的打包结果,还包括:当所述差异信息不为空时,根据差异信息生成差异打包结果;根据所述历史打包结果与所述差异打包结果,生成当前信息打包操作的打包结果。当差异信息不为空时,说明当前信息打包操作与历史打包结果的信息列表中的内容有所差别,也说明当前信息打包操作的属性信息与历史打包结果的属性信息有所差别,此时,需要根据差异信息对历史打包结果进行处理,从而生成当前信息打包操作的打包结果。
可选的,所述根据所述历史打包结果与所述差异打包结果,生成当前信息打包操作的打包结果,包括:根据差异信息的类型,基于所述差异打包结果对所述历史打包结果进行处理,生成当前信息打包操作的打包结果;其中,所述差异信息类型包括增信、替换和删除。当计算的当前信息打包操作与历史打包结果的差异信息不为空时,需根据当前信息打包操作与历史打包结果的信息列表确定差异信息类型,示例性的,根据当前信息打包操作与历史打包结果的信息列表确定,当前信息打包操作需打包的信息比历史打包结果中的信息多3张图片,此时确定差异信息的类型为增信。根据增信的差异信息类型,将多出的3张图片信息进行打包,生成差异打包结果,并与历史打包结果进行合并,生成当前信息打包操作的打包结果;如果当前信息打包操作需打包的信息与历史打包结果中的信息中只有一段代码不同时,此时确定差异信息类型为替换。根据替换的差异信息类型,将历史打包结果中需要替换的代码进行替换,替换完成后将代码部分进行重新打包,其他非代码部分保持不变,将重新打包好的代码作为差异打包结果与其他非代码部分进行组合生成当前信息打包操作的打包结果;当历史打包结果中的信息比当前信息打包操作需打包的信息多一段视频时,此时确定的差异信息的类型为删除,根据删除的差异信息类型,将历史打包结果中需要删除的视频从视频部分中删除,并将删除完成后的视频部分作为差异打包结果和其他非视频部分进行组合生成当前信息打包操作的打包结果。无需对所有信息进行打包,只对差异信息进行打包即可,解决了信息打包时间冗长的问题,节省了信息打包的时间。
在一种可能的实施方式中,所述根据用户存储请求确定待存储代码物料的主文件的步骤,包括:
根据用户存储请求携带的存储信息,获取所述待存储代码物料的总文件夹,其中,所述总文件夹内包括样式文件和脚本文件;
基于所述样式文件和所述脚本文件的文件类型选择出所述待存储代码物料的脚本文件;
将所述待存储代码物料的脚本文件作为所述待存储代码物料的主文件。
脚本(Script),是使用一种特定的描述性语言,依据一定的格式编写的可执行文件。当执行脚本时,计算机会执行一连串的操作。
在一种可能的实施方式中,所述根据用户存储请求获取所述待存储代码物料的样式文件和脚本文件的步骤,包括:
若所述用户存储请求的请求类型为用户通过触碰屏幕产生的电信号,则根据所述电信号确定待存储代码物料,获取所述待存储代码物料的样式文件和脚本文件。
当接收到唤醒触摸屏幕的信号时,根据预置的唤醒触摸屏幕的信号与有效触摸区域的对应关系,在所述触摸屏幕上获取与所述唤醒触摸屏幕的信号对应的有效触摸区域;检测所述有效触摸区域内的触摸点位置信息;根据所述触摸点位置信息生成操作指令。
可使得终端准确获取预置触摸区域上的触摸点,提高终端操作时的准确率,降低终端在唤醒时发生冻屏的现象,提高用户体验。
通过电容式触控屏CTP模组获取触摸屏幕上的触摸点位置信息;
通过所述CTP模组将所述触摸点位置信息上报给CTP线程;
通过所述CTP线程判断所述触摸点位置信息是否位于所述有效触摸区域内;
当通过所述CTP线程判断所述触摸点位置信息位于所述有效触摸区域内时,通过所述CTP线程获取所述触摸点位置信息进行处理;
当通过所述CTP线程判断所述触摸点位置信息位于所述有效触摸区域之外时,通过所述CTP线程对所述触摸点位置信息不进行处理。
在一种可能的实施方式中,所述根据用户存储请求获取所述待存储代码物料的样式文件和脚本文件的步骤,还包括:
若所述用户存储请求的请求类型为通过用户的功能描述获取的文本信息,则基于所述文本信息确定所述待存储代码物料的总文件夹,获取所述待存储代码物料的样式文件和脚本文件,其中,所述代码物料具有功能标签。
在一种可能的实施方式中,所述基于所述文本信息确定所述待存储代码物料的总文件夹的步骤,包括:
根据预设筛选规则对所述文本信息进行筛选,获取所述文本信息内的关键词信息;
基于所述关键词信息匹配所有代码物料的功能标签,确定所述待存储代码物料的总文件夹。
示例性的,标签使用者在所述用户终端输入所表达的待存储代码物料,查看所述标签字典库是否已经有标签可以用于标注标签使用者表达的待存储代码物料:若可以找到对应用于标注待存储代码物料的标签,使用者直接引用对应标签,在单次引用后,系统自动记录在所述标签字典库中的对应标签,将其存入系统数据库中完成待存储代码物料的标注;若无法找到对应用于标注待存储代码物料的标签,由使用者通过所述暂存标签添加模块自主添加新增分词,由后台自动生成新增分词的临时标签,临时标签生成后存入所述标签字典库中,可供其他使用者引用,在添加新增分词后,系统自动推送临时标签至所述暂存标签审核模块中,提醒系统管理员对临时标签进行审核,系统管理员人工判断临时标签与所述标签字典库中的已有标签有无相似可替代性:若临时标签无可替代,将新增的临时标签划为正式标签存入所述标签字典库中;若有可替代临时标签的标签,由系统管理员通过所述暂存标签处理模块进行标签合并,并确认以已有标签或新增的临时标签中的一个标签为主、作为主标签存入所述标签字典库中;
在判断新增的临时标签有无相似可替代性时,由系统筛选出合适的已有标签供系统管理员作最后判断,筛选的过程为:通过所述暂存标签审核模块统计临时标签的字数,对临时标签进行等级划分:分为基础标签和属性标签,将统计的字数和划分结果传输到所述匹配结果重复处理模块中,通过所述匹配结果重复处理模块先进行基础标签的匹配:将所述标签字典库中已有标签和基础标签进行匹配:查找已有标签中是否有与基础标签相似或相同的内容,若与基础标签相似的标签有多个,在匹配的内容上添加属性标签,将标签分词进行词义切分后再进行二次匹配,将匹配结果传输到所述暂存标签处理模块中,通过所述暂存标签处理模块将匹配的标签发送给系统管理员作最终判断。
进一步的,所述暂存标签添加模块包括标签暂存单元和标签分词提取单元,在所述标签字典库中找不到可以用于标注使用者输入事件的标签时,标签使用者自主添加新增分词至所述标签字典库中,通过所述标签暂存单元将添加的新标签以临时标签形式暂存,由后台自动生成新增分词的临时标签,临时标签生成后存入所述标签字典库中,供其他使用者引用,在添加新增分词后,系统自动推送临时标签至所述暂存标签审核模块中,提醒系统管理员对临时标签进行审核;标签使用者在所述标签字典库中找到可以用于标注待存储代码物料的标签时,通过所述标签分词提取单元将对应标签提取至所述用户终端供使用者引用,在单次引用后,系统自动记录在所述标签字典库中的对应标签,将其存入系统数据库中完成待存储代码物料的标注。
进一步的,所述暂存标签审核模块包括标签审核提醒单元、临时标签审核单元、标签字数统计单元和标签等级划分单元,在添加新增分词、生成临时标签后,利用所述标签审核提醒单元提醒系统管理员通过所述临时标签审核单元对临时标签进行审核,通过所述标签字数统计单元统计所有标签的字数,将统计结果传输到所述匹配结果重复处理模块中,通过所述标签等级划分单元将临时标签划分为基础标签和属性标签,存在多个属性标签时,依据属性标签在所述标签字典库中的权重进行等级划分。
进一步的,所述匹配结果重复处理模块包括基础标签匹配单元、标签分词切分单元和标签匹配单元,在筛选合适标签过程中,先通过所述基础标签匹配单元将暂存的基础标签和已有标签进行匹配:若存在多个和暂存的基础标签相似的已有标签,添加属性标签后,通过所述标签分词切分单元对临时标签进行词义切分,属性标签按照等级从大到小顺序添加,将切分结果传输到所述标签匹配单元中,所述标签匹配单元将已有标签与切分后的临时标签进行二次匹配,将最终的匹配结果传输到所述暂存标签处理模块中,通过所述暂存标签处理模块将匹配的标签发送给系统管理员判断有无相似可替代性。
进一步的,所述暂存标签处理模块包括正式标签划分单元、相似标签合并单元和最佳标签选定单元,若临时标签无可替代,通过所述正式标签划分单元将新增的临时标签划为正式标签存入所述标签字典库中;若有可替代临时标签的标签,系统管理员通过所述相似标签合并单元进行标签合并,并通过所述最佳标签选定单元确认以已有的或新增的临时标签中的一个标签为主、作为主标签存入所述标签字典库中,临时标签在审核、合并前不作删除处理,在合并之后,所述标签字典库中被引用过的临时标签自动替换成合并后确认的正式标签,对标签只作合并、不作删除处理,确保了临时标签已被引用的实践效果不受影响,提高了相关部门人员的工作效率。
在一种可能的实施方式中,所述基于所述关键词信息匹配所有代码物料的功能标签,确定所述待存储代码物料的步骤,包括:
基于所述功能标签为所述代码物料进行分类,得到类别信息;
根据所述类别信息与所述关键词信息进行第一次匹配,得到与所述关键词信息匹配度最高的类别信息;
获取与所述关键词信息匹配度最高的类别信息对应的初始代码物料;
基于所述关键词信息在所述初始代码物料中确定所述待存储代码物料。
示例性的,从本地缓存中查找待匹配关键词所属的目标词库的标识和目标词库所在的目标服务器的标识,词库为多个关键词的集合,不同的词库以维度划分且被分布式缓存在多个服务器上,所述维度用于区分不同的场景;
根据目标词库的标识和目标服务器的标识从目标服务器中获取目标词库;
根据待匹配关键词和目标词库中的关键词的属性进行关键词匹配,得到匹配结果,所述属性为关键词在目标词库对应维度下的具体含义。
可选的,所述本地缓存中以字典树的数据结构存储关键词,关键词所属的词库的标识和关键词所属的词库所在的服务器的标识存储在关键词的最后一个字符对应的节点中。
可选的,所述从本地缓存中查找待匹配关键词所属的目标词库的标识和目标词库所在的目标服务器的标识,包括:
从字典树的数据结构查找出待匹配关键词,从待匹配关键词的最后一个字符对应的节点中获取待匹配关键词所属的目标词库的标识和目标词库所在的目标服务器的标识。
可选的,所述本地缓存中以哈希表的形式存储关键词、关键词所属的词库的标识和关键词所属的词库所在的服务器的标识。
可选的,所述方法还包括:
对待检测的文本进行关键词划分,得到多个待匹配关键词。
在一种可能的实施方式中,所述待存储代码物料为所述待存储代码物料的主文件的父级文件。
示例性的,进而通过所述待存储代码物料的主文件获取所述待存储代码物料文件,即所述主文件的上层文件。
在一种可能的实施方式中,如图2所示,本申请提供了一种代码物料的存储装置200,所述装置包括:
确定模块201,用于根据用户存储请求携带的存储信息,确定待存储代码物料的主文件,其中,所述待存储代码物料为复制到已有代码中可以直接实现出对应功能的代码片段;
解析模块202,用于解析所述主文件,得到待存储代码物料的文件类型和运行参数;
生成模块203,用于基于所述文件类型和所述运行参数生成属性标签;
存储模块204,用于将所述属性标签与所述待存储代码物料进行绑定,将绑定属性标签的待存储代码物料上传服务器端进行存储。
在一种可能的实时方式中,如图3所示,本申请实施例提供了一种电子设备300,包括存储器310、处理器320及存储在存储器310上并可在处理器320上运行的计算机程序311,处理器320执行计算机程序311时,实现:根据用户存储请求携带的存储信息,确定待存储代码物料的主文件,其中,所述待存储代码物料为复制到已有代码中可以直接实现出对应功能的代码片段;解析所述主文件,得到待存储代码物料的文件类型和运行参数;根据所述文件类型和所述运行参数生成属性标签;将所述属性标签与所述待存储代码物料进行绑定,将绑定属性标签的待存储代码物料上传服务器端进行存储,完成代码物料的存储。
在一种可能的实时方式中,如图4所示,本申请实施例提供了一种计算机可读存储介质400,其上存储有计算机程序311,该计算机程序311被处理器执行时实现:根据用户存储请求携带的存储信息,确定待存储代码物料的主文件,其中,所述待存储代码物料为复制到已有代码中可以直接实现出对应功能的代码片段;解析所述主文件,得到待存储代码物料的文件类型和运行参数;根据所述文件类型和所述运行参数生成属性标签;将所述属性标签与所述待存储代码物料进行绑定,将绑定属性标签的待存储代码物料上传服务器端进行存储。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种代码物料的存储方法,其特征在于,所述方法包括:
根据用户存储请求携带的存储信息,确定待存储代码物料的主文件,其中,所述待存储代码物料为复制到已有代码中可以直接实现出对应功能的代码片段;
解析所述主文件,得到待存储代码物料的文件类型和运行参数;
基于所述文件类型和所述运行参数生成属性标签;
将所述属性标签与所述待存储代码物料进行绑定,将绑定属性标签的待存储代码物料上传服务器端进行存储。
2.根据权利要求1所述的方法,其特征在于,所述根据用户存储请求携带的存储信息,确定待存储代码物料的主文件的步骤,包括:
根据用户存储请求携带的存储信息,获取所述待存储代码物料的总文件夹,其中,所述总文件夹内包括样式文件和脚本文件;
基于所述样式文件和所述脚本文件的文件类型选择出所述待存储代码物料的脚本文件;
将所述待存储代码物料的脚本文件作为所述待存储代码物料的主文件。
3.根据权利要求2所述的方法,其特征在于,所述根据用户存储请求携带的存储信息,获取所述待存储代码物料的总文件夹的步骤,包括:
若所述用户存储请求的请求类型为用户通过触碰屏幕产生的电信号,则根据所述电信号确定待存储代码物料,获取所述待存储代码物料的总文件夹。
4.根据权利要求2所述的方法,其特征在于,所述根据用户存储请求携带的存储信息,获取所述待存储代码物料的总文件夹的步骤,还包括:
若所述用户存储请求的请求类型为通过用户的功能描述获取的文本信息,则基于所述文本信息确定所述待存储代码物料的总文件夹,获取所述待存储代码物料的样式文件和脚本文件,其中,所述代码物料具有功能标签。
5.根据权利要求4所述的方法,其特征在于,所述基于所述文本信息确定所述待存储代码物料的总文件夹的步骤,包括:
根据预设筛选规则对所述文本信息进行筛选,获取所述文本信息内的关键词信息;
基于所述关键词信息匹配所有代码物料的功能标签,确定所述待存储代码物料的总文件夹。
6.根据权利要求5所述的方法,其特征在于,所述基于所述关键词信息匹配所有代码物料的功能标签,确定所述待存储代码物料的总文件夹的步骤,包括:
基于所述功能标签为所述待存储代码物料的总文件夹进行分类,得到类别信息;
根据所述类别信息与所述关键词信息进行第一次匹配,得到与所述关键词信息匹配度最高的类别信息;
获取与所述关键词信息匹配度最高的类别信息对应的初始代码物料;
基于所述关键词信息在所述初始代码物料中确定所述待存储代码物料的总文件夹。
7.根据权利要求1所述的方法,其特征在于,所述待存储代码物料的总文件夹为所述待存储代码物料的主文件的父级文件。
8.一种代码物料的存储装置,其特征在于,所述装置包括:
确定模块,用于根据用户存储请求携带的存储信息,确定待存储代码物料的主文件,其中,所述待存储代码物料为复制到已有代码中能够直接实现出对应功能的代码片段;
解析模块,用于解析所述主文件,得到待存储代码物料的文件类型和运行参数;
生成模块,用于基于所述文件类型和所述运行参数生成属性标签;
存储模块,用于将所述属性标签与所述待存储代码物料进行绑定,将绑定属性标签的待存储代码物料上传服务器端进行存储。
9.一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至7中任一项所述的代码物料的存储方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的代码物料的存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111372905.8A CN113822014B (zh) | 2021-11-19 | 2021-11-19 | 一种代码物料的存储方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111372905.8A CN113822014B (zh) | 2021-11-19 | 2021-11-19 | 一种代码物料的存储方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113822014A true CN113822014A (zh) | 2021-12-21 |
CN113822014B CN113822014B (zh) | 2022-03-29 |
Family
ID=78919288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111372905.8A Active CN113822014B (zh) | 2021-11-19 | 2021-11-19 | 一种代码物料的存储方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113822014B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100077378A1 (en) * | 2008-09-25 | 2010-03-25 | International Business Machines Corporation | Virtualised Application Libraries |
CN109344230A (zh) * | 2018-10-31 | 2019-02-15 | 任志颖 | 代码库文件生成、代码搜索、联结、优化以及移植方法 |
CN112463149A (zh) * | 2020-12-07 | 2021-03-09 | 中国科学院软件研究所 | 一种面向软件定义卫星的可复用代码库构建方法与装置 |
CN113157964A (zh) * | 2021-03-10 | 2021-07-23 | 深圳市明源云科技有限公司 | 一种语音搜索数据集的方法、装置及电子设备 |
-
2021
- 2021-11-19 CN CN202111372905.8A patent/CN113822014B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100077378A1 (en) * | 2008-09-25 | 2010-03-25 | International Business Machines Corporation | Virtualised Application Libraries |
CN109344230A (zh) * | 2018-10-31 | 2019-02-15 | 任志颖 | 代码库文件生成、代码搜索、联结、优化以及移植方法 |
CN112463149A (zh) * | 2020-12-07 | 2021-03-09 | 中国科学院软件研究所 | 一种面向软件定义卫星的可复用代码库构建方法与装置 |
CN113157964A (zh) * | 2021-03-10 | 2021-07-23 | 深圳市明源云科技有限公司 | 一种语音搜索数据集的方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113822014B (zh) | 2022-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755387B1 (en) | Updating code of an app feature based on a value of a query feature | |
US8589876B1 (en) | Detection of central-registry events influencing dynamic pointers and app feature dependencies | |
US20130318514A1 (en) | Map generator for representing interrelationships between app features forged by dynamic pointers | |
US9325633B2 (en) | Cache control for web application resources | |
AU2005225140A1 (en) | File formats, methods, and computer program products for representing documents | |
US11030163B2 (en) | System for tracking and displaying changes in a set of related electronic documents | |
CN109241003B (zh) | 文件管理方法和装置 | |
CN107515875A (zh) | 数据查询方法及装置 | |
CN113822014B (zh) | 一种代码物料的存储方法、装置、电子设备及存储介质 | |
CN109542890B (zh) | 数据修改方法、装置、计算机设备及存储介质 | |
CN112069236A (zh) | 关联文件的展示方法、装置、设备及存储介质 | |
CN111680072A (zh) | 基于社交信息数据的划分系统及方法 | |
CN111310088A (zh) | 一种页面渲染方法及装置 | |
GB2556080A (en) | Reducing data sent from a user device to a server | |
CN112558958B (zh) | 基于模板的推送内容生成方法、装置及计算机设备 | |
JP2016018279A (ja) | 文書ファイル検索プログラム、文書ファイル検索装置、文書ファイル検索方法、文書情報出力プログラム、文書情報出力装置及び文書情報出力方法 | |
CN111651531A (zh) | 数据导入方法、装置、设备及计算机存储介质 | |
CN112752165A (zh) | 字幕处理方法、装置、服务器及计算机可读存储介质 | |
CN113128804A (zh) | 一种数据治理方法、装置、电子设备和可读存储介质 | |
CN117539837B (zh) | 模型文件的存储方法、装置、电子设备及可读存储介质 | |
CN117112497B (zh) | 一种档案数据存储方法、系统及存储介质 | |
CN108228897B (zh) | 文件生成方法以及电子设备 | |
US12061598B2 (en) | File management apparatus and non-transitory computer readable medium | |
US20230326225A1 (en) | System and method for machine learning document partitioning | |
CN115599269A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |