CN107704236A - 软件开发系统中管理公用函数的方法和装置 - Google Patents
软件开发系统中管理公用函数的方法和装置 Download PDFInfo
- Publication number
- CN107704236A CN107704236A CN201710916973.3A CN201710916973A CN107704236A CN 107704236 A CN107704236 A CN 107704236A CN 201710916973 A CN201710916973 A CN 201710916973A CN 107704236 A CN107704236 A CN 107704236A
- Authority
- CN
- China
- Prior art keywords
- public function
- identification information
- circular
- function
- list
- 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
- 238000000034 method Methods 0.000 title claims abstract description 297
- 238000012545 processing Methods 0.000 claims abstract description 11
- 230000006870 function Effects 0.000 description 186
- 238000011161 development Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 241000238876 Acari Species 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种软件开发系统中管理公用函数的方法和装置。所述方法包括:获取每个公用函数对应的至少两个方法,其中所述至少两个方法均能实现该公用函数的功能;对同一公用函数对应的所述至少两个方法进行排序处理,得到编号后的方法;对所述编号后的方法进行循环链表的建立,得到所述公用函数对应的循环链表,其中所述循环列表中包括各方法的标识信息;输出所述公用函数对应的循环链表。
Description
技术领域
本发明涉及信息处理领域,尤指一种软件开发系统中管理公用函数的方法和装置。
背景技术
在云海中有很多模块,其中有一个ibase模块(基本模块)提供了让其他模块调用的公用函数。当基本模块的某个公用函数改变之后,没有通知其他模块的开发人员,一旦旧方法被废弃,不能使用后;或者某个方法更改后,其他模块的代码就会出错;其他模块的开发人员也不清楚基本模块都提供了哪些公用函数,这些都影响了整个云海的开发进度与功能实现,降低了云海相关程序的开发进度。
发明内容
为了解决上述技术问题,本发明提供了一种软件开发系统中管理公用函数的方法和装置,能够提高开发效率。
为了达到本发明目的,本发明提供了一种软件开发系统中管理公用函数的方法,包括:
获取每个公用函数对应的至少两个方法,其中所述至少两个方法均能实现该公用函数的功能;
对同一公用函数对应的所述至少两个方法进行排序处理,得到编号后的方法;
对所述编号后的方法进行循环链表的建立,得到所述公用函数对应的循环链表,其中所述循环列表中包括各方法的标识信息;
输出所述公用函数对应的循环链表。
进一步的,本发明提供的方法还具有如下特点:所述输出所述公用函数对应的循环链表之后,所述方法还包括:
接收对所述公用函数的调用请求,其中所述调用请求包括所述公用函数的标识信息和方法的编号信息;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要调用的方法的标识信息;
根据所述方法的标识信息,输出所述调用方法以响应所述调用请求。
进一步的,本发明提供的方法还具有如下特点:所述输出所述公用函数对应的循环链表之后,所述方法还包括:
接收对所述公用函数中方法的增加请求,其中所述增加请求包括所述公用函数的标识信息和新增加的方法;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
获取所述公用函数的循环列表中方法的编号规则;
根据所述编号规则,为新增加的方法设置编号;
根据所述新增加的公用函数的编号,将所述新增加的方法的标识信息增加到所述公用函数的循环列表中。
进一步的,本发明提供的方法还具有如下特点:所述输出所述公用函数对应的循环链表之后,所述方法还包括:
接收对所述公用函数中已有方法的删除请求,其中所述删除请求包括所述公用函数的标识信息和方法的编号信息;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要删除的方法;
在所述循环列表中删除对确定的方法的标识信息。
进一步的,本发明提供的方法还具有如下特点:所述输出所述公用函数对应的循环链表之后,所述方法还包括:
接收对所述公用函数中已有方法的改写请求,其中所述删除请求包括所述公用函数的标识信息、方法的编号信息以及改写的内容;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要改写的方法;
根据所述改写的内容,得到所述需要改写的方法对应的替代方法,并保存所述替代方法;
在确定该替代方法保存成功后,删除所述需要改写的方法的原方法。
一种软件开发系统中管理公用函数的装置,包括:
第一获取模块,用于获取每个公用函数对应的至少两个方法,其中所述至少两个方法均能实现该公用函数的功能;
排序模块,用于对同一公用函数对应的所述至少两个方法进行排序处理,得到编号后的方法;
建立模块,用于对所述编号后的方法进行循环链表的建立,得到所述公用函数对应的循环链表,其中所述循环列表中包括各方法的标识信息;
输出模块,用于输出所述公用函数对应的循环链表。
进一步的,本发明提供的装置还具有如下特点:所述装置还包括:
第一接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数的调用请求,其中所述调用请求包括所述公用函数的标识信息和方法的编号信息;
第一确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第二确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要调用的方法的标识信息;
其中,所述输出模块,用于根据所述方法的标识信息,输出所述调用方法以响应所述调用请求。
进一步的,本发明提供的装置还具有如下特点:所述装置还包括:
第二接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中方法的增加请求,其中所述增加请求包括所述公用函数的标识信息和新增加的方法;
第三确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第二获取模块,用于获取所述公用函数的循环列表中方法的编号规则;
设置模块,用于根据所述编号规则,为新增加的方法设置编号;
增加模块,用于根据所述新增加的公用函数的编号,将所述新增加的方法的标识信息增加到所述公用函数的循环列表中。
进一步的,本发明提供的装置还具有如下特点:所述装置还包括:
第三接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中已有方法的删除请求,其中所述删除请求包括所述公用函数的标识信息和方法的编号信息;
第四确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第五确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要删除的方法;
删除模块,用于在所述循环列表中删除对确定的方法的标识信息。
进一步的,本发明提供的装置还具有如下特点:所述装置还包括:
第三接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中已有方法的改写请求,其中所述删除请求包括所述公用函数的标识信息、方法的编号信息以及改写的内容;
第六确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第七确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要改写的方法;
处理模块,用于根据所述改写的内容,得到所述需要改写的方法对应的替代方法,并保存所述替代方法,并在确定该替代方法保存成功后,删除所述需要改写的方法的原方法。
本发明提供的实施例,对同一公用函数对应的所述至少两个方法进行排序处理,并按照排序建立循环链表,以循环列表的方法对同一函数的方法进行统一管理,利用循环列表记录方法的信息,方便对公用函数的方法进行管理,提高开发效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明提供的软件开发系统中管理公用函数的方法的流程图;
图2为本发明应用实例提供的公用函数的命名方法的示意图;
图3为本发明应用实例提供的公用函数的循环列表的示意图。
图4为本发明应用实例提供的基于循环链表的公用函数调用方法的实现过程示意图;
图5为本发明提供的软件开发系统中管理公用函数的装置的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为本发明提供的软件开发系统中管理公用函数的方法的流程图。图1所示方法包括:
步骤101、获取每个公用函数对应的至少两个方法,其中所述至少两个方法均能实现该公用函数的功能;
例如,某一个公用函数可以由多个方法分别来实现,利用公用函数可以由4个方法来实现;
步骤102、对同一公用函数对应的所述至少两个方法进行排序处理,得到编号后的方法;
例如,按照预先设置的排序规则,对上述4个方法进行排名,例如可以按照方法的名称进行排序;
步骤103、对所述编号后的方法进行循环链表的建立,得到所述公用函数对应的循环链表,其中所述循环列表中包括各方法的标识信息;
例如,对排序后的方法按照规则进行名称,如命名为a、b、c、d;
步骤104、输出所述公用函数对应的循环链表。
本发明提供的方法实施例,对同一公用函数对应的所述至少两个方法进行排序处理,并按照排序建立循环链表,以循环列表的方法对同一函数的方法进行统一管理,利用循环列表记录方法的信息,方便对公用函数的方法进行管理,提高开发效率。
下面对本发明提供的方法作进一步说明:
在进行公用函数的方法调用时,过程实现如下:
接收对所述公用函数的调用请求,其中所述调用请求包括所述公用函数的标识信息和方法的编号信息;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要调用的方法的标识信息;
根据所述方法的标识信息,输出所述调用方法以响应所述调用请求。
例如,公用函数的调用请求可以为公用函数的函数名称和方法的编号,利用上述信息可以在循环列表中得到方法的信息,从而响应外部的调用请求,提高调用的响应速度。
在公用函数的方法确定后,如果为该公用函数增加的新方法,对应需要更新循环列表,具体过程如下:
接收对所述公用函数中方法的增加请求,其中所述增加请求包括所述公用函数的标识信息和新增加的方法;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
获取所述公用函数的循环列表中方法的编号规则;
根据所述编号规则,为新增加的方法设置编号;
根据所述新增加的公用函数的编号,将所述新增加的方法的标识信息增加到所述公用函数的循环列表中。
在对公用函数的方法进行增加时,通过循环列表可以体现该增加操作,使得新增加的方法能够被软件开发过程中其他人使用,从而提高开发效率。
在公用函数的方法确定后,如果要删除该公用函数已有的方法,对应需要更新循环列表,具体过程如下:
接收对所述公用函数中已有方法的删除请求,其中所述删除请求包括所述公用函数的标识信息和方法的编号信息;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要删除的方法;
在所述循环列表中删除对确定的方法的标识信息。
在对公用函数的方法进行删除时,通过循环列表可以体现该删除操作,避免软件开发过程中其他人继续使用造成设计错误的发生,提高开发效率。
当然,在软件开发过程中还可以对已有的方法进行更新,对应需要更新循环列表,具体过程如下:
接收对所述公用函数中已有方法的改写请求,其中所述删除请求包括所述公用函数的标识信息、方法的编号信息以及改写的内容;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要改写的方法;
根据所述改写的内容,得到所述需要改写的方法对应的替代方法,并保存所述替代方法;
在确定该替代方法保存成功后,删除所述需要改写的方法的原方法。
需要说明的是,在确定改写后的方法后,是先对替换的方法进行保存,再删除已有的方法,避免未成功新方法时,原方法已经丢失,造成循环列表中的方法编号的混乱。
下面以本发明提供的应用实例对本发明提供的方法作进一步说明:
本发明提出了一种基于循环链表的公用函数调用方法,该方法的解决方案是:首先把调用某个公用函数的所有方法整理出来,并储存在以这个公用函数名命名的循环链表中,当该公用函数弃用或更新时,首先保存原有方法和替代方法,然后通知该链表里面的所有方法进行更新,当这些方法更新完毕后,删除掉该公用函数的原有方法;而且开发人员也可以很方便的查找到基本模块中是不是提供了公用函数来实现自己的某些功能。
首先在云海OS系统(以下简称“云海OS”)中把基本模块中把所有的公共函数提供的功能整理出来放在如下表1中,然后以每个公用函数的功能为名称建立一个循环链表。
表1
其中,循环列表存储的内容包括:实现该功能的函数名,调用该公用函数的所有方法名和完成标志位。其中用到的公用方法列表示意图如附图2所示,用到的链表的物理存储结构如附图3所示,其中两个方框紧邻组成的部分叫节点。
图4为本发明应用实例提供的基于循环链表的公用函数调用方法的实现过程示意图。具体实施过程如下:
以下分两种情况来介绍本方法:I、当某个公用函数更改(包括弃用及更新)时;II、当新出现的模块需要调用某个公用函数时。
I:当某个公用函数更改时,步骤如下:根据该公用函数提供的功能找到对应的编号,进而找到对应的链表,在该链表中把实现该功能的方法名标记为原有方法,新增一个节点,存储新的方法名称,并把该节点标记为替代方法,然后再根据后续节点记录的方法名,逐一更改每个方法中调用的公用函数(把原有方法改为替代方法),当遇到有完成标志位时,证明所有的方法均已更改完毕,把标记为“原有功能”的节点删掉,把标记为“替代方法”的标记去掉。
当某个公用函数更改时,根据该公用函数提供的功能找到对应的编号,进而找到对应的链表,在该链表中把实现该功能的方法名标记为原有方法,新增一个节点,存储新的方法名称,并把该节点标记为替代方法
然后再根据后续节点记录的方法名,逐一更改每个方法中调用的公用函数(用原有方法改为替代方法),当遇到有完成标志位时,证明所有的方法均已更改完毕,把标记为“原有功能”的节点删掉,把标记为“替代方法”的标记去掉。
II:当新出现的模块需要调用某个公用函数时,步骤如下:根据该公用函数提供的功能找到对应的编号,进而找到对应的链表,在该链表中首先查找“完成标记”的节点,在该节点前新增一个节点,存储该新增模块中调用这个函数公用的方法名。然后查看“完成标记”的后一个节点。若这个节点没有标记为“原有方法”时,则直接在该新增模块中使用这个节点中存储的方法;若这个节点标记为“原有方法”时,则直接在该新增模块中使用该节点中后一个节点中显示的方法,即替代方法。
1.当新出现的模块需要调用某个公用函数时:根据该公用函数提供的功能找到对应的编号,进而找到对应的链表,在该链表中首先查找“完成标记”的节点,在该节点前新增一个节点,存储该新增模块中调用这个函数的方法名。
2.然后查看“完成标记”的后一个节点。以下分两种情况讨论:
a.若这个节点没有标记为“原有方法”时,则直接在该新增模块中使用这个节点中存储的方法;
b.若这个节点标记为“原有方法”,则直接在该新增模块中使用这个节点的后一个节点中存储的方法,即替代方法。
综上可以看出,本发明应用实例提供的方法,使用了循环链表来存储调用公用函数的所有方法名,利用了循环链表易于增删的优点来满足方法名的更改。欲保护点是当公用函数改变时,能及时通知其他人员进行更新代码,减少程序出错几率;其他模块的开发人员也可以及时找到自己需要的公用函数,方便自己开发。
上述方法的好处在于,在云海OS系统中,当基本模块的某个公用函数改变之后,其他模块的开发人员可以及时做出相应的更新;其他模块的开发人员也可以很清楚知道基本模块都提供了哪些公用函数,可以供自己使用,从而加快代码开发进度和整个程序的健壮性以及系统的良好运行。
图5为本发明提供的软件开发系统中管理公用函数的装置的结构图。图5所示装置包括:
第一获取模块501,用于获取每个公用函数对应的至少两个方法,其中所述至少两个方法均能实现该公用函数的功能;
排序模块502,用于对同一公用函数对应的所述至少两个方法进行排序处理,得到编号后的方法;
建立模块503,用于对所述编号后的方法进行循环链表的建立,得到所述公用函数对应的循环链表,其中所述循环列表中包括各方法的标识信息;
输出模块504,用于输出所述公用函数对应的循环链表。
在本发明提供的一个实施例中,所述装置还包括:
第一接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数的调用请求,其中所述调用请求包括所述公用函数的标识信息和方法的编号信息;
第一确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第二确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要调用的方法的标识信息;
其中,所述输出模块,用于根据所述方法的标识信息,输出所述调用方法以响应所述调用请求。
在本发明提供的一个实施例中,所述装置还包括:
第二接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中方法的增加请求,其中所述增加请求包括所述公用函数的标识信息和新增加的方法;
第三确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第二获取模块,用于获取所述公用函数的循环列表中方法的编号规则;
设置模块,用于根据所述编号规则,为新增加的方法设置编号;
增加模块,用于根据所述新增加的公用函数的编号,将所述新增加的方法的标识信息增加到所述公用函数的循环列表中。
在本发明提供的一个实施例中,所述装置还包括:
第三接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中已有方法的删除请求,其中所述删除请求包括所述公用函数的标识信息和方法的编号信息;
第四确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第五确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要删除的方法;
删除模块,用于在所述循环列表中删除对确定的方法的标识信息。
在本发明提供的一个实施例中,所述装置还包括:
第三接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中已有方法的改写请求,其中所述删除请求包括所述公用函数的标识信息、方法的编号信息以及改写的内容;
第六确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第七确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要改写的方法;
处理模块,用于根据所述改写的内容,得到所述需要改写的方法对应的替代方法,并保存所述替代方法,并在确定该替代方法保存成功后,删除所述需要改写的方法的原方法。
本发明提供的装置实施例,对同一公用函数对应的所述至少两个方法进行排序处理,并按照排序建立循环链表,以循环列表的方法对同一函数的方法进行统一管理,利用循环列表记录方法的信息,方便对公用函数的方法进行管理,提高开发效率。
本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如系统、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。
可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
上述实施例中的各装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。
上述实施例中的各装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。
Claims (10)
1.一种软件开发系统中管理公用函数的方法,其特征在于,包括:
获取每个公用函数对应的至少两个方法,其中所述至少两个方法均能实现该公用函数的功能;
对同一公用函数对应的所述至少两个方法进行排序处理,得到编号后的方法;
对所述编号后的方法进行循环链表的建立,得到所述公用函数对应的循环链表,其中所述循环列表中包括各方法的标识信息;
输出所述公用函数对应的循环链表。
2.根据权利要求1所述的方法,其特征在于,所述输出所述公用函数对应的循环链表之后,所述方法还包括:
接收对所述公用函数的调用请求,其中所述调用请求包括所述公用函数的标识信息和方法的编号信息;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要调用的方法的标识信息;
根据所述方法的标识信息,输出所述调用方法以响应所述调用请求。
3.根据权利要求1或2所述的方法,其特征在于,所述输出所述公用函数对应的循环链表之后,所述方法还包括:
接收对所述公用函数中方法的增加请求,其中所述增加请求包括所述公用函数的标识信息和新增加的方法;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
获取所述公用函数的循环列表中方法的编号规则;
根据所述编号规则,为新增加的方法设置编号;
根据所述新增加的公用函数的编号,将所述新增加的方法的标识信息增加到所述公用函数的循环列表中。
4.根据权利要求1或2所述的方法,其特征在于,所述输出所述公用函数对应的循环链表之后,所述方法还包括:
接收对所述公用函数中已有方法的删除请求,其中所述删除请求包括所述公用函数的标识信息和方法的编号信息;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要删除的方法;
在所述循环列表中删除对确定的方法的标识信息。
5.根据权利要求1或2所述的方法,其特征在于,所述输出所述公用函数对应的循环链表之后,所述方法还包括:
接收对所述公用函数中已有方法的改写请求,其中所述删除请求包括所述公用函数的标识信息、方法的编号信息以及改写的内容;
根据所述公用函数的标识信息,确定所述公用函数的循环列表;
在所述循环列表中根据所述方法的编号信息,确定需要改写的方法;
根据所述改写的内容,得到所述需要改写的方法对应的替代方法,并保存所述替代方法;
在确定该替代方法保存成功后,删除所述需要改写的方法的原方法。
6.一种软件开发系统中管理公用函数的装置,其特征在于,包括:
第一获取模块,用于获取每个公用函数对应的至少两个方法,其中所述至少两个方法均能实现该公用函数的功能;
排序模块,用于对同一公用函数对应的所述至少两个方法进行排序处理,得到编号后的方法;
建立模块,用于对所述编号后的方法进行循环链表的建立,得到所述公用函数对应的循环链表,其中所述循环列表中包括各方法的标识信息;
输出模块,用于输出所述公用函数对应的循环链表。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第一接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数的调用请求,其中所述调用请求包括所述公用函数的标识信息和方法的编号信息;
第一确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第二确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要调用的方法的标识信息;
其中,所述输出模块,用于根据所述方法的标识信息,输出所述调用方法以响应所述调用请求。
8.根据权利要求6或7所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中方法的增加请求,其中所述增加请求包括所述公用函数的标识信息和新增加的方法;
第三确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第二获取模块,用于获取所述公用函数的循环列表中方法的编号规则;
设置模块,用于根据所述编号规则,为新增加的方法设置编号;
增加模块,用于根据所述新增加的公用函数的编号,将所述新增加的方法的标识信息增加到所述公用函数的循环列表中。
9.根据权利要求6或7所述的装置,其特征在于,所述装置还包括:
第三接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中已有方法的删除请求,其中所述删除请求包括所述公用函数的标识信息和方法的编号信息;
第四确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第五确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要删除的方法;
删除模块,用于在所述循环列表中删除对确定的方法的标识信息。
10.根据权利要求6或7所述的装置,其特征在于,所述装置还包括:
第三接收模块,用于在输出所述公用函数对应的循环链表之后,接收对所述公用函数中已有方法的改写请求,其中所述删除请求包括所述公用函数的标识信息、方法的编号信息以及改写的内容;
第六确定模块,用于根据所述公用函数的标识信息,确定所述公用函数的循环列表;
第七确定模块,用于在所述循环列表中根据所述方法的编号信息,确定需要改写的方法;
处理模块,用于根据所述改写的内容,得到所述需要改写的方法对应的替代方法,并保存所述替代方法,并在确定该替代方法保存成功后,删除所述需要改写的方法的原方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710916973.3A CN107704236B (zh) | 2017-09-30 | 2017-09-30 | 软件开发系统中管理公用函数的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710916973.3A CN107704236B (zh) | 2017-09-30 | 2017-09-30 | 软件开发系统中管理公用函数的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107704236A true CN107704236A (zh) | 2018-02-16 |
CN107704236B CN107704236B (zh) | 2021-03-19 |
Family
ID=61184001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710916973.3A Active CN107704236B (zh) | 2017-09-30 | 2017-09-30 | 软件开发系统中管理公用函数的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107704236B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958725A (zh) * | 2018-07-06 | 2018-12-07 | 广州慧通编程教育科技有限公司 | 图形化模式编程平台生成方法、装置及计算机设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101071478A (zh) * | 2006-06-15 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 一种好友分组管理方法 |
CN101620536A (zh) * | 2009-08-17 | 2010-01-06 | 用友软件股份有限公司 | 一种调用功能函数的方法和装置 |
US20100175053A1 (en) * | 2007-06-21 | 2010-07-08 | Nxp B.V. | Device and a method of managing a plurality of software items |
CN105335203A (zh) * | 2014-06-30 | 2016-02-17 | 华为技术有限公司 | 共享库的二进制翻译执行方法和装置 |
CN105468375A (zh) * | 2015-11-30 | 2016-04-06 | 扬州大学 | 一种面向面结构光点云数据的对应点搜索结构的构建方法 |
CN106406911A (zh) * | 2016-10-26 | 2017-02-15 | 国云科技股份有限公司 | 一种计算机软件系统功能组件化的方法 |
CN107168692A (zh) * | 2017-04-01 | 2017-09-15 | 山东超越数控电子有限公司 | 一种基于ReWorks操作系统的手持机用户界面实现方法及系统 |
-
2017
- 2017-09-30 CN CN201710916973.3A patent/CN107704236B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101071478A (zh) * | 2006-06-15 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 一种好友分组管理方法 |
US20100175053A1 (en) * | 2007-06-21 | 2010-07-08 | Nxp B.V. | Device and a method of managing a plurality of software items |
CN101620536A (zh) * | 2009-08-17 | 2010-01-06 | 用友软件股份有限公司 | 一种调用功能函数的方法和装置 |
CN105335203A (zh) * | 2014-06-30 | 2016-02-17 | 华为技术有限公司 | 共享库的二进制翻译执行方法和装置 |
CN105468375A (zh) * | 2015-11-30 | 2016-04-06 | 扬州大学 | 一种面向面结构光点云数据的对应点搜索结构的构建方法 |
CN106406911A (zh) * | 2016-10-26 | 2017-02-15 | 国云科技股份有限公司 | 一种计算机软件系统功能组件化的方法 |
CN107168692A (zh) * | 2017-04-01 | 2017-09-15 | 山东超越数控电子有限公司 | 一种基于ReWorks操作系统的手持机用户界面实现方法及系统 |
Non-Patent Citations (2)
Title |
---|
廉师友: "利用多态性解决异质链表的访问问题", 《西安石油学院学报(自然科学版)》 * |
霍有亮: "基于C++的模板与重用", 《西北大学学报(自然科学版)》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958725A (zh) * | 2018-07-06 | 2018-12-07 | 广州慧通编程教育科技有限公司 | 图形化模式编程平台生成方法、装置及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107704236B (zh) | 2021-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111478961A (zh) | 多租户的服务调用方法及装置 | |
CN106570018A (zh) | 序列化与反序列化的方法、装置、系统以及电子设备 | |
CN107644286A (zh) | 工作流处理方法及装置 | |
CN110502487A (zh) | 一种缓存管理方法与装置 | |
CN106919370A (zh) | 一种对象属性值的获取方法及装置 | |
CN110008246A (zh) | 元数据管理方法及装置 | |
US20120078905A1 (en) | Manipulating non-schema attributes for objects in a schema based directory | |
CN107343007A (zh) | 基于用户身份及权限认证的分布式文件管理方法及系统 | |
CN109936642A (zh) | 一种分布式系统中生成机器id的方法、装置及系统 | |
CN105631019A (zh) | 元数据扩展方法和元数据扩展装置 | |
CN106155838A (zh) | 一种数据库备份数据恢复方法及装置 | |
CN106802928B (zh) | 电网历史数据管理方法及其系统 | |
CN107526627A (zh) | 一种虚拟资源生命周期信息管理方法和装置 | |
CN107704236A (zh) | 软件开发系统中管理公用函数的方法和装置 | |
CN102171696B (zh) | 定制资料的生成方法和装置 | |
CN106294115B (zh) | 一种应用系统迁移性的测试方法及装置 | |
CN106294530A (zh) | 规则匹配的方法和系统 | |
CN101908174A (zh) | 处理图纸文件中零部件对象信息的方法、装置及eap系统 | |
CN106156076A (zh) | 数据处理的方法和系统 | |
CN102571381B (zh) | 一种信息存储方法以及信息存储装置 | |
CN106933554A (zh) | 类转换方法和装置 | |
CN107533485A (zh) | 用于对从多租户中间件应用调用的os程序进行多租户执行的系统和方法 | |
CN116340536A (zh) | 运维知识图谱构建方法、装置、设备、介质及程序产品 | |
CN106202121B (zh) | 数据存储及导出的方法和设备 | |
CN108959403A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210204 Address after: Building 9, No.1, guanpu Road, Guoxiang street, Wuzhong Economic Development Zone, Wuzhong District, Suzhou City, Jiangsu Province Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd. Address before: Room 1601, floor 16, 278 Xinyi Road, Zhengdong New District, Zhengzhou City, Henan Province Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |