• 读书笔记第四周 《代码大全》


     代码大全 读书笔记
      由于这周有个人大作业,所以我一边写大作业,写累了就看《代码大全》,我粗略地翻了一下有关前期准备的部分,重点看了调试和修改错误的部分。感觉看完之后,今天和昨天的调试效率要高的多,这种"做中学,学中做"的方式还是很不错地,知行合一:将知识应用到实践,使得实践能力提高。另一方面,实践也更有助于对晦涩的理论的理解。
      首先是前期准备,概括一下就是你要明确你需要完成的需求,为此你要设计什么样的框架功能模块来解决,否则你写起代码来很容易没有方向感。为了更加明确怎么写这份代码,你应该"先让战争发生在头脑中",可以把自己的想法写下来,这样思路会更加清晰,为了更好地安排时间,你也应该提前有所规划。下面是我的一些规划和写代码前的思路。
     

     

       然后是关于代码编写过程中
      1.写一段就测试一下。如果写一大段再调试,往往会出不少错,你又不知道错在哪。
      2.不要依赖编译器调错。在编译之前,自己先看看代码,很多低级错误就能找出来了,这样大大地提高了编程效率。
       我重点看了关于调试的部分:
      其中有几个我觉得很重要的建议:
      第一是在动手之前,需要理解问题,而且要理解程序本身。让自己代码一塌糊涂的最好办法,就是不懂装懂地动手修补程序,这样只会更糟。另一方面,理解全局也比理解局部往往更加高效。
      第二是放松的重要性。匆忙动手往往导致草率判断,片面分析,并不彻底的改正。压力通常来源于自身:压力过大往往导致程序员采用随机测试。这本书提到Windows 2000开发的最后阶段,修补最后错误的程序员在debug之前,先去玩了一下篮球。因为他觉得他压力太大的情况下,没法考虑所有需要考虑的问题。这点我很有同感,这两天我在写这个大作业的时候,写不下去出去跑跑步,稳定了情绪之后,往往效率也高了上去。这就是磨刀不误砍柴工。
      最后是一次只做一个改动。因为同时修改两个错误,所做的修改可能引入微妙的错误。这些错误耦合起来,可能会导致程序陷入焦油坑。
       



  • 相关阅读:
    第十周作业
    课堂练习之十字链表
    第三次实验报告
    第九周学习
    队列课下作业
    第七周作业
    第五周作业总结(内含用Junit测试ArrayStack和LinkedStack课堂练习报告)
    20155336 《信息安全系统设计基础》课程总结
    2017-2018-1 20155336 《信息安全系统设计基础》第十四周学习总结
    2017-2018-1 20155336 《信息安全系统设计基础》第十三周学习总结
  • 原文地址:https://www.cnblogs.com/ustcldq/p/8666918.html
Copyright © 2020-2023  润新知