程序员修炼之道读后感(六)

编程不是机械工具

 

靠巧合编程

避免靠巧合编程,不要依靠运气和偶然地成功,而要深思熟虑地编程;

巧合编程:实现地偶然;语境地偶然;隐含地假定;

Don’t Program by Coincidence.不要靠巧合编程

深思熟虑地编程

1.  总是意识到自己在做什么

2.  不要盲目地编程

3.  按照计划行事,不管计划写在哪里

4.  依靠可靠地事务

5.  为你地假定建立文档

6.  不要只是测试你的代码,还要测试你的假定

7.  为你的工作划分优先级

8.  不要让已有地代码支配将来的代码

 

算法的效率

推荐:Sedgewick关于算法的书

常识估算:

简单循环On);嵌套循环On*n;二分法Onlgn);组合:效率失控

Estimate the Order of Your Algorithms.估算你的算法的阶

Test Your Estimate.测试你的估算

 

重构

重写、重做和重新架构代码合起来,成为重构(refactoring

应该重构代码的条件:

1.  重复,违反DRY原则

2.  非正交设计

3.  过时的知识

4.  性能不好

Refactor Early,Refactor Often.早重构,常重构

如何进行重构:

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

2.  在开始重构之前,确保你拥有良好的测试;

3.  采取短小,深思熟虑的步骤

 

易于测试的代码

单元测试是对模块进行演练的代码,也是针对合约的测试

Design to Test.为测试而设计

测试驱动法:先测试代码,再进行模块测试

Print法——>即兴测试

Test Your Software,Or Your Users Will.测试你的软件,否则你的用户就得测试

 

邪恶的向导

慎用设计向导,否则那些自动生成的代码会让你崩溃

Don’t Use Wizard Code You Don’t UnderStand.不要使用你不理解的向导代码

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值