作业1:程序中的错误

从上大学接触编程到现在,不管是大小作业还是自己写的程序,或多或少在编写阶段都会遇到不同的错误。给我印象比较深的是我本科毕业设计做的一个基于安卓平台的图像拼接app。但是写这个程序,安卓编程的基础为0,所以遇到了各种各样的问题,极大的锻炼了找错误和修改错误的能力。这个app的主要功能就是从本地获取图片然后利用安卓提供的图片操作接口对图片进行拼接裁剪等等的操作。第一个遇见的错误是与系统内软件交互的问题。最开始的时候每次我想访问系统相册的时候程序都会崩溃,运行时返回的错误是无法获得相册的权限。查找资料后进行修改,增加了一个向系统询问是否允许访问相册的函数,这样通过用户在顶层的操作便能获得系统内软件的权限。这些都是当时安卓更新到M版本之后增加的行为,也告诉了我编程一定要注重语言和平台以及环境的版本。第二个问题是关于功能的也是在编完之后测试的时候发现的。这个app允许用户通过按住图片来移动图片以及两根手指按住进行旋转、放大、缩小等等,但是在实际测试的时候发现两指操作的时候图片并没有按照预想的进行变化。在经过一系列的代码检查以及查找资料后得知,人触摸屏幕的时候看似不动其实是有微小的移动的,所以在两指按住的时候,其实两个手指都算作在移动因为当时是根据位移进行的判断,所以图片判定的操作是位移而不是放大、 缩小、旋转,而且由于两根手指微小的移动方向和距离都不一样,程序无法进行判断。后来修改的时候是在原来判断条件的基础上给手指按住的坐标增加了一个误差范围,在这个误差范围里面移动都算作“按住”。这些问题都是导致最终程序达不到预期效果的原因,测试是发现这些问题的途径。学好测试会使未来的学习的工作更加顺利。

posted @ 2017-10-25 02:07  四班-李祚  阅读(137)  评论(0编辑  收藏  举报