逻辑分支下的代码优化方法及装置与流程

文档序号:16665841发布日期:2019-01-18 23:16阅读:156来源:国知局
逻辑分支下的代码优化方法及装置与流程

本发明涉及计算机技术领域,更具体地,涉及一种逻辑分支下的代码优化方法及装置。



背景技术:

目前,随着计算机技术的发展和业务需求的增加,软件功能的种类也随之增加。在软件的开发过程中,这些功能种类的增加通常通过逻辑分支实现。也就是,在不同的逻辑分支下执行不同的任务以实现不同的功能。

在现有技术中,在逻辑分支下执行任务以实现相应的功能时,均需编写任务的详细执行代码。

但随着软件功能种类的增加,逻辑分支数目也会随之增加。此时,在逻辑分支下编写任务的详细执行代码会导致代码量急剧增加。当软件功能种类过多时,可能会导致逻辑分支整体代码异常臃肿,进而严重影响程序的可运行性并大大降低程序维护的效率。



技术实现要素:

本发明提供一种逻辑分支下的代码优化方法及装置,以克服现有技术中,当软件功能种类过多时,可能会导致逻辑分支整体代码异常臃肿,进而严重影响程序的可运行性并大大降低程序维护效率的问题。

根据本发明的第一方面,提供一种逻辑分支下的代码优化方法,包括:步骤1,基于相关联的逻辑分支下所需执行的任务的共性,定义所述任务的通用执行方法;步骤2,在所述相关联的逻辑分支中每一个逻辑分支下,通过所述通用执行方法调用该逻辑分支下所需执行任务的具体执行方法。

结合第一方面第一种可能实现方式,在第二种可能实现方式中,在所述步骤2之前还包括:定义所述相关联的逻辑分支中每一个逻辑分支下所需执行任务的具体执行方法。

结合第一方面第二种可能实现方式,在第三种可能实现方式中,所述步骤1包括:基于相关联的逻辑分支下所需执行的任务的共性,创建接口;其中,所述接口包括对所述任务的执行函数的声明。

结合第一方面第三种可能实现方式,在第四种可能实现方式中,所述定义所述相关联的逻辑分支中每一个逻辑分支下所需执行任务的具体执行方法包括:创建所述相关联的逻辑分支中每一个逻辑分支下所需执行任务对应的实现类;所述实现类包括对其对应逻辑分支下所需执行任务的执行函数的定义;所述实现类用于实现所述接口。

结合第一方面第四种可能实现方式,在第五种可能实现方式中,所述步骤2包括:在所述相关联的逻辑分支中每一个逻辑分支下,将该逻辑分支对应的实现类,赋值给所述接口的对象。

结合第一方面第四种可能实现方式,在第六种可能实现方式中,在所述步骤2之前还包括:创建切换类;相应地,所述步骤2包括:在所述相关联的逻辑分支中每一个逻辑分支下,在引用所述接口的所述切换类中,将该逻辑分支对应的实现类,赋值给所述接口的对象。

结合第一方面第六种可能实现方式,在第七种可能实现方式中,所述切换类包括赋值函数;相应地,所述步骤2包括:在所述相关联的逻辑分支中每一个逻辑分支下,在引用所述接口的所述切换类中,利用赋值函数将该逻辑分支对应的实现类,赋值给所述接口的对象。

根据本发明的第二方面,提供一种逻辑分支下的代码优化装置,包括:通用方法定义模块和调用模块;所述通用方法定义模块,用于基于相关联的逻辑分支下所需执行的任务的共性,定义所述任务的通用执行方法;所述调用模块,用于在所述相关联的逻辑分支中每一个逻辑分支下,通过所述通用执行方法调用该逻辑分支下所需执行任务的具体执行方法。

根据本发明的第三方面,提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行如上所述的方法。

根据本发明的第四方面,提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如上所述的方法。

本发明提出的逻辑分支下的代码优化方法及装置,基于相关联的逻辑分支下所需执行的任务的共性,定义所述任务的通用执行方法,在所述相关联的逻辑分支中每一个逻辑分支下,通过所述通用执行方法调用该逻辑分支下所需执行任务的具体执行方法。本发明将逻辑分支下所需执行任务的具体执行方法设置在该逻辑分支外,通过所述通用执行方法调用该逻辑分支下所需执行任务的具体执行方法,有效减小了逻辑分支下的代码量,一方面使得逻辑分支结构清晰、层次分明、程序的可读性增高,另一方面使得程序的可维护性和可扩展性得到极大的提高,此外,任务的具体执行方法可反复被调用,大大提高了编程效率。

附图说明

图1为根据本发明实施例的逻辑分支下的代码优化方法流程图;

图2为根据本发明实施例的逻辑分支下的代码优化方法流程图;

图3为根据本发明实施例的逻辑分支下的代码优化装置示意图;

图4为根据本发明实施例的逻辑分支下的代码优化装置的测试设备示意图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

目前,随着计算机技术的发展和业务需求的增加,软件功能的种类也随之增加。在软件的开发过程中,这些功能种类的增加通常通过逻辑分支实现。也就是,在不同的逻辑分支下执行不同的任务以实现不同的功能。在现有技术中,在逻辑分支下执行任务以实现相应的功能时,均需编写任务的详细执行代码。但随着软件功能种类的增加,逻辑分支数目也会随之增加。此时,在逻辑分支下编写任务的详细执行代码会导致代码量急剧增加。当软件功能种类过多时,可能会导致逻辑分支整体代码异常臃肿,进而严重影响程序的可运行性并大大降低程序维护的效率。

为解决上述问题,如图1所示,本发明提供了一种逻辑分支下的代码优化方法。该方法包括:步骤1,基于相关联的逻辑分支下所需执行任务的共性,定义所述任务的通用执行方法;步骤2,在所述相关联的逻辑分支中每一个逻辑分支下,通过所述通用执行方法调用该逻辑分支下所需执行任务的具体执行方法。

在本实施例步骤1中,相关联的逻辑分支数目至少为两个,具体可以根据实际情况设定,本实施例对此也不作限定。逻辑分支可以通过代码编写中常用的if、elseif与else组合或switch方法实现,本实施例对此不作具体限定。优选地,本实施例逻辑分支采用switch方法实现。每一个逻辑分支下需执行一个任务。若相关联的逻辑分支数目为三个且对应的三个任务分别为读取网络数据、读取数据库数据和读取磁盘数据,则它们的共性为读取数据。据此,可以定义能够实现数据读取的通用执行方法。

在本实施例步骤2中,通过所述通用执行方法调用该逻辑分支下所需执行任务的具体执行方法中的调用可以为函数调用,还可以为接口的实现,在此不做限定。

本发明提出的逻辑分支下的代码优化方法,在所述相关联的逻辑分支中每一个逻辑分支下,无需根据该逻辑分支下所需执行的任务详细编写对应的具体执行方法,仅通过通用执行方法调用该逻辑分支下所需执行任务的具体执行方法,即可完成对应的任务,有效减小了逻辑分支下的代码量,一方面使得逻辑分支结构清晰、层次分明、程序的可读性增高,另一方面使得程序的可维护性和可扩展性得到极大的提高,此外,任务的具体执行方法可反复被调用,大大提高了编程效率。

作为一种可选实施例,在所述步骤2之前还包括:定义所述相关联的逻辑分支中每一个逻辑分支下所需执行任务的具体执行方法。

作为一种可选实施例,所述步骤1包括:基于相关联的逻辑分支下所需执行的任务的共性,创建接口;其中,所述接口包括对所述任务的执行函数的声明。

作为一种可选实施例,所述定义所述相关联的逻辑分支中每一个逻辑分支下所需执行任务的具体执行方法包括:创建所述相关联的逻辑分支中每一个逻辑分支下所需执行任务对应的实现类;所述实现类包括对其对应逻辑分支下所需执行任务的执行函数的定义;所述实现类用于实现所述接口。

