一种程序代码调试方法和装置制造方法及图纸

技术编号:18525790 阅读:16 留言:0更新日期:2018-07-25 12:42
本申请实施例提供了一种程序代码调试方法和装置,包括:调用调试命令包;所述调试命令包具有与至少与一种语言类型对应的调试脚本;所述调试脚本具有调试命令;确定当前调试的程序代码的语言类型;确定与当前调试的程序代码的语言类型对应的目标调试脚本;运行所述目标调试脚本,获得与所述目标调试脚本的调试命令相应的程序代码运行结果。本申请实施例中,无论是调试对Objective‑C语言的程序代码还是Swift语言的程序代码,用户只需要输入一个调试命令包,LLDB调试器自动调用调试命令包中相应的调试脚本进行调试,无需人工输入多个调试命令,即可实现所需的调试效果。从而简化了用户操作,降低调试难度并且可以节省调试时间。

【技术实现步骤摘要】
一种程序代码调试方法和装置
本申请涉及软件
,特别是涉及一种调试命令包生成方法,一种程序代码调试方法,一种调试命令包生成装置和一种程序代码调试装置。
技术介绍
现在的程序越来越复杂,导致出现各种各样的复杂问题,因此需要用调试器来发现并解决问题。目前iOS的调试基于苹果开发的LLDB调试器,通过LLDB命令进行调试,但LLDB命令比较多,不同的命令有不同的用途,而且参数繁多,不同参数代表不同的处理。对开发者来说,要用好调试功能,对开发者的调试功底要求较高。而且为了达到一些常用的调试效果,需要输入多个LLDB命令进行组合操作。每次调试,都要重复输入很多类似的命令来操作。比如查找View、保存数据到文件中,需要输入多个命令一起组合来完成,这样对于开发者来说难于记住这些命令。
技术实现思路
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种调试命令包生成方法,一种程序代码调试方法,一种调试命令包生成装置和一种程序代码调试装置。为了解决上述问题,本申请实施例公开了一种调试命令包生成方法,包括:接收针对不同语言类型的调试脚本;所述调试脚本包括调试命令;存储所述针对不同语言类型的调试脚本,作为调试命令包。优选的,所述语言类型包括:Objective-C语言,及Swift语言;所述接收针对不同语言类型的调试脚本的步骤包括:接收针对Objective-C语言的调试脚本,及针对Swift语言的调试脚本;所述存储所述针对不同语言类型的调试脚本,作为调试命令包的步骤包括:存储所述针对Objective-C语言的调试脚本,及所述针对Swift语言的调试脚本,作为调试命令包。优选的,所述调试脚本由针对一种语言类型的封装代码和调试命令组成。本申请实施例还公开了一种程序代码调试方法,包括:调用调试命令包;所述调试命令包具有与至少与一种语言类型对应的调试脚本;所述调试脚本具有调试命令;确定当前调试的程序代码的语言类型;确定与当前调试的程序代码的语言类型对应的目标调试脚本;运行所述目标调试脚本,获得与所述目标调试脚本的调试命令相应的程序代码运行结果。优选的,所述调试命令包具有:针对Objective-C语言的调试脚本,及针对Swift语言的调试脚本;所述确定与当前调试的程序代码的语言类型对应的目标调试脚本的步骤包括:若当前调试的程序代码的语言类型为Objective-C语言,则将针对Objective-C语言的调试脚本确定为目标调试脚本;若当前调试的程序代码的语言类型为Swift语言,则将针对Swift语言的调试脚本确定为目标调试脚本。优选的,所述调试脚本由针对一种语言类型的封装代码和调试命令组成;所述运行所述目标调试脚本,获得与所述目标调试脚本的调试命令相应的程序代码运行结果的步骤包括:运行所述目标调试脚本的调试命令和封装代码,获得与所述目标调试脚本的调试命令相应的程序代码运行结果。本申请实施例还公开了一种调试命令包生成装置,包括:调试脚本接收模块,用于接收针对不同语言类型的调试脚本;所述调试脚本包括调试命令;调试命令包生成模块,用于存储所述针对不同语言类型的调试脚本,作为调试命令包。优选的,所述语言类型包括:Objective-C语言,及Swift语言;所述调试脚本接收模块包括:调试脚本接收子模块,用于接收针对Objective-C语言的调试脚本,及针对Swift语言的调试脚本;所述调试命令包生成模块包括:调试命令包生成子模块,用于存储所述针对Objective-C语言的调试脚本,及所述针对Swift语言的调试脚本,作为调试命令包。优选的,所述调试脚本由针对一种语言类型的封装代码和调试命令组成。本申请实施例还公开了一种程序代码调试装置,包括:调试命令包调用模块,用于调用调试命令包;所述调试命令包具有与至少与一种语言类型对应的调试脚本;所述调试脚本具有调试命令;语言类型确定模块,用于确定当前调试的程序代码的语言类型;目标调试脚本确定模块,用于确定与当前调试的程序代码的语言类型对应的目标调试脚本;目标调试脚本运行模块,用于运行所述目标调试脚本,获得与所述目标调试脚本的调试命令相应的程序代码运行结果。优选的,所述调试命令包具有:针对Objective-C语言的调试脚本,及针对Swift语言的调试脚本;所述目标调试脚本确定模块包括:第一目标调试脚本确定子模块,用于若当前调试的程序代码的语言类型为Objective-C语言,则将针对Objective-C语言的调试脚本确定为目标调试脚本;第二目标调试脚本确定子模块,用于若当前调试的程序代码的语言类型为Swift语言,则将针对Swift语言的调试脚本确定为目标调试脚本。优选的,所述调试脚本由针对一种语言类型的封装代码和调试命令组成;所述目标调试脚本运行模块包括:目标调试脚本运行子模块,用于运行所述目标调试脚本的调试命令和封装代码,获得与所述目标调试脚本的调试命令相应的程序代码运行结果。本申请实施例包括以下优点:在本申请实施例中,将针对Objective-C语言的调试脚本和针对Swift语言的调试脚本封装在同一个命令包中,尽量屏蔽这两种语言的差异性,对外提供统一的调试命令包形式。无论是调试对Objective-C语言的程序代码还是Swift语言的程序代码,用户只需要输入一个调试命令包,LLDB调试器自动调用调试命令包中相应的调试脚本进行调试,无需人工输入多个调试命令,即可实现所需的调试效果。从而简化了用户操作,降低调试难度并且可以节省调试时间。附图说明图1是本申请的一种调试命令包生成方法实施例的步骤流程图;图2是本申请的一种程序代码调试方法实施例的步骤流程图;图3是本申请的一种调试命令包生成装置实施例的结构框图;图4是本申请的一种程序代码调试装置实施例的结构框图。具体实施方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。Xcode是IOS的编程软件,目前Xcode工程主要采用LLDB调试器进行调试。在调试时,用户可以在LLDB调试器输入LLDB命令对程序代码进行调试。为了达到一些的调试效果,用户需要输入多个LLDB命令进行组合操作。每次调试,都要重复输入很多类似的命令来操作。为了简化调试过程,本申请实施例中将一些LLDB命令封装为可以实现指定的调试效果的调试命令包。用户在LLDB调试器调用调试命令包就可以实现相应的他调试效果,而无需输入多个LLDB命令,来达到相同的调试效果。参照图1,示出了本申请的一种调试命令包生成方法实施例的步骤流程图,具体可以包括如下步骤:步骤101,接收针对不同语言类型的调试脚本;所述调试脚本包括调试命令;调试命令是指LLDB命令,LLDB调试器支持用户创建调试命令包,用户可以采用代码封装LLDB命令生成调试脚本。LLDB调试器内置有Python解析器,因此可以采用Python语言编写封装代码对LLDB命令进行封装。采用Python语言生成调试脚本的过程可以为:用户采用Python软件创建一个Python文件;在Python文件中输入针对一种语言类型的Python封装代码和LLDB命令。用户可以根据实际需要的调试效果,输入不同的封装代码和LLDB命令。每一个调试脚本文档来自技高网...

