您的位置:首页 > 编程语言

学习软件编程的感悟(原创)

2010-06-28 12:09 344 查看
好久没有写东西了。高中时,为了写作文,什么话都往上写,生怕写的字数不够,呵呵,导致高考作文20来分,惨淡的教训告诉我:越怕什么关键时刻越来什么!逃避不是解决问题的办法。

  上大学三年了,学习编程快两年了,总结一下自己的经验,希望不要误人子弟!不对之处望不吝赐教。

学习编程并不是学习什么语言,语言只不过是工具而已(网上一大堆,老生常谈了)。一般写的程序都有两部分组成:一个是数据结构;一个是算法。

数据结构就是某种语言所特有的规则,他就像任何游戏一样都有一种规则,这个没有任何捷径,只能平常多看看,多练习,记住它就行了。在实战中才能把它理解的更加深刻、更加透彻。

算法,也就是我们通常在编程中用到的函数或方法,为了使程序更加健壮、更高的可读性和结构更加紧凑,一般都把某种算法封装起来,这样便于移植和测试。其实向俗里说,算法就是我们平常为了解决问题而用到的方法,只不过它用语言描绘出来了而已,怎么想就怎么写就行,只要不违背游戏规则就行了。

学习编程,其实我觉得我们从上学就开始学习编程了,而且我们那是学习的还是编程的精华-------数学。他们学习的方法几乎都是一样的,遇到一个问题(当然最终都是为了解决这个问题),首先分析一下要想解决它必须先解决什么问题?把每一个问题都列出来,再把这些小问题一个一个分解,直到分解成你可以解决的问题为止!当然也可以从两边向中间凑:有这个问题我们首先可以解决什么?不能解决什么?把这些问题尽量向中间靠拢,一步步也可以把它解决掉。当发现,最后出现了错误时,我们再从那些小的问题入手,一个一个分析,把错误的问题找到,最终把它解决掉。数学在理工科中是尤其重要的,因为它在无形中影响我们的思维,呵呵,怪不得有人说数学发展到哪里,这个社会就会进不到哪里呢。

现在我们学的编程基本上就有四种模型:面向过程的,基于对象的,面向对象的,基于泛型的。如果把编程比喻成堆积木,那别人提供给我们的API函数都是一个个零散的小积木,有时我们为了更快的堆积成我们想要的东西,我们再把这些小积木在堆积成另一个形状,当我们需要它时,直接拿过来用就行了,不用再重新堆积了,这就是类。

发现问题,解决问题------测试,因为我也从来没有学习过测试,只会一点最基本的方法,那就是跟着程序走,程序运行到哪里,就检查到哪里,问题总会发现的,最简单的方法是通过输入输出跟踪运行的程序,直到发现它出现了异常。

进步的泉源----错误。人往往从失败中才会得到更多的经验。编程也是,当你运行程序遇到某个错误了,那时最好自己独立解决,因为只有这样你才会有更大的进步,千万不要怕走弯路,有时候在弯路中你学到的东西更多。遇到错误时,先分析错误提示,一般IDE都有错误提示和错误出现在哪一行,尽管有的指示的不够明确,但通过分析错误行的上下文,也可以有助于你找到错误的根源所在,把错误提示看一下,这样也有助于你以后发现错误。

学编程是符合“理论→实践→创新→再理论→再实践→再创新”的一个认识过程。把编程也可以看成一门技术,对于技术,只能通过实战来提高自己了。我们有时可能遇到这样的问题,新学习一门软件课程时,看那些书感觉很吃力,有时看了一遍也不知道它讲了个什么,我觉得这是因为你缺少实践的原因,当你真正实践过,反过头来再看那些书,“哦,原来如此”,才恍然大悟,当你再实践后,再去看这本书,“呵呵,怪不得呢”,这个时候你可能会责备自己“怎么原来我没看到呢,哎,真是太笨了”,到那时,当有个白痴问起你”这门课程好学吗?“,我觉得你就可以告诉它,这门课程太简单了,正常人都可以学会!

系统之上的应用编程,基本上和我们平常解决生活中的问题一样,在脑袋中想,再在纸上写出来(呵呵),编程想想其实也是如此,在内存中保存所计算的,在外存中写出该如何计算,再把外存中的数据放到内存中保存,把内存中的数据返回到外存加以利用,如此反复一个问题就解决了。

系统中的和系统之下的编程,还没有学,不敢妄加评论。

                        待续……
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