这两天花了点时间把《程序员修炼之道》这本书读了,本来估计要一周时间才能读完,读了才发现作者绝对是人才啊,书写的生动有趣,一口气就读完了。随便摘录一下。

1.做一个靠谱的程序员,纯粹的程序员,脱离了低级趣味的程序员

本书一开篇就提出要做一个靠谱程序员,原文是pragmatic,我觉得翻译成靠谱很靠谱。靠谱的程序员应该有以下几个特点

I.对全局负责,而不是各种找借口推脱。在找借口之前想想别人听了这个借口之后会怎么鄙视你。。。作者认为就算是不可挽回的问题,也不要找借口,而是告诉别人替代的解决方案。

II.防微杜渐,不要放纵小问题。下面郑重的提出一个让我眼前一亮的“破窗理论”:

破窗理论:社会学研究人员发现,导致一栋楼变得废弃的原因不是什么很大的问题,而是始于一扇从未被修复的破窗子。这扇破窗子不断的提醒楼里的人员这栋楼已经废弃了,没搞头了,所以大家都可以随便乱搞了。所以这栋楼就废了。软件开发也是一样,不能容忍有瑕疵的乱写的代码,这会废掉这个工程的。

III.对变化敏感,不要做被煮熟的青蛙。

IV.做恰到好处的软件,知道什么时候停止。作者举了一个很生动的例子。程序员就像画家一样,开始的时候往一块白板上面涂颜料画,先画框架,再画细节,不断的涂涂抹抹之后画作可能已经完成了,但如果作者没有意识到,还在不断的添加颜料,那么结果只能是化蛇添足了,反而毁了这幅作品。

V.重视知识的积累和与人交流。

2、对待bug的态度
  有些开发人员,遇到bug,总先要辩解一下,“不可能”“不会吧”“我怎么没发现”“你操作有问题吧”,就是不想承认。有的人则是出了问题先怀疑操作系统、怀疑库函数、怀疑编译器、怀疑硬盘、怀疑网络,就是不怀疑自己写的代码有问题。当然不排除系统可能会有问题,可是这比买彩票中500万的概率还要小,还是先从自己的代码找原因吧。

3、Don't Assume It —-- Prove It
  经常遇到这种情况,开发人员遇到了一个bug,查了一下,觉得可能是这个原因,好,马上修改代码,提交,Done!其实有很多时候bug根本没有被修正,首先要做的是重现bug,重现的步骤越简单越好,修改完再用同样的步骤,看bug是否不再出现,否则你怎么知道bug已经被fix了呢。

4、Crash Early Crash, Don't Trash.
  尽早暴露问题,而不是搞的一团糟。问题出现的越晚,你要修改的代码就越多,

5、Don't Program by Coincidence
  代码为什么正常工作?不知道!反正写了那么多,看起来是工作正常的。很多时候如果我们说不清楚,那是说明自己还没有完全理解这个问题,代码也只是幸运的运行起来了,深层的bug隐藏在里面,只是还没有暴露出来,总有一天会以更具破坏性的方式去爆发,“出来混,总是要还的”。开发人员也常有侥幸心里,有时候自己测试也遇到了问题,可是不好重现,大多数情况下又是正常的,就会想“在客户哪儿应该不会出问题”

6、Ruthless Testing --- 无情测试
  “Extreme Programming”也有类似的口号“continuous integration and relentless testing”。“多数开发人员憎恨测试。他们倾向于小心翼翼地测试,知道代码哪儿会出问题,就下意识避开” 很多问题,只要稍微用心去测,就会测出来,而不至于到用户那儿再暴露出来。这一点也是我们需要加强的,建立测试的环境和机制,让问题尽早暴露出来。

这里只是摘录了一小部分有意思的内容,这本书读起来很有意思,如果你感兴趣,那就弄本来读读吧~

by 林萌

转载于:https://www.cnblogs.com/meng-meng/archive/2011/10/28/2227525.html

