《代码文件的优化方法、系统和服务器.pdf》由会员分享,可在线阅读,更多相关《代码文件的优化方法、系统和服务器.pdf(16页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104063208A43申请公布日20140924CN104063208A21申请号201310092867X22申请日20130321G06F9/4420060171申请人北京百度网讯科技有限公司地址100085北京市海淀区上地十街10号百度大厦2层72发明人白旭雷凯华74专利代理机构北京清亦华知识产权代理事务所普通合伙11201代理人宋合成54发明名称代码文件的优化方法、系统和服务器57摘要本发明提出一种代码文件的优化方法、系统和服务器,其中该方法包括以下步骤服务器获取代码文件;服务器对代码文件进行分析以获取代码文件中的多个变量和/或函数及对应的重复频率,并根据重复频率筛。
2、选出满足预设值的部分变量和/或函数作为待替换内容;服务器生成每个待替换内容对应的标识符,并使用标识符分别替换待替换内容;以及服务器将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端进行发布。根据本发明实施例方法,可以缩短代码文件中变量和/或者函数的长度,减少了服务器和客户端之间代码的传输量,优化了代码结构,同时提高代码的执行效率。51INTCL权利要求书2页说明书9页附图4页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书9页附图4页10申请公布号CN104063208ACN104063208A1/2页21一种代码文件的优化。
3、方法,其特征在于,包括以下步骤服务器获取代码文件;所述服务器对所述代码文件进行分析以获取所述代码文件中的多个变量和/或函数及对应的重复频率,并根据所述重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容;所述服务器生成每个所述待替换内容对应的标识符,并使用所述标识符分别替换所述待替换内容;以及所述服务器将每个所述待替换内容与所述标识符之间的对应关系作为查询文件,并将所述查询文件和替换之后的所述代码文件向至少一个客户端进行发布。2根据权利要求1所述的方法,其特征在于,还包括所述客户端缓存所述查询文件和所述待替换内容;以及当所述客户端运行所述代码文件时,所述客户端根据所述标识符在所述查询文件。
4、中查询并从所述缓存中获取对应的所述待替换内容。3根据权利要求1或2所述的方法,其特征在于,所述服务器对所述代码文件进行分析以获取所述代码文件中的多个变量和/或函数及对应的重复频率,进一步包括所述服务器获取所述代码文件中前后都存在空格的多个字符串;所述服务器根据关键字白名单对所述多个字符串进行过滤以获取多个所述变量和/或函数,其中所述关键字白名单包括所述代码文件对应的代码语言所使用的多个关键字;以及所述服务器统计每个所述变量和/或函数的所述重复频率。4根据权利要求1所述的方法,其特征在于,所述服务器生成每个所述待替换内容对应的标识符,进一步包括所述服务器对所述待替换内容的名称进行缩短处理,并检测。
5、缩短处理之后的所述待替换内容的名称的唯一性,以及将唯一的缩短处理之后的所述待替换内容的名称作为所述标识符。5根据权利要求14任一项所述的方法,其特征在于,所述代码文件包括JAVASCRIPT代码文件。6一种代码文件的优化系统,其特征在于,包括服务器和客户端,其中,所述服务器,用于获取代码文件,以及对所述代码文件进行分析以获取所述代码文件中的多个变量和/或函数及对应的重复频率,并根据所述重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容,以及生成每个所述待替换内容对应的标识符,并使用所述标识符分别替换所述待替换内容,以及将每个所述待替换内容与所述标识符之间的对应关系作为查询文件,并将所述。
6、查询文件和替换之后的所述代码文件向至少一个所述客户端进行发布。7根据权利要求6所述的系统,其特征在于,所述客户端用于缓存所述查询文件和所述待替换内容,并当所述客户端运行所述代码文件时,根据所述标识符在所述查询文件中查询并从所述缓存中获取对应的所述待替换内容。8根据权利要求6或7所述的系统,其特征在于,所述服务器还用于获取所述代码文件中前后都存在空格的多个字符串,并根据关键字白名单对所述多个权利要求书CN104063208A2/2页3字符串进行过滤以获取多个所述变量和/或函数,其中所述关键字白名单包括所述代码文件对应的代码语言所使用的多个关键字,以及统计每个所述变量和/或函数的所述重复频率。9根。
7、据权利要求6所述的系统,其特征在于,所述服务器还用于对所述待替换内容的名称进行缩短处理,并检测缩短处理之后的所述待替换内容的名称的唯一性,以及将唯一的缩短处理之后的所述待替换内容的名称作为所述标识符。10根据权利要求69任一项所述的方法,其特征在于,所述代码文件包括JAVASCRIPT代码文件。11一种服务器,其特征在于,包括获取模块,用于获取代码文件;分析模块,用于对所述代码文件进行分析以获取所述代码文件中的多个变量和/或函数及对应的重复频率;筛选模块,用于根据所述重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容;生成模块,用于生成每个所述待替换内容对应的标识符;替换模块,用于使用。
8、所述标识符分别替换所述待替换内容;以及发布模块,用于将每个所述待替换内容与所述标识符之间的对应关系作为查询文件,并将所述查询文件和替换之后的所述代码文件向至少一个客户端进行发布。12根据权利要求11或2所述的服务器,其特征在于,所述分析模块包括获取单元,用于获取所述代码文件中前后都存在空格的多个字符串;过滤单元,用于根据关键字白名单对所述多个字符串进行过滤以获取多个所述变量和/或函数,其中所述关键字白名单包括所述代码文件对应的代码语言所使用的多个关键字;以及统计单元,用于统计每个所述变量和/或函数的所述重复频率。13根据权利要求11所述的服务器,其特征在于,所述生成模块包括处理单元,用于对所述。
9、待替换内容的名称进行缩短处理;检测单元,用于检测缩短处理之后的所述待替换内容的名称的唯一性,并将唯一的缩短处理之后的所述待替换内容的名称作为所述标识符。14根据权利要求1113任一项所述的服务器,其特征在于,所述代码文件包括JAVASCRIPT代码文件。权利要求书CN104063208A1/9页4代码文件的优化方法、系统和服务器技术领域0001本发明涉及计算机技术领域,尤其涉及一种代码文件的优化方法、系统和服务器。背景技术0002代码文件特别是作为适应动态网页制作需要的编程语言JAVASCRIPT代码文件等在运行时,需要重复调用很多函数和变量,造成编写的代码文件过长,同时增加了代码文件的传输量。
10、,运行效率低。0003目前,主要采用对代码文件进行压缩的方法实现代码文件的优化,存在的问题是对代码文件进行压缩只针对上线前的操作有好处,对本身的代码结构没有实质作用,代码的可读性低,同时代码的执行效率低。发明内容0004本发明旨在至少解决上述技术问题之一。0005为此,本发明的第一个目的在于提出一种代码文件的优化方法。0006本发明的第二个目的在于提出一种代码文件的优化系统。0007本发明的第三个目的在于提出一种服务器。0008为了实现上述目的,本发明第一方面实施例的代码文件的优化方法包括以下步骤服务器获取代码文件;所述服务器对所述代码文件进行分析以获取所述代码文件中的多个变量和/或函数及对应。
11、的重复频率,并根据所述重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容;所述服务器生成每个所述待替换内容对应的标识符,并使用所述标识符分别替换所述待替换内容;以及所述服务器将每个所述待替换内容与所述标识符之间的对应关系作为查询文件,并将所述查询文件和替换之后的所述代码文件向至少一个客户端进行发布。0009根据本发明实施例的代码文件的优化方法,通过服务器对代码文件进行分析获取代码文件中变量和/或函数的重复频率,并根据重复频率筛选出满足预设值的变量和/或函数作为待替换内容,并生成标识符代替待替换内容,一方面可以缩短代码文件特别是JAVASCRIPT代码文件中变量和/或者函数的长度,减少了。
12、服务器和客户端之间代码的传输量,优化了代码结构,同时提高代码的执行效率,另一方面可以将代码文件中重复频率高的代码提供给代码开发者查看,为其主动优化代码提供依据。0010为了实现上述目的,本发明第二方面实施例的代码文件的优化系统,包括服务器和客户端,其中,所述服务器,用于获取代码文件,以及对所述代码文件进行分析以获取所述代码文件中的多个变量和/或函数及对应的重复频率,并根据所述重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容,以及生成每个所述待替换内容对应的标识符,并使用所述标识符分别替换所述待替换内容,以及将每个所述待替换内容与所述标识符之间的对应关系作为查询文件,并将所述查询文件和。
13、替换之后的所述代码文件向至少一个所述客户端进行发布。说明书CN104063208A2/9页50011根据本发明实施例的代码文件的优化系统,通过服务器对代码文件进行分析获取代码文件中变量和/或函数的重复频率,并根据重复频率筛选出满足预设值的变量和/或函数作为待替换内容,并生成标识符代替待替换内容,一方面可以缩短代码文件特别是JAVASCRIPT代码文件中变量和/或者函数的长度,减少了服务器和客户端之间代码的传输量,优化了代码结构,同时提高代码的执行效率,另一方面可以将代码文件中重复频率高的代码提供给代码开发者查看,为其主动优化代码提供依据。0012为了实现上述目的,本发明第三方面实施例的服务器,。
14、包括获取模块,用于获取代码文件;分析模块,用于对所述代码文件进行分析以获取所述代码文件中的多个变量和/或函数及对应的重复频率;筛选模块,用于根据所述重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容;生成模块,用于生成每个所述待替换内容对应的标识符;替换模块,用于使用所述标识符分别替换所述待替换内容;以及发布模块,用于将每个所述待替换内容与所述标识符之间的对应关系作为查询文件,并将所述查询文件和替换之后的所述代码文件向至少一个客户端进行发布。0013根据本发明实施例的服务器,通过对代码文件进行分析获取代码文件中变量和/或函数的重复频率,并根据重复频率筛选出满足预设值的变量和/或函数作为。
15、待替换内容,并生成标识符代替待替换内容,一方面可以缩短代码文件特别是JAVASCRIPT代码文件中变量和/或者函数的长度,减少了服务器和客户端之间代码的传输量,优化了代码结构,同时提高代码的执行效率,另一方面可以将代码文件中重复频率高的代码提供给代码开发者查看,为其主动优化代码提供依据。0014本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。附图说明0015本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,0016图1是根据本发明一个实施例的代码文件的优化方法的流程图;0017图2是根据本发明一个。
16、具体实施例的代码文件的优化方法的流程图;0018图3是根据本发明另一个具体实施例的代码文件的优化方法的流程图;0019图4是根据本发明一个实施例的代码文件的优化系统的结构示意图;0020图5是根据本发明一个实施例的服务器的结构示意图;0021图6是根据本发明一个实施例的分析模块120的结构示意图;以及0022图7是根据本发明一个实施例的生成模块140的结构示意图。具体实施方式0023下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的。
17、限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。说明书CN104063208A3/9页60024在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含。
18、义是两个或两个以上。0025流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。0026下面参考附图描述根据本发明实施例的代码文件的优化方法、系统和服务器。0027一种代码文件的优化方法,包括以下步骤服务器获取代码文件;服务器对代码文件进行分析以获取代码文件中的多个变量和/或函数及对应的重复频率,并根据重复。
19、频率筛选出满足预设值的部分变量和/或函数作为待替换内容;服务器生成每个待替换内容对应的标识符,并使用标识符分别替换待替换内容;以及服务器将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端进行发布。0028图1是根据本发明一个实施例的代码文件的优化方法的流程图。0029如图1所示,代码文件的优化方法包括以下步骤。0030步骤S101,服务器获取代码文件。0031在本发明的一个实施例中,代码文件包括JAVASCRIPT代码文件。0032步骤S102,服务器对代码文件进行分析以获取代码文件中的多个变量和/或函数及对应的重复频率,并根据重复频率筛选出满。
20、足预设值的部分变量和/或函数作为待替换内容。0033具体地,服务器对代码文件中每个变量和/或函数的出现的频率即重复频率进行分析统计,并根据统计的结果生成统计词表格,例如,统计词表格格式可以为,0034WORDCOUNT0035FREQUENCY1000036可以理解为,WORD表示代码文件中变量和/或函数的名称,FREQUENCY表示代码文件中变量和/或函数名称出现的次数,即变量COUNT出现的频率为100次。服务器可以设置筛选重复频率的预设值,或者服务器可以根据用户指令设置筛选重复频率的预设值,服务器根据预设值判断每个变量和/或函数出现的频率,如果变量或函数出现的频率小于预设值,服务器将该变。
21、量和/或函数从统计词表格中删除。0037步骤S103,服务器生成每个待替换内容对应的标识符,并使用标识符分别替换待替换内容。0038在本发明的一个实施例中,服务器对待替换内容的名称进行缩短处理,并检测缩短处理之后的待替换内容的名称的唯一性,以及将唯一的缩短处理之后的待替换内容的名称作为标识符。具体地,服务器首先根据变量和/或函数的名称进行缩短处理,例如将变量说明书CN104063208A4/9页7COUNT缩短为CO,然后检测缩短处理之后的名称的唯一性,例如变量CONFIRM缩短处理后名称同样为CO,为了保证变量名称的唯一性,服务器可以将变量CONFIRM的名称缩短为CON或者CO_F等。服务。
22、器可以根据缩短处理后的待替换内容的名称作为待替换内容的唯一标识符,并用唯一的标识码代替对应的待替换内容,由此可以缩短代码文件的长度,提高代码的执行效率。0039步骤S104,服务器将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端进行发布。0040根据本发明实施例的代码文件的优化方法,通过服务器对代码文件进行分析获取代码文件中变量和/或函数的重复频率,并根据重复频率筛选出满足预设值的变量和/或函数作为待替换内容,并生成标识符代替待替换内容,一方面可以缩短代码文件特别是JAVASCRIPT代码文件中变量和/或者函数的长度,减少了服务器和客户端之间。
23、代码的传输量,优化了代码结构,同时提高代码的执行效率,另一方面可以将代码文件中重复频率高的代码提供给代码开发者查看,为其主动优化代码提供依据。0041图2是根据本发明一个具体实施例的代码文件的优化方法的流程图。0042如图2所示,代码文件的优化方法包括以下步骤。0043步骤S201,服务器获取代码文件。0044在本发明的一个实施例中,代码文件包括JAVASCRIPT代码文件。0045步骤S202,服务器对代码文件进行分析以获取代码文件中的多个变量和/或函数及对应的重复频率,并根据重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容。0046具体地,服务器对代码文件中每个变量和/或函数的出。
24、现的频率即重复频率进行分析统计,并根据统计的结果生成统计词表格,例如,统计词表格格式可以为,0047WORDCOUNT0048FREQUENCY1000049可以理解为,WORD表示代码文件中变量和/或函数的名称,FREQUENCY表示代码文件中变量和/或函数名称出现的次数,即变量COUNT出现的频率为100次。服务器可以设置筛选重复频率的预设值,或者服务器可以根据用户指令设置筛选重复频率的预设值,服务器根据预设值判断每个变量和/或函数出现的频率,如果变量或函数出现的频率小于预设值,服务器将该变量和/或函数从统计词表格中删除。0050步骤S203,服务器生成每个待替换内容对应的标识符,并使用标。
25、识符分别替换待替换内容。0051在本发明的一个实施例中,服务器对待替换内容的名称进行缩短处理,并检测缩短处理之后的待替换内容的名称的唯一性,以及将唯一的缩短处理之后的待替换内容的名称作为标识符。具体地,服务器首先根据变量和/或函数的名称进行缩短处理,例如将变量COUNT缩短为CO,然后检测缩短处理之后的名称的唯一性,例如变量CONFIRM缩短处理后名称同样为CO,为了保证变量名称的唯一性,服务器可以将变量CONFIRM的名称缩短为CON或者CO_F等。服务器可以根据缩短处理后的待替换内容的名称作为待替换内容的唯一标识符,并用唯一的标识码代替对应的待替换内容,由此可以缩短代码文件的长度,提高代码。
26、的执行效率。说明书CN104063208A5/9页80052步骤S204,服务器将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端进行发布。0053步骤S205,客户端缓存查询文件和待替换内容。0054步骤S206,当客户端运行代码文件时,客户端根据标识符在查询文件中查询并从缓存中获取对应的待替换内容。0055根据本发明实施例的代码文件的优化方法,客户端运行代码文件时根据标识符在查询文件中查询对应的待替换文件,可以提高代码文件特别是JAVASCRIPT代码文件的运行效率,提高了代码的可读性,同时提升了用户体验。0056图3是根据本发明另一个具体。
27、实施例的代码文件的优化方法的流程图。0057如图3所示,代码文件的优化方法包括以下步骤。0058步骤S301,服务器获取代码文件。0059在本发明的一个实施例中,代码文件包括JAVASCRIPT代码文件。0060步骤S302,服务器获取代码文件中前后都存在空格的多个字符串。0061步骤S303,服务器根据关键字白名单对多个字符串进行过滤以获取多个变量和/或函数,其中关键字白名单包括代码文件对应的代码语言所使用的多个关键字。0062具体地,服务器检测每个字符串是否在关键词白名单中存在,关键词白名单包括代码文件例如JAVASCRIPT代码文件中的多个关键词,例如,VAR、FOR、RETURN等。如。
28、果字符串在关键词白名单中存在,服务器不保存该字符串。服务器将过滤后的变量和/或函数保存到统计词表格中。0063步骤S304,服务器统计每个所述变量和/或函数的所述重复频率。0064具体地,服务器对代码文件中每个变量和/或函数的出现的频率即重复频率进行分析统计,并根据统计的结果生成统计词表格,例如,统计词表格格式可以为,0065WORDCOUNT0066FREQUENCY1000067可以理解为,WORD表示代码文件中变量和/或函数的名称,FREQUENCY表示代码文件中变量和/或函数名称出现的次数,即变量COUNT出现的频率为100次。0068步骤S305,服务器根据重复频率筛选出满足预设值的。
29、部分变量和/或函数作为待替换内容。0069具体地,服务器可以设置筛选重复频率的预设值,或者服务器可以根据用户指令设置筛选重复频率的预设值,服务器根据预设值判断每个变量和/或函数出现的频率,如果变量和/或函数出现的频率小于预设值,服务器将该变量和/或函数从统计词表格中删除。0070步骤S306,服务器生成每个待替换内容对应的标识符,并使用标识符分别替换待替换内容。0071在本发明的一个实施例中,服务器对待替换内容的名称进行缩短处理,并检测缩短处理之后的待替换内容的名称的唯一性,以及将唯一的缩短处理之后的待替换内容的名称作为标识符。具体地,服务器首先根据变量和/或函数的名称进行缩短处理,例如将变量。
30、COUNT缩短为CO,然后检测缩短处理之后的名称的唯一性,例如变量CONFIRM缩短处理后名称同样为CO,为了保证变量名称的唯一性,服务器可以将变量CONFIRM的名称说明书CN104063208A6/9页9缩短为CON或者CO_F等。服务器可以根据缩短处理后的待替换内容的名称作为待替换内容的唯一标识符,并用唯一的标识码代替对应的待替换内容,由此可以缩短代码文件的长度,提高代码的执行效率。0072步骤S307,服务器将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端进行发布。0073步骤S308,客户端缓存查询文件和待替换内容。0074步骤S3。
31、09,当客户端运行代码文件时,客户端根据标识符在查询文件中查询并从缓存中获取对应的待替换内容。0075根据本发明实施例的代码文件的优化方法,服务器通过获取代码文件中前后都存在空格的多个字符串,并根据关键字白名单对多个字符串进行过滤以获取多个变量和/或函数,可以避免服务器对代码文件特别是JAVASCRIPT代码文件中的关键词进行统计,同时避免了服务器资源的浪费。0076为了实现上述实施例,本发明还提出一种代码文件的优化系统。0077一种代码文件的优化的系统,包括服务器和客户端,其中,服务器,用于获取代码文件,以及对代码文件进行分析以获取代码文件中的多个变量和/或函数及对应的重复频率,并根据重复频。
32、率筛选出满足预设值的部分变量和/或函数作为待替换内容,以及生成每个待替换内容对应的标识符,并使用标识符分别替换待替换内容,以及将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端进行发布。0078图4是根据本发明一个实施例的代码文件的优化系统的结构示意图。0079如图4所示,代码文件的优化系统包括服务器10和客户端20。0080具体地,服务器10用于获取代码文件,以及对代码文件进行分析以获取代码文件中的多个变量和/或函数及对应的重复频率,并根据重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容,以及生成每个待替换内容对应的标识符,并使用标。
33、识符分别替换待替换内容,以及将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端20进行发布。0081更具体地,服务器10获取代码文件后,服务器10对代码文件中每个变量和/或函数的出现的频率即重复频率进行分析统计,并根据统计的结果生成统计词表格,例如,统计词表格格式可以为,0082WORDCOUNT0083FREQUENCY1000084可以理解为,WORD表示代码文件中变量和/或函数的名称,FREQUENCY表示代码文件中变量和/或函数名称出现的次数,即变量COUNT出现的频率为100次。服务器10可以设置筛选重复频率的预设值,或者服务器10可。
34、以根据用户指令设置筛选重复频率的预设值,服务器10根据预设值判断每个变量和/或函数出现的频率,如果变量或函数出现的频率小于预设值,服务器10将该变量和/或函数从统计词表格中删除。0085在本发明的一个实施例中,代码文件包括JAVASCRIPT代码文件。0086在本发明的一个实施例中,服务器10对待替换内容的名称进行缩短处理,并检测缩短处理之后的待替换内容的名称的唯一性,以及将唯一的缩短处理之后的待替换内容的说明书CN104063208A7/9页10名称作为标识符。具体地,服务器10首先根据变量和/或函数的名称进行缩短处理,例如将变量COUNT缩短为CO,然后检测缩短处理之后的名称的唯一性,例如。
35、变量CONFIRM缩短处理后名称同样为CO,为了保证变量名称的唯一性,服务器10可以将变量CONFIRM的名称缩短为CON或者CO_F等。服务器10可以根据缩短处理后的待替换内容的名称作为待替换内容的唯一标识符,并用唯一的标识码代替对应的待替换内容,由此可以缩短代码文件的长度,提高代码的执行效率。0087根据本发明实施例的代码文件的优化系统,通过服务器对代码文件进行分析获取代码文件中变量和/或函数的重复频率,并根据重复频率筛选出满足预设值的变量和/或函数作为待替换内容,并生成标识符代替待替换内容,一方面可以缩短代码文件特别是JAVASCRIPT代码文件中变量和/或者函数的长度,减少了服务器和客。
36、户端之间代码的传输量,优化了代码结构,同时提高代码的执行效率,另一方面可以将代码文件中重复频率高的代码提供给代码开发者查看,为其主动优化代码提供依据。0088在本发明的一个实施例中,客户端20用于缓存查询文件和待替换内容,并当客户端20运行代码文件时,根据标识符在查询文件中查询并从缓存中获取对应的待替换内容。由此,可以提高代码文件特别是JAVASCRIPT代码文件的运行效率,提高了代码的可读性,同时提升了用户体验。0089在本发明的一个实施例中,服务器10还用于获取代码文件中前后都存在空格的多个字符串,并根据关键字白名单对多个字符串进行过滤以获取多个变量和/或函数,其中关键字白名单包括代码文件。
37、对应的代码语言所使用的多个关键字,以及统计每个变量和/或函数的重复频率。具体地,首先,服务器10获取代码文件中前面存在空格并且后面存在空格或者换行符的字符串。然后,服务器10检测每个字符串是否在关键词白名单中存在,关键词白名单包括JAVASCRIPT代码的多个关键词,例如,VAR、FOR、RETURN等。如果字符串在关键词白名单中存在,服务器10不保存该字符串。服务器10将过滤后的变量和/或函数保存到统计词表格中。由此,可以避免服务器对JAVASCRIPT代码中的关键词进行统计,同时避免了服务器资源的浪费。0090为了实现上述实施例,本发明还提出一种服务器。0091一种服务器,包括获取模块,用。
38、于获取代码文件;分析模块,用于对代码文件进行分析以获取代码文件中的多个变量和/或函数及对应的重复频率;筛选模块,用于根据重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容;生成模块,用于生成每个待替换内容对应的标识符;替换模块,用于使用标识符分别替换待替换内容;以及发布模块,用于将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端进行发布。0092图5是根据本发明一个实施例的服务器的结构示意图。0093如图5所示,服务器包括获取模块110、分析模块120、筛选模块130、生成模块140、替换模块150和发布模块160。0094具体地,获取。
39、模块110用于获取代码文件。在本发明的一个实施例中,代码文件包括JAVASCRIPT代码文件。0095分析模块120用于对获取模块110获取的代码文件进行分析以获取代码文件中的多个变量和/或函数及对应的重复频率。更具体地,分析模块120对代码文件中每个变量说明书CN104063208A108/9页11和/或函数的出现的频率即重复频率进行分析统计,并根据统计的结果生成统计词表格,例如,统计词表格格式可以为,0096WORDCOUNT0097FREQUENCY1000098可以理解为,WORD表示代码文件中变量和/或函数的名称,FREQUENCY表示代码文件中变量和/或函数名称出现的次数,即变量C。
40、OUNT出现的频率为100次。0099筛选模块130用于根据重复频率筛选出满足预设值的部分变量和/或函数作为待替换内容。更具体地,筛选模块130可以设置筛选重复频率的预设值,或者筛选模块130可以根据用户指令设置筛选重复频率的预设值,筛选模块130根据预设值判断每个变量和/或函数出现的频率,如果变量或函数出现的频率小于预设值,筛选模块130将该变量和/或函数从统计词表格中删除。0100生成模块140用于生成每个待替换内容对应的标识符。0101替换模块150用于使用标识符分别替换待替换内容。更具体地,替换模块150可以根据生成模块140缩短处理后的待替换内容的名称作为待替换内容的唯一标识符,并用。
41、唯一的标识码代替对应的待替换内容。0102发布模块160用于将每个待替换内容与标识符之间的对应关系作为查询文件,并将查询文件和替换之后的代码文件向至少一个客户端进行发布。0103根据本发明实施例的服务器,通过对代码文件进行分析获取代码文件中变量和/或函数的重复频率,并根据重复频率筛选出满足预设值的变量和/或函数作为待替换内容,并生成标识符代替待替换内容,一方面可以缩短代码文件特别是JAVASCRIPT代码文件中变量和/或者函数的长度,减少了服务器和客户端之间代码的传输量,优化了代码结构,同时提高代码的执行效率,另一方面可以将代码文件中重复频率高的代码提供给代码开发者查看,为其主动优化代码提供依。
42、据。0104图6是根据本发明一个实施例的分析模块120的结构示意图。0105如图6所示,分析模块120包括获取单元121、过滤单元122和统计单元123。0106具体地,获取单元121用于获取代码文件中前后都存在空格的多个字符串。0107过滤单元122用于根据关键字白名单对获取单元121获取的多个字符串进行过滤以获取多个变量和/或函数,其中关键字白名单包括代码文件对应的代码语言所使用的多个关键字。更具体地,过滤单元122检测每个字符串是否在关键词白名单中存在,关键词白名单包括JAVASCRIPT代码的多个关键词,例如,VAR、FOR、RETURN等。如果字符串在关键词白名单中存在,过滤单元12。
43、2不保存该字符串。过滤单元122将过滤后的变量和/或函数保存到统计词表格中。0108统计单元123用于统计过滤单元122过滤的每个变量和/或函数的重复频率。更具体地,统计单元123对代码文件中每个变量和/或函数的出现的频率即重复频率进行分析统计,并根据统计的结果生成统计词表格,例如,统计词表格格式可以为,0109WORDCOUNT0110FREQUENCY1000111可以理解为,WORD表示代码文件中变量和/或函数的名称,FREQUENCY表示代码文件中变量和/或函数名称出现的次数,即变量COUNT出现的频率为100次。说明书CN104063208A119/9页120112根据本发明实施例的。
44、服务器,通过获取代码文件中前后都存在空格的多个字符串,并根据关键字白名单对多个字符串进行过滤以获取多个变量和/或函数,可以避免服务器对代码文件特别是JAVASCRIPT代码文件中的关键词进行统计,同时避免了服务器资源的浪费。0113图7是根据本发明一个实施例的生成模块140的结构示意图。0114如图7所示,生成模块140包括处理单元141和检测单元142。0115具体地,处理单元141用于对待替换内容的名称进行缩短处理。更具体地,处理单元141首先根据变量和/或函数的名称进行缩短处理,例如将变量COUNT缩短为CO。0116检测单元142用于检测处理单元141缩短处理之后的待替换内容的名称的唯。
45、一性,并将唯一的缩短处理之后的待替换内容的名称作为标识符。更具体地,检测单元142检测缩短处理之后的名称的唯一性,例如变量CONFIRM缩短处理后名称同样为CO,为了保证变量名称的唯一性,检测单元142检测到缺乏唯一性之后通知处理单元141将变量CONFIRM的名称缩短为CON或者CO_F等。0117根据本发明实施例的服务器,可以缩短代码文件的长度,提高代码的执行效率。0118应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领。
46、域公知的下列技术中的任一项或他们的组合来实现具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。0119在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。0120尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。说明书CN104063208A121/4页13图1说明书附图CN104063208A132/4页14图2说明书附图CN104063208A143/4页15图3图4说明书附图CN104063208A154/4页16图5图6图7说明书附图CN104063208A16。