【读书笔记】《程序员修炼之道》前言+第一章

原创 2017年10月06日 09:04:45

前言

编程是一项充满了各种细节的工作,追踪这些细节需要专注。
本书告诉我们一怎样一种我们能够遵循的方式编程。
编程是一种技艺

让我想到了SICP中,作者将编程视为一种艺术

你不应该局限于任何特定的技术,而是应该拥有足够广博的背景和经验基础,以让你能在特定情况下选择好的解决方案。你的背景源自对计算机科学基本原理的理解,而你的经验来自广泛的实际项目。理论与实践结合起来。

我们不应该也不能仅仅满足一项技术的学习。也不能和学校的SB教育体系一样,天天增加JAVA的课时,把操作系统,数据结构一流的课程一再缩减。再说一遍,SB学校,急功近利。

你调整你的方法,以适应当前情形与环境。你判断对项目有影响的所有因素的相对重要性,并利用你的经验制定适宜的解决方案。你随着工作的进展持续不断地进行这样的活动。

没有东西是不变的,适合是最好的。

注重实效的程序员的特征:

  • 早期的采纳者/快速的改编者
  • 好奇
  • 批判的思考者
  • 有现实感
  • 多才多艺

我们应该多接触新技术,多试验。这样才能跟得上时代。就我自己来讲,在开始接触Java之后,也接触了一些Python,和机器学习。但是那时的我没有一门相对熟悉的技术,所以视野开阔了,但是问题还是很大。
好奇嘛,还是蛮好奇的。

提示1;
Care About Your Craft
提示2Think!About Your Work

注重实效的个体,大型的团队

软件的构造应该是工程学科。但是这并不排斥个人的技艺
我们,采集的只是石头,却必须时刻展望未来的大教堂——采石工人的信条

它是一个持续的过程

kaizen。每天为提炼你所拥有的技能而工作,为把新的工具增加到你的技能列表中而工作。

第一章:注重实效的哲学

1.我的代码让猫吃了

Provide Options,Don'tMake Lame Excuses

如果想要辩解的话,先考虑一下是否合理。如果需要帮助,那么先想办法自己解决,不要什么都要直接伸手

2.软件的熵

熵是一个来自物理学的概念,指的是某个系统中的“无序”的总量
当软件的无序增长是,程序员们称之为 software rot
有许多因素可以催生软件腐烂——破窗效益

Dont't Live with Broken Windows

不要留着破窗户(低劣的设计、错误的决策、或者是糟糕的代码)不修。发现一个就修一个。
实在没时间修理,就都标记在一个地方——要不系统一会这炸一会那炸。。。

3. 石头汤与煮青蛙

当项目遇到阻碍的时候:

设计出你可以合理要求的东西,好好开发它。一旦完成,就拿给大家看,让他们大吃一惊。然后说:我们增加,。。。。可能会更好。

问题:在大型企业里,轮不到小程序员当这个催化剂吧?我们需要往前走,发挥自己更大作用,这个时候才能拿出石头。

Be a Catalyst for change

可能村民被欺骗了,但是我们应该去识别别人画出的大饼,是不是靠谱,如果靠谱,为什么不尝试着去相信他,然后大家可能得到共赢

Remember the Big Picture

4.足够好的软件

使质量成为需求问题

在进行需求分析的时候,要分析质量问题。
不完美的代码哲学

5.你的知识资产

  • 定期投资
  • 多元化
  • 管理风险
  • 低买高卖
  • 重新评估和平衡
Invest Regularly in Your Knowledge Portfolio

学习的机会:

把找到答案视为对你个人的挑战,不要把问题搁在那里

批判的思考

批判地思考你独到的和听到的。你需要确保你的资产中的知识是准确的,并且没有受到供应商或媒体炒作的影响。

6.交流

知道你想要说什么

 没有有效的交流,一个好想法就只是一个无人关心的孤儿
规划出你想要说的东西。写出大纲。然后问你自己:“这是否讲清了我要说的所有内容?”提炼它。

了解你的听众

  • 你想让他们学到什么
  • 他们对你讲的什么感兴趣
  • 他们有多富有经验
  • 他们想要多少细节
  • 你想让谁拥有这些信息
  • 你如何促使他们听你说话?

选择时机

选择风格

让文档美观

让听众参与

做倾听者

It's Both What You Say and the Way You Say It
版权声明:本文为博主原创文章,未经博主允许不得转载。

『高效程序员的45个习惯:敏捷开发修炼之道』读书笔记

这是我近些日子的读书笔记。 电子书见:http://www.amazon.cn/mn/detailApp?asin=B00ALPRKJ8&tag=baiduiclickcn-23&ref=p...
  • sharetop
  • sharetop
  • 2014年10月20日 15:46
  • 1135

浅谈项目管理——《项目管理修炼之道》读后感

项目管理是一复杂的活,需要将经验、思想、方法、流程等拧成一股才能搞定,一直以来接受的项目管理方面的理论都比较零散,没有太多的系统性,这有坏处也有好处,坏处显而易见,无法有一个完整的项目管理理论的学习,...
  • happyqwz
  • happyqwz
  • 2014年09月04日 09:43
  • 2877

读书之《程序员修炼之道》

读书分享《程序员修炼之道》 0.0几篇序 读书之前首先看到的内容,让大家知道这不是一本烂书,本书从项目管理,软件架构和设计、代码编写和测试,各方面都有精彩的阐述。序中的重点内容: 《领悟程序员的哲学》...
  • wxx634897019
  • wxx634897019
  • 2015年03月11日 10:22
  • 1341

【读书笔记】程序员修炼之道

本书将告诉你怎样以一种你能够遵循的方式去编程。 Pragmatic:注重实效的程序员不仅仅要完成工作,而且要干得漂亮。他们应有的特征:早期的采纳者和快速的改编者、好奇、批判的思考者、有现实感、多才多艺...
  • hellokangning
  • hellokangning
  • 2013年08月04日 08:35
  • 634

程序员修炼之道(读书笔记):4.注重实效的偏执

按条约设计:前条件(precondition): 为了调用例程,必须为真的条件,例程的需求。在其前条件被违反时,例程绝不应该被调用。传递好数据是调用者的责任。后条件(postcondition): ...
  • he_world
  • he_world
  • 2016年09月17日 22:12
  • 190

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

第1章 敏捷——高效软件开发之道 第2章 态度决定一切 1 做事 2 欲速则不达 3 对事不对人 4 排除万难,奋勇前进 点评:本书一上来就强调了态度,也就是一个人的心态,树立正确的态度,保持积极...
  • sun2043430
  • sun2043430
  • 2013年09月20日 08:37
  • 907

程序员修炼之道(读书笔记):2.注重实效的途径

正交性:该术语用于表示某种不相依赖性或是解耦性。非正交系统的改变与控制更复杂是其固有的性质。当任何系统各组件互相高度依赖时,就不具有局部修正(local fix)这样的事情。设计:在程序设计的同时,还...
  • he_world
  • he_world
  • 2016年09月12日 23:22
  • 196

《程序员的修炼之道:从小工到专家》读书笔记一

《程序员的修炼之道:从小工到专家》Andrew Hunt ,David Thomas 著, Ward Cunningham 作序,同样为《软件开发者路线图:从学徒到高手》作序   源码下载地址:...
  • lqc1002000
  • lqc1002000
  • 2014年09月27日 09:28
  • 967

读书笔记-程序员修炼之道-注重实效的哲学(二)

石头汤与煮青蛙 村民的角度 足够好的软件 知道何时止步石头汤与煮青蛙 三个士兵从战场返回家乡,在路上饿了。他们看见前面有村庄,就来了精神—他们相信村民会给他们一顿饭吃。但是当他们到达那里,却发现门锁着...
  • biezhihua
  • biezhihua
  • 2015年03月09日 00:33
  • 1323

读书笔记摘要《程序员修炼之道》(不定期更新)

读书笔记摘要《程序员修炼之道》(不定期更新)
  • luojj26
  • luojj26
  • 2016年02月03日 00:34
  • 252
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【读书笔记】《程序员修炼之道》前言+第一章
举报原因:
原因补充:

(最多只允许输入30个字)