System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 代码调试方法、装置和计算设备制造方法及图纸_技高网

代码调试方法、装置和计算设备制造方法及图纸

技术编号:40949770 阅读:4 留言:0更新日期:2024-04-18 20:24
本公开的实施方式提供了一种代码调试方法、装置和计算设备。该方法包括:响应于调试请求,确定待调试代码对应的第一代码;待调试代码调试请求指示的调试的代码,且待调试代码为对低代码平台中组件的逻辑代码进行组合所得到的;确定第一代码所包含的至少一个循环体;重复以下步骤,直至第一代码执行结束:若确定当前需要执行的代码行为循环体中首个代码行,则确定循环体的断点信息;断点信息表征循环体中是否存在断点;根据断点信息,确定循环体中的目标代码行本次执行时的执行方式,并基于执行方式,执行循环体中的代码行;目标代码行为循环体中未被嵌套至其余循环体中的代码行;输出第一代码中的断点对应的调试结果。

【技术实现步骤摘要】

本公开的实施方式涉及数据处理领域,更具体地,本公开的实施方式涉及一种代码调试方法、装置和计算设备


技术介绍

1、本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。

2、低代码为一种可视化的应用开发方法,可以基于较少的代码,快速实现软件开发。用户可以通过低代码平台所提供的组件,使用拖拽组件或者模型驱动等的逻辑,完成软件开发。

3、如何对基于低代码平台所开发的软件进行代码调试,以确保软件开发的准确性,是一个亟需解决的问题。


技术实现思路

1、本公开提供一种代码调试方法、装置和计算设备,以便对基于低代码平台所构建代码进行调试。

2、在本公开实施方式的第一方面中,提供了一种代码调试方法,包括:响应于调试请求,确定待调试代码对应的第一代码;所述待调试代码所述调试请求指示的调试的代码,且所述待调试代码为对低代码平台中组件的逻辑代码进行组合所得到的;所述第一代码为采用通用编程语言所编写的;

3、确定所述第一代码所包含的至少一个循环体;所述循环体为需要重复执行的代码段;

4、重复以下步骤,直至所述第一代码执行结束:若确定当前需要执行的代码行为循环体中首个代码行,则确定所述循环体的断点信息;所述断点信息表征循环体中是否存在断点;根据所述断点信息,确定所述循环体中的目标代码行本次执行时的执行方式,并基于所述执行方式,执行所述循环体中的代码行;所述目标代码行为循环体中未被嵌套至其余循环体中的代码行;

5、输出所述第一代码中的断点对应的调试结果。

6、在本公开的一个实施例中,确定所述循环体的断点信息,包括:

7、若确定所述循环体中嵌套有另一个循环体,且所述另一个循环体中设置有断点,则确定所述循环体中存在断点。

8、在本公开的一个实施例中,所述断点具有状态信息;所述状态信息为以下状态中的任一项:启用状态、禁用状态;若确定所述循环体中嵌套有另一个循环体,且所述另一个循环体中设置有断点,则确定所述循环体中存在断点,包括:

9、若确定所述循环体中嵌套有另一个循环体,且所述另一个循环体中设置有处于启用状态的断点,则确定所述循环体中存在断点。

10、在本公开的一个实施例中,确定所述第一代码所包含的至少一个循环体,包括:

11、确定第一代码和待调试代码的映射关系;所述映射关系包括待调试代码所对应的组件的标识、组件所对应的组件类型、以及组件所对应的行信息;所述行信息为组件的映射代码在第一代码中的位置信息;所述映射代码为组件映射至第一代码时所对应的代码;

12、确定组件类型为循环类型的组件为目标组件;并确定目标组件的映射代码为第一代码中的一个循环体。

13、在本公开的一个实施例中,根据所述断点信息,确定所述循环体中的目标代码行本次执行时的执行方式,包括:

14、若确定所述循环体中存在断点,则确定所述循环体的目标行的本次执行的执行方式为第一方式;所述第一方式为执行过程中,实时记录代码行当前的执行状态信息;所述执行状态信息用于指示目标行中当前未被执行的代码块;所述代码块为方法、函数、类中的任一项;

15、若确定所述循环体中不存在断点,则确定所述循环体的目标行的本次执行的执行方式为第二方式;所述第二方式为直接执行目标行的方式。

16、在本公开的一个实施例中,所述方法还包括:

17、响应于断点操作,根据所述断点操作,调整第一代码中的目标循环体的断点信息;所述断点操作用于指示需要调整断点信息的目标循环体,且断点操作为对第一代码进行新增断点操作、删除断点操作、启动断点操作、禁用断点操作中的至少一项操作;

18、若确定所述目标循环体当前处于被执行过程中,则保持所述目标循环体中目标代码行在本次执行时的执行方式不变。

