-
2009-08-14
《程序员修炼之道》 第三章 基本工具 - [新知随笔]
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://liuyangsl.blogbus.com/logs/44157663.html
1. 纯文本的威力
用纯文本保存知识,这样可以方便地在各种环境下使用和管理。
威力:
<a> 不会过时:即使使用纯文本数据的应用已经不存在了,这些数据仍可以被其他的应用使用。
<b> 杠杆作用:每一种计算机工具都可以处理纯文本。(Unix系统更是纯文本成功的范例)
<c> 容易测试:很方便修改纯文本的输入,纯文本的输出结果也易于分析。
缺点:
需要较大空间。
解析处理的时候花费更大的计算机资源代价。
容易暴露系统数据内容给用户。
纯文本是最通行无阻的数据标准。
----------------------------------------------------------------------------------
2. 使用shell
shell是程序员的工作台,在shell上操作各种工具。
虽然目前大多数应用都是基于GUI界面来进行的,但是GUI的缺点也显而易见:
GUI所提供的功能,受到设计者想法的局限。
而shell可以通过用户使用不同命令的组合,来实现功能组合定制。
例如在本地文件条件搜索的时候,shell命令就非常简洁快速。
UWIN:windows下的unix开发环境。
----------------------------------------------------------------------------------
3. 强力编辑
精通一种编辑器,用它来处理所有文本,而不要使用很多编辑器去处理不同文本。
学习编辑器的快捷特性和功能特点,找到最适合自己工作的编辑器。
所使用的编辑器的特性,和熟练程度,将直接影响到生产效率。
某些编辑器不仅能智能地控制文本格式、用颜色区分内容,更可以定义模板。
----------------------------------------------------------------------------------
4. 源码控制
源码控制能跟踪源码和文档中的每一项变化,提供多级撤销和版本恢复功能。
如(SVN)
----------------------------------------------------------------------------------
5. 调试
专注于修正问题,而不是发出指责。
放松下来,不要恐慌。
bug报告的准确性很难保证,留意不要被bug报告误导。为了明确情况,最好和测试者直接交流。
重现业务中的bug,使过程数据可视化,跟踪调试。
必须要能够明确地解释出所检查的每行代码。
bug往往混迹与我们编写的代码、第三方库、运行环境的模糊地带,不要急于归咎于第三方或系统。
----------------------------------------------------------------------------------
6. 代码生成器
当我们总是要在不同的语境中编写功能相同的代码时,应该编写一个代码生成器来替我们完成重复的工作。
(1)被动代码生成器
参数话模板,根据一组输入生成给定的输出形式。
可以用于:创建新的源文件、生成制式注释、在编程语言之间进行一次性转换、生成计算时间昂贵的查找表或其他资源。
(2)主动代码生成器
就像在“防止重复”的原则中提到的一样,主动代码生成器用于把源数据转化为适用于当前代码环境的结构。
生成的代码是可以随意抛弃的。
让输入的数据格式保持简单,可以简化代码生成器的构造。随机文章:
《程序员修炼之道》 第八章 注重实效的项目 2009-08-19《程序员修炼之道》 第七章 在项目开始之前 2009-08-19《程序员修炼之道》 第六章 当你编码时 2009-08-19《程序员修炼之道》 第五章 弯曲或折断 2009-08-18《程序员修炼之道》 第四章 注重实效的偏执 2009-08-17
收藏到:Del.icio.us