作为一种可选实施例,所述步骤2包括:在所述相关联的逻辑分支中每一个逻辑分支下,将该逻辑分支对应的实现类,赋值给所述接口的对象。

作为一种可选实施例,在所述步骤2之前还包括:创建切换类;相应地,所述步骤2包括:在所述相关联的逻辑分支中每一个逻辑分支下,在引用所述接口的所述切换类中,将该逻辑分支对应的实现类,赋值给所述接口的对象。

作为一种可选实施例,所述切换类包括赋值函数;相应地,所述步骤2包括:在所述相关联的逻辑分支中每一个逻辑分支下,在引用所述接口的所述切换类中,利用赋值函数将该逻辑分支对应的实现类,赋值给所述接口的对象。

基于上述图1对应实施例,本实施例提出一种逻辑分支下的代码优化方法。如图2所示,该方法包括:

101,基于相关联的逻辑分支下所需执行的任务的共性,创建接口;其中,所述接口包括对所述任务的执行函数的声明;

102,创建所述相关联的逻辑分支中每一个逻辑分支下所需执行任务对应的实现类;所述实现类包括对其对应逻辑分支下所需执行任务的执行函数的定义;所述实现类用于实现所述接口;

103,创建切换类,所述切换类包括赋值函数;

104,在所述相关联的逻辑分支中每一个逻辑分支下,在引用所述接口的所述切换类中,利用赋值函数将该逻辑分支对应的实现类,赋值给所述接口的对象。

其中,101,基于相关联的逻辑分支下所需执行的任务的共性,创建接口;其中,所述接口包括对所述任务的执行函数的声明。

通常,相关联的逻辑分支下所需执行的任务往往在本质上存在相同之处。例如,若三个相关联的逻辑分支下所需执行的任务分别为读取网络数据、读取数据库数据和读取磁盘数据,则它们在本质上的相同之处--读取数据,即为这些任务的共性。

基于相关联的逻辑分支下所需执行的任务的共性,创建接口,并在接口中对所述任务的执行函数进行声明,便实现了对所述任务的抽象。通过这种抽象,后续仅通过每个任务对应的实现类对该接口进行实现,便可执行完成该任务。例如,当共性为读取数据时,可以创建一个接口ihandlerdata。通过接口ihandlerdata中声明的执行函数readdata将读取网络数据、读取数据库数据和读取磁盘数据抽象为读取数据。后续读取网络数据对应的实现类在对接口进行实现时,便可执行网络数据的读取,其他数据的读取方法类似,在此不再复述。

其中,102,创建所述相关联的逻辑分支中每一个逻辑分支下所需执行任务对应的实现类;所述实现类包括对其对应逻辑分支下所需执行任务的执行函数的定义;所述实现类用于实现所述接口。

在基于相关联的逻辑分支下所需执行的任务的共性,创建接口后,需要创建接口的实现类,以在实现接口的过程中完成所需执行的任务。

由于相关联的各逻辑分支下所需执行的任务不同,因此,需要针对每个逻辑分支下所需执行的任务创建对应的实现类。例如,为相关联的三个逻辑分支下所需执行的三个任务--读取网络数据、读取数据库数据和读取磁盘数据--分别定义实现类readnethandler、readsqlhandler和readdiskhandler。在具体创建每个逻辑分支下所需执行的任务对应的实现类时,实现类继承接口,并在实现类中,依据任务的具体执行方式,对执行函数做具体的定义。例如,在具体创建这些实现类时,每个实现类均继承接口ihandlerdata,并在每个实现类中,依据各类数据的具体读取方式,对执行函数做具体的定义。

其中,103,创建切换类,所述切换类包括赋值函数。

在接口以及接口的实现类均创建后,需利用实现类对接口进行实现。在实现时,具体地,需将实现类赋值给接口的对象。为了方便这一赋值过程的描述,创建了包含赋值函数的切换类。