19、在本公开的一个实施例中,所述断点对应的调试结果包括:断点处的代码在低代码平台所对应的组件、断点处的调试变量的取值、执行断点处代码的线程的线程信息中的至少一项。

20、在本公开的一个实施例中,所述第一代码中的断点与待调试代码所对应的组件相对应。

21、在本公开的一个实施例中,所述方法还包括:若确定当前需要执行的代码行并非循环体中的代码行,则确定第一方式为当前需要执行的代码行的执行方式,并根据所述执行方式,执行所述当前需要执行的代码行;所述第一方式为执行过程中,实时记录代码行当前的执行状态信息。

22、在本公开实施方式的第二方面中,提供了一种计算机可读存储介质,包括:所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面任一项所述的方法。

23、在本公开实施方式的第三方面中,提供了一种代码调试装置,包括:

24、第一确定单元,用于响应于调试请求,确定待调试代码对应的第一代码;所述待调试代码所述调试请求指示的调试的代码,且所述待调试代码为对低代码平台中组件的逻辑代码进行组合所得到的;所述第一代码为采用通用编程语言所编写的;

25、第二确定单元,用于确定所述第一代码所包含的至少一个循环体;所述循环体为需要重复执行的代码段;

26、重复以下第三确定单元、第四确定单元以及第一执行单元,直至所述第一代码执行结束:

27、第三确定单元,用于若确定当前需要执行的代码行为循环体中首个代码行,则确定所述循环体的断点信息;所述断点信息表征循环体中是否存在断点;

28、第四确定单元,用于根据所述断点信息,确定所述循环体中的目标代码行本次执行时的执行方式;

29、第一执行单元,用于基于所述执行方式,执行所述循环体中的代码行;所述目标代码行为循环体中未被嵌套至其余循环体中的代码行;

30、输出单元,用于输出所述第一代码中的断点对应的调试结果。

31、在本公开的一个实施例中,第三确定单元,具体用于:

32、若确定所述循环体中嵌套有另一个循环体,且所述另一个循环体中设置有断点,则确定所述循环体中存在断点。

33、在本公开的一个实施例中,所述断点具有状态信息;所述状态信息为以下状态中的任一项:启用状态、禁用状态;第三确定单元,具体用于:

34、若确定所述循环体中嵌套有另一个循环体,且所述另一个循环体中设置有处于启用状态的断点,则确定所述循环体中存在断点。

35、在本公开的一个实施例中,第二确定单元,包括:

36、第一确定模块,用于确定第一代码和待调试代码的映射关系;所述映射关系包括待调试代码所对应的组件的标识、组件所对应的组件类型、以及组件所对应的行信息;所述行信息为组件的映射代码在第一代码中的位置信息;所述映射代码为组件映射至第一代码时所对应的代码;

37、第二确定模块,用于确定组件类型为循环类型的组件为目标组件;

38本文档来自技高网...

【技术保护点】

1.一种代码调试方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,确定所述循环体的断点信息,包括:

3.根据权利要求2所述的方法,其特征在于,所述断点具有状态信息;所述状态信息为以下状态中的任一项:启用状态、禁用状态;若确定所述循环体中嵌套有另一个循环体,且所述另一个循环体中设置有断点,则确定所述循环体中存在断点,包括:

4.根据权利要求1所述的方法,其特征在于,确定所述第一代码所包含的至少一个循环体,包括:

5.根据权利要求1所述的方法,其特征在于,根据所述断点信息,确定所述循环体中的目标代码行本次执行时的执行方式,包括:

6.根据权利要求1所述的方法,其特征在于,所述方法还包括:

7.根据权利要求1所述的方法,其特征在于,所述断点对应的调试结果包括:断点处的代码在低代码平台所对应的组件、断点处的调试变量的取值、执行断点处代码的线程的线程信息中的至少一项。

8.根据权利要求1所述的方法,其特征在于,所述第一代码中的断点与待调试代码所对应的组件相对应。

9.一种代码调试装置,其特征在于,包括:

10.一种计算设备,包括:

...

【技术特征摘要】

1.一种代码调试方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,确定所述循环体的断点信息,包括:

3.根据权利要求2所述的方法,其特征在于,所述断点具有状态信息;所述状态信息为以下状态中的任一项:启用状态、禁用状态;若确定所述循环体中嵌套有另一个循环体,且所述另一个循环体中设置有断点,则确定所述循环体中存在断点,包括:

4.根据权利要求1所述的方法,其特征在于,确定所述第一代码所包含的至少一个循环体,包括:

5.根据权利要求1所述的方法,其特征在于,根据所述...

【专利技术属性】
技术研发人员:赵忠杰赵建梁郑长春
申请(专利权)人:杭州网易数之帆科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1