做靠谱的程序员--《程序员修炼之道》读书报告相关推荐

  1. 程序员修炼之道---读书随笔1

    终于开始读<程序员修炼之道>这本书了,初看这本书的名字,有点以前的道士修炼法术的意思,觉得很是好奇,作为一名程序员,该如何修炼我们自己呢? 这本书涵盖的主题从个人责任.职业发展,直到用于使 ...

  2. 程序员修炼之道--读书简记

    前言 1,关注你的技艺 2,思考!思考你的工作 3,这是一个持续的过程 第一章 务实的哲学 1,人生是你的,你有选择权 人生是你自己的,是你在拥有.经营和创造 2,软件的熵:破窗理论 在城市中心,有些 ...

  3. 专访刘伟:软件开发人员的内功修炼之道

    摘要:数学修养对软件开发之路起着什么作用?码农如何修炼自己的内功并成长为优秀的软件开发员?带着相关思考,社区之星第10期采访了中南大学副教授--刘伟.他对数学修养.设计模式.软件架构和重构方面的独特见 ...

  4. 软件开发人员的内功修炼之道

    摘要:数学修养对软件开发之路起着什么作用?码农如何修炼自己的内功并成长为优秀的软件开发员?带着相关思考,社区之星第10期采访了中南大学副教授--刘伟.他对数学修养.设计模式.软件架构和重构方面的独特见 ...

  5. 复制:高效程序员的45个习惯敏捷开发修炼之道 读书笔记

    为什么80%的码农都做不了架构师?>>>    第一章 敏捷-高效软件开发之道 什么是敏捷开发方法? 从语法简单到c语言,从面向过程到面向对象语言到语言标准的建立,再到设计模式,以及 ...

  6. 程序员高管修炼之道!

    一个人身上自带"贵气"的二种祥兆,你若有一种,就要恭喜了一个人身上自带"贵气"的二种祥兆,你若有一种,就<围炉夜话>第212章中说道:宋代大儒程颐教 ...

  7. 如何成为靠谱的DotNet/C#程序员 (sunxiunan)(zz)

    如何成为靠谱的DotNet/C#程序员(SUNXIUNAN) //z 2012-3-1 10:26:43 AM IS2120@CSDN 1 确定目标 微软系开发涉及面太广,所以你得先确定自己在哪方面有 ...

  8. 抖音程序员表白代码c语言,程序员过情人节:教你做抖音同款表白程序!

    原标题:程序员过情人节:教你做抖音同款表白程序! 最近抖音上一个很简单的vbs告白编程代码视频火了,双击这个编程代码编写的软件后会弹出一个窗口显示一段话,点击确定后会显示下一句.这个小程序很有意思也很 ...

  9. 知识资产投资——《程序员修炼之道》的建议

    <程序员修炼之道:从小工到专家>曾经获得第14届JOLT大奖,很多程序员可能都知道甚至看过.我还没看完,初步给我留下三个印象: 书上的例子还比较有趣,仔细品位又是觉得很有哲理,比如那个&q ...

最新文章

  1. python中如何在写文件之前删除文件内容_Python:文件的读取、创建、追加、删除、清空...
  2. nginx 修改并隐藏版本号
  3. system.img格式打包学习
  4. 针对大表 设计高效的存储过程【原理篇】 附最差性能sql语句进化过程客串
  5. mpvue小程序以及微信直播踩坑总结
  6. AMD 发布第二代EPYC处理器,重新定义数据中心新标准
  7. 【测试】身份证的前世今生
  8. 前端开发知识点解答-HTML-面试
  9. python计算文件大小的方法_使用Python计算目录的大小?
  10. WP7中,如何把7.1的项目改为7.0的
  11. Pyhton-Web框架之【Django】
  12. CSS3 filter属性学习
  13. RabbitMQ实战:理解消息通信
  14. java流水号_Java生成流水号
  15. 6. update更新数据的4种方法
  16. C/C++黑魔法-另类switch
  17. sql server(MsSql)字段命名,表命名,视图命名,SQL语句书写参考
  18. 台式计算机的8g,win10系统台式机配置8G内存显示可用内存只有3.4G的教程
  19. gensim使用汇总
  20. win7怎么装python_如何在win7上面安装python的包

热门文章

  1. jmap java opts_jmap --查看JVM内存使用详情
  2. ios加载本地游戏html,使用WKWebView iOS加载本地HTML / Javascript
  3. python做股票系统_GitHub - hetingqin/stock: stock,股票系统。使用python进行开发。
  4. 数据库原理学习笔记(二)数据库范式
  5. Android开源底部导航,一个开源JPTabBar for Android,炫酷的底部导航栏
  6. oracle 意外事件,Oracle数据库REDO损坏ora-00333修复手札
  7. POJ 1064 -- Cable master(二分)
  8. C++ 程序内存泄漏检测方法
  9. SCII控制字确切含义
  10. react 判断图片是否加载完成_如何判断图片(img)是否已经加载成功--基于react...