您的位置:首页 > 其它

read pragmatic programmer -- chapter6

2016-11-27 17:41 232 查看
第六章:当你编码时

tip31:靠巧合编程--作为一个开发者,我们工作在雷区里面,我们应该避免靠巧合编程,而应该深思熟虑的编程。

1.实现的偶然:在接到任务时,如果在不清楚代码为什么能够工作时,它只是刚好能够工作,一旦出现了bug,我们将会无从下手,因为我们根本就无法知道错误是在哪里发生的。当我们编写给别人调用的代码时,良好的模块化以及把实现隐藏在良好文档的小接口之后,

2.语境的偶然:假如我们在编写一个实用模块,刚好是在gui环境下编写,那么这个模块就该依赖于我们给定的gui吗?答案是否定的,巧合可以在所有层面上让我们误入歧途,在特定的语境下,我们很容易假定x是y的原因。

如果我们想要让我们编写代码所花的时间更少,我们在一开始就应该少制造错误,能够更加深思熟虑的去编程:

1.总是意识到我们在做什么,不要什么不明白就深陷其中。

2.不要盲目编程,在我们不了解的情况下,我们不能被巧合所误导

3.照着计划行事,在开始一个任务之前,我们应该有自己的计划,即使不是完美的,也应该是可行的

4.依靠可靠的事物,而不是巧合或者假定。

5.为假定设定文档

6.不只是要测试代码,而且要测试假定

7.工作划分优先级,把时间花在最重要的方面,如果我们的基本原则都是错误,那我们后面所做的都是毫无意义的。

8.不要做历史的奴隶,不能让已有的代码来支配将来的代码,如果不再适用,所有的代码都应该被替换。

tip32:算法速率--总是要优化我们算法的速率

tip33:重构--即重写、重做、重新架构。在我们遇到绊脚石时,代码不再合适。具有以下的特点,一旦发现我们都应该进行重构:

1.重复:违反了dry原则

2.非正交的设计:发现有些代码可以变更为正交的设计

3.过时的设计:需求更改了

4.性能:改善性能

重构是一项需要慎重、深思熟虑、小心进行的活动,要遵循以下的提示:

1.不要试图在重构的同时增加新的功能

2.在开始重构之前,确保拥有良好的测试,这样一旦改动破坏了任何东西,我们都能知道

3.采用短小、深思熟虑的步骤。

tip34:易于测试的代码--在我们编写了代码后,我们应该主动进行全面的测试。

tip35:邪恶的向导--不要使用不理解的向导代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: