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

前言

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

让我想到了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
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_32641095/article/details/78163789
个人分类: 程序员修炼之道
上一篇【作业】《构建之法》第一章
下一篇EJB
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