一些经验(04年12月28日~05年1月14日)

时间:2021-06-28 11:49:35

1228

  • 许多与工作本身无关的东西,也需要留心。

  • 编译器错误(Compiler Error)第一规则

第一个被列出的编译器错误总是真实错误,而其后的相关错误未必 实。

  • 编译器错误第二规则

一个编译器错误可能由源代码中任何一行早于编译器所指定行数的语句所引起;但是,他一定不会由在该行数之后的语句引起。

  • 调试的七项原则:“臭虫”是猎物。应通过仔细观察了解它们的习性,从而追踪并抓住它们。

    • 选择战场定义并控制自己的调试、检测设置。

    • 抛开不必要的东西简化测试中的系统。

    • 全力以赴解决问题“没有”并非正确的答案。对于一个工程人员,在产品中留有缺陷是不可思议的(过分的)。只有管理层和销售部门才能作出发布仍带有已知缺陷的产品的决定。

    • 自我松弛与释放:放开所有的参数(束缚),阐释设计及实现的附件会阻碍进程。(不十分认同)

    • 当一切看起来希望渺茫时…喝杯咖啡休息一下。稍事休息并做些感兴趣的活动,转换一下思维以叙及能量。

    • 压缩时间:让你的思维能超越时间的尺度工作。在更改测试程序和系统参数中找到缩短时间的办法。

    • 别把自己推向前台:千万别急着得出结论,并抢着发布它们。


  • 三点个人态度:调试进程的成功与你同在。以下的三个个人态度是你能独自导引并完全掌控的要素。

  1. 千万别高估自己(过份自信)。高估自己必然会产生误导,并走错方向。自负很可能会使你有这样的假设:“这不可能是我的错,在别处找找”或“我知道这就是问题,所以不必验证了”。别作无意义的辩护。这样你才能保持头脑的灵活、开放。
  2. 有无穷的耐心。耐心和精神被消减,将会使你失去应付问题所必要的清醒。你可能偶尔毫不费力就能解决某个问题,但你也应该尽量善于使用那些有系统的甚至有时有些费时的方法。放弃,选取捷径,以及做一些无根据、无保障的假设,是失去耐心的三个最常见结果。
  3. 有无限的能力应付即席操作。这种机动能力是极其重要的。你正给“臭虫”设置陷阱。如果它避开了,你必须即席找到一个更聪明的办法。非常常见的,你可能会被要求用一些不恰当的工具设置陷阱。但是,不论如何,别让这种即席操作变成整个项目!”——“Mastering the Art of Test & Debug


1230

  • 从内存的角度看,封装的访问模式(是面向对象编程思想的一个重要特色)的出现是自然而然的演进。


200513

  • 可能是近来密集休息的缘故,对做事感觉有些不兴奋。

  • 不管如何,新年,新开始,新的计划,以及新的希望。

  • 保持纪录实时的开发日志以用来分析、每日的工作总结以更有效地归纳。

  • 改善阅读习惯,组织好的机构和框架加以记忆。

  • 很有趣的是,大部分的开发人都有顿悟的经验。


14

  • 对产生错误的原因加以重视!


16

  • 由于对一些概念、结构以及流程的理解不清楚,实际的进程大大的延缓。


17

  • 自从进入了职业领域,我发现身边出现了更多的机会和诱惑,生活的轨迹也渐进开放。要把持住各式的平衡,仔细、谨慎的做好计划。

  • 我感到我遇到了瓶颈:新鲜感已过,陷入了一些让人心烦的“臭虫”中。——我想,这对我非常的严重,应该认真对待。

  • 应该接受更多的科学态度作为自己的生活准则:准确,客观,有实验精神,有批判又善于改正的态度。


110

  • 如果将一个临时对象(temporary object)传给一个以某对象引用为参数的函数,那么该引用必须是常型(const reference)。


111

  • 在日志文件中,给每一条目一个统一标准的序列号会更便于记录和管理,如yy_mm_dd_sn


114

  • 在数据结构上,可以从单变量的视角转向结构的视角。