KPL青少年电脑编程语言--一步一步学KPL【3】:如何调试KPL程序?

[KPL学习指南]一步一步学KPL【3】:如何调试KPL程序?
kpl 发布于 2007-7-23 15:07:00


 第一个问题:什么是调试?

 这里面有个典故。我从网上搜的一个经典的说法,放在下面:

 1937年,美国青年霍德华.艾肯找到IBM公司为其投资200万美圆研制计算机,第一台成品艾肯把它取名为:马克1号,又叫“自动序列受控计算机”,从这时起IBM公司由生产制表机,肉铺磅秤,咖啡研磨机等乱七八糟玩意儿的行业,正式跨进“计算机”领地。
    
 为马克1号编制程序的是一位女数学家雷斯.霍波,有一天,她在调试程序时出现故障,拆开继电器后,发现有只飞蛾被夹扁在触点中间,从而“卡”住了机器的运行。于是,霍波诙谐的把程序故障统称为“臭虫(BUG)“,把排除程序故障叫DEBUG(捉虫子),而这奇怪的”称呼“,竟成为后来计算机领域的专业行话。

 我们重复一下:调试(debug)就是排出程序故障。

 刚学电脑编程的人,都会以为程序代码是通过精确构思,一气呵成的,其实,电脑编程跟写文章,做其他的工作完全一样。总是在大的构思下,通过修修补补完成的。

 刚开始,哪怕输入错一个关键字符,都有可能导致程序出错。找出程序出错的过程,就叫调试。

 编写任何程序都需要调试语句或工具。在KPL里面提供了一些简单的调试语句,如Trace、ShowTrace和Stop等。

 私下里说:KPL的调试工具是相当的弱智,跟商业的调试工具不能相比。但因为我们要编写的代码,也不算复杂。所以,我们还是可以克服这个弱点,继续前进的。

 既然调试就是排错,那么,换句话说就是要定位出错的位置。我们该如何做呢?

 我来告诉大家我是如何做的。

【1】我在阅读一段新的代码或定位错误的时候,我会用到注释语句。大家想想为什么这样?

 因为我们知道,注释语句后,代码不会被执行。这样,我就把大的程序化整为零了。

 我先把代码后面的部分注释掉 ,让程序一段一段地执行。

 有人说了,如果要注释的语句很多,不是很麻烦?

 不麻烦,因为在KPL开发环境的工具栏上有两个个工具:一个注释工具,一个取消注释的工具。

 你可以在代码窗口选中要注释或取消注释的代码块。

 这样是不是很方便了呢?

 接下来的问题是:我把后面的代码都注释了,我想了解当前已执行的代码的变量的结果,如何获知呢?

【2】这时,Trace语句该上场了。我们来看一个例子:

 var i as int
 var total as int

 for i=1 to 10
  
  total=total+i
  Trace("Total:"+total)
 next

 循环内的Trace语句是我们为了看见,在每次循环过程中的累加结果,增加的一条语句。

 这样,原来看不见的循环结果,通过简单的结果显示语句就可以“看见”了。这个结果,不会显示在KPL程序的界面上,而是显示在KPL的开发环境的Messages消息框内。这就是KPL的调试,其实很简单!

 同样,我们可以在需要确认和判断的地方,加上类似的代码,帮助我们确认程序出错的位置,或确定程序是否按设计的逻辑和思路进行。

 通过上面两个基本方法或工具,我们可以调试所有的KPL程序。

 KPL的程序调试给我们还有另外的一种启示:简单的东西,并不等于没有用;好东西,也不代表着完美无缺。更多的时候,我们要自己想办法,绕过一些障碍。

 我想,这个结论,不仅适应于KPL编程,也适用于其他任何事情。

 我相信,大家一旦掌握了这两个工具,学习的信心和能力会大大的增强。
 

转发到新浪微博

 

网上书店:当当图书  卓越亚马逊  新华书店  中国图书网  蔚蓝书店

  |  KPL QQ 群:39562753 
 




KPL QQ 群:39562753 

  验证申请请输入:KPL

  公告

敏捷培训视频培训教程,版权所有,未经授权,禁止转载

     现在国内无法访问KPL官方网站,喷嚏网(www.dapenti.com)提供的KPL资料为国内首份公开的KPL汉化资料。

该资料转载并注明作者和译者出处。如:来源:喷嚏网-www.dapenti.com

欢迎从事中小学信息技术的教师转载和引用,论坛或媒体须经书面许可

欢迎媒体合作!


邮箱:dapenti2006@gmail.com


  我的分类(专题)
  最近日志
程序员怎样学数学:半路出家也能让编程
汉语编程-汉芯之后的中国软件界大骗局
一步一步学KPL【9】:如何对按键进
一步一步学KPL【8】:如何让字母精
一步一步学KPL【7】:如何在屏幕上
一步一步学KPL【6】:如何随机产生
一步一步学KPL【5】:如何随机产生
一步一步学KPL【4】:如何编写一个
KPL开发环境中的一个bug
一步一步学KPL【3】:如何调试KP
一步一步学KPL[2]:编码的习惯和
structure有什么用?
为什么编程要用英文?
如何用任意的图形来画线?
一步一步学KPL[1]:初学者入门
吴文虎:别让“程序设计”成第二门“英
如何使用系统函数?
版权和转载申明
孩子什么时候学编程比较合适?
《KPL游戏示例代码讲解》电子书在线

  最新评论

  留言板
 

  链接

  Blog AD
 



|站点首页 | 联系我们 | 博客登陆
蜀ICP备11003155号 公安部备案号:51019002000333

特别声明:本站不提供任何视听上传服务,所有视频内容均来自视频分享站点所提供的公开引用资源

Powered by oBlog 2.52 © Copyright 2004. All rights reserved.