其中,104,在所述相关联的逻辑分支中每一个逻辑分支下,在引用所述接口的所述切换类中,利用赋值函数将该逻辑分支对应的实现类,赋值给所述接口的对象。

在所述相关联的逻辑分支中每一个逻辑分支下,在利用实现类对接口进行实现以完成对应的任务时,具体地,在引用所述接口的所述切换类中,利用赋值函数将该逻辑分支对应的实现类,赋值给所述接口的对象,使得接口的对象可以使用该实现类中的执行函数,完成该实现类对应的任务。以用于实现读取网络数据的逻辑分支为例,将该逻辑分支对应的实现类readnethandler,赋值给接口的对象,从而可以通过实现类readnethandler中具体定义的执行函数readdata,对接口中声明的执行函数readdata进行实现,完成网络数据的读取。

如图3所示,根据本发明的第二方面,提供一种逻辑分支下的代码优化装置,包括:通用方法定义模块和调用模块;所述通用方法定义模块,用于基于相关联的逻辑分支下所需执行的任务的共性,定义所述任务的通用执行方法;所述调用模块,用于在所述相关联的逻辑分支中每一个逻辑分支下,通过所述通用执行方法调用该逻辑分支下所需执行任务的具体执行方法。

本发明提出的逻辑分支下的代码优化装置,通过调用模块,在所述相关联的逻辑分支中每一个逻辑分支下,无需根据该逻辑分支下所需执行的任务详细编写对应的具体执行方法,仅通过通用执行方法调用该逻辑分支下所需执行任务的具体执行方法,即可完成对应的任务,有效减小了逻辑分支下的代码量,一方面使得逻辑分支结构清晰、层次分明、程序的可读性增高,另一方面使得程序的可维护性和可扩展性得到极大的提高,此外,任务的具体执行方法可反复被调用,大大提高了编程效率。

作为一种可选实施例,所述装置还包括具体方法定义模块,用于定义所述相关联的逻辑分支中每一个逻辑分支下所需执行任务的具体执行方法。

作为一种可选实施例,所述通用方法定义模块具体用于基于相关联的逻辑分支下所需执行的任务的共性,创建接口;其中,所述接口包括对所述任务的执行函数的声明。

作为一种可选实施例,所述具体方法定义模块具体用于创建所述相关联的逻辑分支中每一个逻辑分支下所需执行任务对应的实现类;所述实现类包括对其对应逻辑分支下所需执行任务的执行函数的定义;所述实现类用于实现所述接口。

作为一种可选实施例,所述调用模块具体用于在所述相关联的逻辑分支中每一个逻辑分支下,将该逻辑分支对应的实现类,赋值给所述接口的对象。

作为一种可选实施例,所述装置还包括创建模块,用于创建切换类;相应地,所述调用模块具体用于在所述相关联的逻辑分支中每一个逻辑分支下,在引用所述接口的所述切换类中,将该逻辑分支对应的实现类,赋值给所述接口的对象。

图4是示出本发明逻辑分支下的代码优化装置的测试设备的结构框图。

参照图4,所述显示装置的测试设备,包括:处理器(processor)401、存储器(memory)402、通信接口(communicationsinterface)403和总线404;

其中,所述处理器401、存储器402、通信接口403通过所述总线404完成相互间的通信;

所述通信接口403用于该测试设备与显示装置的通信设备之间的信息传输;

所述处理器401用于调用所述存储器402中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:调整显示装置的白平衡参数中每种颜色的增益值至各自的饱和点;测试所述显示装置的亮度均匀性。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:调整显示装置的白平衡参数中每种颜色的增益值至各自的饱和点;测试所述显示装置的亮度均匀性。

本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:调整显示装置的白平衡参数中每种颜色的增益值至各自的饱和点;测试所述显示装置的亮度均匀性。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所描述的逻辑分支下的代码优化装置的测试设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后,本发明的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1