代码编译方法及装置制造方法及图纸

技术编号:19098374 阅读:30 留言:0更新日期:2018-10-03 02:35
本发明专利技术是关于一种代码编译方法,属于软件开发技术领域。所述方法包括:接收针对源程序的编译指令;若所述编译指令指示编译获得的目标程序用于调试,则获取调试代码设置规则;根据所述调试代码设置规则设置调试代码;对设置有所述调试代码的所述源程序进行编译。该方法由开发人员预先设置好调试代码设置规则,当开发人员需要对源程序进行调试时,自动根据调试代码设置规则在源程序的代码中设置调试代码并编译,当开发人员需要对源程序进行反复修改和调试时,不需要开发人员每一轮调试之前在源程序中手动设置调试代码,极大的简化了开发人员的调试代码设置步骤,减少了调试时间,提高软件程序的调试效率。

【技术实现步骤摘要】
代码编译方法及装置
本专利技术涉及软件开发
,特别涉及一种代码编译方法及装置。
技术介绍
代码编译是将高级语言编写的源程序的代码翻译成计算机可识别的二进制语言的代码的过程。一个软件程序的开发过程中,通常需要经过多轮修改、编译和调试。比如,开发人员编写完成软件程序的源程序后,对源程序进行首轮修改、编译和调试,首轮调试通过后,将通过调试的源程序提交给测试人员进行测试,测试人员将测试发现的问题反馈给开发人员,由开发人员对源程序进行第二轮修改、编译和调试,并在第二轮调试通过后,将通过调试的源程序再次提交给测试人员进行测试,以此反复,直至通过测试人员的测试。在现有技术中,对软件程序的每一轮修改、编译和调试过程可以如下:开发人员在源程序中人工设置调试代码,获得用于调试的源程序,并通过编译器对用于调试的源程序进行编译,获得用于调试的目标程序,开发人员通过调试器运行目标程序,并根据目标程序的运行情况检查目标程序是否存在错误,若目标程序存在错误,则开发人员对用于调试的源程序的代码进行修改,并对修改后的用于调试的源程序的代码编译后进行调试,直至编译获得的目标程序的试运行不存在错误,本轮修改和调试结束。之后开发人员将本轮最后修改的源程序的代码中的调试代码删除,对删除调试代码后的源程序的代码进行编译,获得供测试人员测试使用的目标程序。在对软件程序的每一轮修改和调试中,开发人员都需要在软件程序的源程序中设置调试代码,而人工设置调试代码的过程需要消耗开发人员大量的时间,影响软件的开发效率。
技术实现思路
为了解决现有技术中对软件程序的每一轮修改和调试中,开发人员都需要在软件程序的源程序中设置调试代码,从而消耗开发人员大量的时间,影响软件的开发效率的问题,本专利技术实施例提供了一种代码编译方法及装置,技术方案如下:第一方面,提供了一种代码编译方法,所述方法包括:接收针对源程序的编译指令,所述编译指令指示编译获得的目标程序是否用于调试;若所述编译指令指示编译获得的目标程序用于调试,则获取调试代码设置规则,所述调试代码设置规则中包含目标代码以及调试代码;根据所述调试代码设置规则,对应所述源程序中包含的所述目标代码设置调试代码;对设置有所述调试代码的所述源程序进行编译,获得目标程序。第二方面,提供了一种代码编译装置,所述装置包括:指令接收模块,用于接收针对源程序的编译指令,所述编译指令指示编译获得的目标程序是否用于调试;规则获取模块,用于若所述编译指令指示编译获得的目标程序用于调试,则获取调试代码设置规则,所述调试代码设置规则中包含目标代码以及调试代码;代码设置模块,用于根据所述调试代码设置规则,对应所述源程序中包含的所述目标代码设置所述调试代码;编译模块,用于对设置有所述调试代码的所述源程序进行编译,获得目标程序。本专利技术实施例提供的技术方案可以包括以下有益效果:由开发人员预先设置好调试代码设置规则,当开发人员需要对源程序进行调试时,自动根据调试代码设置规则在源程序的代码中设置调试代码并编译,当开发人员需要对源程序进行反复修改和调试时,不需要开发人员每一轮调试之前在源程序中手动设置调试代码,极大的简化了开发人员的调试代码设置步骤,减少了调试时间,提高软件程序的调试效率。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本专利技术。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1是本专利技术实施例所示方案的实现流程示意图;图2是根据一示例性实施例示出的一种代码编译方法的流程图;图3是图2所示实施例涉及的一种设置界面示意图;图4是图2所示实施例涉及的一种调试代码编译示意图;图5是图2所示实施例涉及的另一种调试代码编译示意图;图6是根据一示例性实施例示出的一种代码编译方法的流程图;图7是图6所示实施例涉及的一种调试标记示意图;图8是图6所示实施例涉及的方案的实现流程示意图;图9是根据一示例性实施例示出的一种代码编译装置的框图;图10是根据一示例性实施例提供的电子设备的结构示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。本专利技术所示的方案可以应用于安装有软件开发工具的电子设备中。比如,该电子设备可以是个人电脑、笔记本电脑或者工作站等开发设备。在本专利技术所示的方案中,开发人员通过软件开发工具编写完成某个源程序之后,可以基于是否对源程序编译后的目标程序进行调试来发出不同的编译指令,若软件开发工具接收到的编译指令指示需要对目标程序进行调试,则软件开发工具可以在源程序的代码中自动设置调试代码,并对设置有调试代码的源程序的代码进行编译,以便开发人员对编译获得的目标程序进行调试;反之,若软件开发工具接收到的编译指令指示不对目标程序进行调试,则软件开发工具可以对源程序的代码不做改动,直接进行编译。具体的,请参考图1,其示出了本专利技术所示方案的实现流程示意图。如图1所示,开发人员可以预先编写或设置一系列的调试代码设置规则,开发人员编写或修改完源程序的代码后,在对源程序进行编译时,软件开发工具获取编译指令,根据编译指令选择对源程序执行普通编译或调试编译。当执行普通编译时,软件开发工具直接将源程序的代码由高级语言翻译成二进制语言,获得目标代码1;当执行调试编译时,软件开发工具可以获取预先设置的调试代码设置规则,并按照调试代码设置规则在源程序的代码中设置调试代码,并将设置有调试代码的源程序的代码由高级语言翻译成二进制语言,获得目标代码2。本专利技术所示的方案,可以由开发人员预先设置好调试代码设置规则,当需要对源程序进行调试时,自动根据调试代码设置规则在源程序的代码中设置调试代码并编译,当开发人员需要对源程序进行反复修改和调试时,不需要开发人员每一轮调试之前在源程序中手动设置调试代码,极大的简化了开发人员的调试代码设置步骤,减少了调试时间,提高软件程序的调试效率。图2是根据一示例性实施例示出的一种代码编译方法的流程图,该方法可以用于运行有软件开发工具的电子设备中。如图2所示,该代码编译方法可以包括如下几个步骤:步骤201,接收开发人员设置的调试代码设置规则。本专利技术实施例所示的方案可以由软件开发工具来实现,该软件开发工具可以类似于NPM(nodepackagemanager,node的包管理器)。开发人员可以通过命令提示符的方式控制软件开发工具的启动及运行。其中,调试代码可以分为两种,一种是直接在源程序的代码中插入的调试代码,比如用于显示带有一条指定消息和一个OK按钮的警告框的alert语句,或者用于设置断点的debugger语句等,此类调试代码通常不需要对源程序中的代码做改动,只需要在源程序的代码中的目标代码的指定位置插入即可;另一种是需要将源程序的代码中的目标代码进行置换的调试代码,比如,源程序的代码中存在某一个参数,比如一个文件地址,该文件地址是在正式的发布环境中使用的地址,而调试过程通常离线进行,在程序调试时无法对本文档来自技高网...

