工作半年的总结——写程序

  1,不要把什事情都要程序来完成。
    在做数据的程序,不要忽数据器的大功能,有些在程序中实现的功能,利用数据本身的功能就很好实现我一般的做法是将数据中的表装入程序中的数据集或是记录集中,再对这个集行操作,操作完成把它更新到数据中去。但是,这样做有很多不足,1,很耗源,尤其PDA,它本身的源就很缺。2逻辑处理非常麻,比如要找一个记录,就的写循环语句,遍,判断,完成之后,要将个集中的置成初始状(一般需要这样,除非次的操作的果在后操作中用到)。
    现在改一下,将数据复杂的繁的操作写成一个个存储过程或SQL句,在相的操作些存储过程或句就行。这样的改很好,多空(代写的少)和源。

 
2,将界面控件状的改集中写在一起
    一般用界面上有不少空textboxbuttonlabel等等,在用操作时这些控件的状要随着用的操作作出相化,我常遇到这样问题,而且理起来很麻,更受的问题时些状置会生冲突,甚至一些控件状的确定系到的控件当前的状这样一来很是麻在我把控件状置都写在一个函数中formRefresh这样每次需要置界面状态时个函数就行了。当然在写个函数之前需要确定出界面的状到底有多少,分用什么样的状态标志来确定。
    使用
个函数,到后来它省了很多时间,把我从复杂的界面状中解放了出来,使我注于最重要的逻辑问题。但是,它也有很多不足,首先,耗源,就是改一个小的地方都需要用它,可能会使全部的控件都置一次状;第二,个函数不是万能的,不是用它所有的状态问题都解决了,需要其他的置,比如在集中置状态时formRefresh函数),会生冲突,像置控件焦点的问题,会出你争我象。

  3,学辈们经验和代
    我写PDA程序有前辈们写的似的程序,以前也看,但是没仔看,多地方不明白就去了,等自己写了一之后,发现自己辛辛苦苦研究出来来,人家早就在用。所以没必要浪大量的时间自己琢磨研究,始之前先看看以前的程序,静下心来学一下。

  4,画出图纸
    我不会画UML,等高深的,只是能随便用笔画画,但也很好,我把要理的程全画出来,什么时行什么样的操作,由来操作都简单出来,没想到它后来的开发有很大的帮助,我得直接面很容易,迷糊。想逻辑时看着,看代舒服的多,要改一个逻辑设计,先改,改完好啊好看看,得没问题再改相的代这样可能比好。当然也没有格的序区分,多事情都是相符相重的,相互影响,共同进步的,不可能得没问题就是完美的,也很快在写代码时发现他不
    另外,我比
较爱和笔画得容易表达出自己的想法,但是,我在不断的改掉习惯,改用子版的,这样有很多好,就不多了,用和笔只是助,不如在鼓不清的候,在上随便画画,帮助自己理清头绪。最后,不能依靠这种不正的画方式,在工作中将秀的正的画方式不断的引用,这样才有展前途。两个字是:

   5,使用表驱动法精简代码
      我的程序中,一个textbox要求的输入字符是数字和一些键盘上有的字母,其他的不能输入,这样就得在这个textbox的keypress事件中写一个比较复杂的判断语句,还有,在日后可能要加入新的能输入的键,或是去掉一些没必要的键(即让这些键不能输入),这样给判断增加了不少的难度,和复杂度,用成套的if else还是用swich,不管用什么都挺复杂的。我从《代码大全》中看到了关于表驱动法的介绍,于是在这样的判断中就用上了。先建立一个整数数组KeyIndex(1 to 144)(这样的写法是VB,其他的语言也没什么差别,可能存在的问题就是数组下标的问题,待会再说),初始化数组元素的值都是0,这个数据用来表示键盘上的144个键,比如KeyIndex(65),代表A,KeyIndex(48)代表0,等等。现在需要那个键能输入,就将那个键对应的ASCII码为数组下标的元素的值设置成1,就是 KeyIndex(49)=1,即将2键设置成可用。这样在keypress事件中只写一个判断代码,就搞定了,
        if KeyIndex(KeyASCii) <> 1 then
            KeyASCii=0
        endif
哈 相当简洁。
     如果需要加入新的可以输入的键或是去掉一些可以输入的键,问题只是改一改数组元素中0和1就行了,其他的不用动,这样很省时间,也比较松。
    现在说一下数组下标的问题,在c++、c#、Java等一些语言中,数组的下标是从0开始的,但是键盘上没有哪个键的键值是0,所以KeyIndex(0)是不能用的,还有在这样的语言中有一个数组是int(20),那么它的元素只能是int(0)到int(19),所以在这样的应用中KeyIndex的定义要写成KeyIndex(145)。

  6
,没有解决的问题
    虽
然有的到的,但是老是得不太踏竟是自己的一方感慨,有候真不知道学些什,不知道从哪里去学,很苦于上面的问题得不是好就非常好的,只是在特定的合好使了。于使用各是使用数据本身的特性,我没有很深刻的解,我想学想摸索,想得到一个很好的答案,了些废话,就一句对这些,我不懂。界面置,我得有很好的法,你看看Word,再看看随便的什操作系,状么复杂,人家怎理的很好呢?我想学在工作了半年,得学对 我们这些人是最重要的。

posted @ 2008-02-12 12:01  alisx  阅读(335)  评论(0编辑  收藏  举报