The following list contains the areas in which you need to be proficient to become a great—or at least a better—debugger/developer:
下面的列表包含了, 如果你想成为一个伟大的,至少是优秀的Debugger/开发者,需要熟练掌握的一些技能:· Your project //你的项目背景
作者在这里强调了,你对项目整体结构了解的极端重要性,如果你不能对你所做的项目的逻辑架构有一个整体性的了解,你能迅速的找到问题的所在?
· Your language //你所使用的程序设计语言
你还需要了解你所用程序设计语言的内部机理,比如在.net里面,为什么有了Int32.Parse(),为什么还要TryParse(),如果你对异常处理机制的性能代价没有了解的话,你能理解吗?
· Your technology/tools //你所使用的技术以及工具
比如你在做一个以word为开发平台的插件程序或者自动化程序,如果你能充分理解word的对象模型,我想会对你开发调试工作有极大的帮助,另外如果你对Visual Studio精通的话,你的工作效率还会有极大的提高。
· Your operating system/environment //你的软件运行的操作系统和环境
在与系统的COM组件交互,比如CLR hosting, 或者写Visual Studio Addin的时候,如果你对COM对象的基本机制不了解,出了错你不晕才怪!另外如果不懂win32的基本知识,你能用好MFC? 对于操作系统的精确理解也对你写出高性能的软件非常的有帮助。