【技术保护点】
1.一种代码编译方法,其特征在于,所述方法包括:接收针对源程序的编译指令,所述编译指令指示编译获得的目标程序是否用于调试;若所述编译指令指示对编译获得的目标程序用于调试,则获取调试代码设置规则,所述调试代码设置规则中包含目标代码以及调试代码;根据所述调试代码设置规则,对应所述源程序中包含的所述目标代码设置所述调试代码;对设置有所述调试代码的所述源程序进行编译,获得目标程序。

【技术特征摘要】
1.一种代码编译方法,其特征在于,所述方法包括:接收针对源程序的编译指令,所述编译指令指示编译获得的目标程序是否用于调试;若所述编译指令指示对编译获得的目标程序用于调试,则获取调试代码设置规则,所述调试代码设置规则中包含目标代码以及调试代码;根据所述调试代码设置规则,对应所述源程序中包含的所述目标代码设置所述调试代码;对设置有所述调试代码的所述源程序进行编译,获得目标程序。2.根据权利要求1所述的方法,其特征在于,所述根据所述调试代码设置规则,对应所述源程序中包含的所述目标代码设置所述调试代码,包括:在所述源程序中匹配所述目标代码;若成功匹配到所述目标代码,则将所述目标代码替换为所述调试代码,或者,对应在所述目标代码的指定位置插入所述调试代码。3.根据权利要求1所述的方法,其特征在于,所述获取调试代码设置规则,包括:获取所述源程序的程序名;从预先设置的配置文件中查询与所述程序名相对应的所述调试代码设置规则。4.根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:接收到对所述目标程序进行打包或发布的指令时,展示提示消息,所述提示消息用于提示所述目标程序用于调试。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:在对设置有所述调试代码的源程序进行编译之前,对应所述调试代码设置调试标记;所述对设置有所述调试代码的源程序进行编译,包括:对设置有所述调试标记的所述源程序进行编译;所述接收到对所述目标程序进行打包或发布的指令时,展示提示消息,包括:接收到对所述目标程序进行打包或发布的指令时,检测所述目标程序中是否包含所述调试标记,若检测结果为所述目标程序中包含所述调试标记,则展示所述提示消息。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:确定所述调试标记在所述目标程序中的位置信息;所述展示所述提示消息,包括:展示包括所述位置信息的所述提示消息。7.一种代码编译装置...

【专利技术属性】
技术研发人员:周红轮侯坤明
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1