【技术保护点】
1.一种调试命令包生成方法,其特征在于,包括:接收针对不同语言类型的调试脚本;所述调试脚本包括调试命令;存储所述针对不同语言类型的调试脚本,作为调试命令包。

【技术特征摘要】
1.一种调试命令包生成方法,其特征在于,包括:接收针对不同语言类型的调试脚本;所述调试脚本包括调试命令;存储所述针对不同语言类型的调试脚本,作为调试命令包。2.根据权利要求1所述的方法,其特征在于,所述语言类型包括:Objective-C语言,及Swift语言;所述接收针对不同语言类型的调试脚本的步骤包括:接收针对Objective-C语言的调试脚本,及针对Swift语言的调试脚本;所述存储所述针对不同语言类型的调试脚本,作为调试命令包的步骤包括:存储所述针对Objective-C语言的调试脚本,及所述针对Swift语言的调试脚本,作为调试命令包。3.根据权利要求1所述的方法,其特征在于,所述调试脚本由针对一种语言类型的封装代码和调试命令组成。4.一种程序代码调试方法,其特征在于,包括:调用调试命令包;所述调试命令包具有与至少与一种语言类型对应的调试脚本;所述调试脚本具有调试命令;确定当前调试的程序代码的语言类型;确定与当前调试的程序代码的语言类型对应的目标调试脚本;运行所述目标调试脚本,获得与所述目标调试脚本的调试命令相应的程序代码运行结果。5.根据权利要求4所述的方法,其特征在于,所述调试命令包具有:针对Objective-C语言的调试脚本,及针对Swift语言的调试脚本;所述确定与当前调试的程序代码的语言类型对应的目标调试脚本的步骤包括:若当前调试的程序代码的语言类型为Objective-C语言,则将针对Objective-C语言的调试脚本确定为目标调试脚本;若当前调试的程序代码的语言类型为Swift语言,则将针对Swift语言的调试脚本确定为目标调试脚本。6.根据权利要求4所述的方法,其特征在于,所述调试脚本由针对一种语言类型的封装代码和调试命令组成;所述运行所述目标调试脚本,获得与所述目标调试脚本的调试命令相应的程序代码运行结果的步骤包括:运行所述目标调试脚本的调试命令和封装代码,获得与所述目标调试脚本的调试命令相应的程序代码运行结果。7.一种调试命令包生成装置,其特征在于,包括:调试脚本接收模块,用于...

【专利技术属性】
技术研发人员:姜春雨
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1