zoukankan      html  css  js  c++  java
  • 《程序员修炼之道:从小工到专家》阅读笔记01

    注重实效的哲学

    在所有的弱点中,最大的弱点就是害怕暴露弱点。——J.B.Bossuet,Politics from Holy Writ,1709

      注重实效的程序员对他自己的职业生涯负责,并且不害怕承认无知或错误

    责任  

      责任是你主动担负的东西。你承诺确保某件事情正确完成,但你不一定能直接控制事情的每一个反面,除了尽你所能之外,你必须分析风险是否超出了你的控制。既然选择了,就必须对自己的东西负责,如果事情没有完成,直接告诉他们为什么某事做不到,为何耽搁,为何出现问题。不要推脱,既然没完成,就要如实说明,但是在自己说明之前,要在自己脑海里想好要怎么说,上级会有什么反应,回头又该怎么说。

    提供各种选择,不要找蹩脚的借口。

    软件的熵

      开发项目时的心里是十分重要的事情,尽管制定了最好的计划,拥有最好的开发者,项目在其生命周期中仍可能遭遇毁灭和衰败、而另外有一些项目,尽管遇到巨大的困难和接连而来的挫折,却成功地击败自然的无倾向,设法取得了相当好的结果。

    不要容忍破窗户。

      不要留着“破窗户”(低劣的设计,错误决策,或糟糕的代码)不修,发现一个修一个,如果没有足够的时间进行适当的修理,就用模板把他钉起来。但是千万不要萌生这样的可怕想法,“这些代码的其余部分也是垃圾,我只要照着做就行了。”项目在之前是否一直很好,并没有什么关系。如果你发现你所在的团队里的项目代码十分漂亮——编写整洁、设计良好、并且很优雅——你就很可能会格外注意不去把他弄脏,这是一种效应。所以平时要往好的方面去想。

    石头汤煮青蛙

      在石头汤的故事里有两层寓意。士兵戏弄了村民,他们利用村民的好奇,从他们哪里弄到了食物。但更重要的是,士兵充当催化剂,把村民团结起来,和他们一起做到了他们自己本来做不到的事情——一项写作的成果,最后每个人都是赢家。

    做变化的催化剂。

    记住大图景。

    足够好的软件

      欲求更好,常把好事变糟——李尔王 1.4

       使质量成为需求问题。

      你常常会处在需要进行权衡的情形中,让人惊奇的是,许多用户宁愿在今天用上有一些“毛边”的软件,也不愿意等待一年后的多媒体版本,许多预算吃紧的IT部门都会统一这样的说法。今天的了不起的软件常常比明天的完美软件更可取。如果你给用户某样东西,让他们及早使用,他们的反馈常常会把你引向更好的最终解决方案。

      在这方面其实感觉还是挺不错的,有了新的思路,软件是服务于用户的,靠的是用户的需求,而这种依靠用户完善的方法也不错,但是之前已有的功能肯定是经过测试的,这是最低的要求,如果不能实现这个,那这个软件也不会变成最美好的。

    你的知识资产

    知识上的投资总能得到最好的回报——本杰明·富兰克林对于自己的知识投资要做到:

      定期投资:及时为自己的知识资产投资,即使投资量很小,习惯自身也和总量一样重要。

      多元化:知道的不同的事情越多,你就越有价值,学习多元化。

      管理风险:不要把你所有的技术鸡蛋放在一个篮子里。

      低买高卖:在新兴的技术流行之前学习他可能就和找到被低估的股票一样困难,但所得到的收益就和那样的股票带来的收益一样。

      重新评估和平衡:这是一个非常动荡的行业,上个月开始研究的热门技术现在也许像石头一样冰冷,也许你需要重温一下你有一阵子没用的数据库技术就能获得新职位……

    定期为你的资产投资

    目标:

    • 每年至少学习一种新语言。
    • 每季度阅读一本技术书籍。
    • 也要阅读非技术书籍。
    • 上课。
    • 参加本地用户组织。
    • 试验不同的环境。
    • 跟上潮流。
    • 上网。

    交流

      我相信,被大量比被忽略要好。——Mae West,Belle of the Nineties,1934

    • 知道你想说什么
    • 了解你的听众
    • 选择时机
    • 选择风格
    • 让文档美观
    • 让听众参与
    • 做倾听者
    • 回复他人

      交流是行业不可缺少的,包括与团队的交流,也有对用户的交流,对不同的人采用的交流态度、方式肯定也是不一样的,这就要求我们要会说,知道怎么说,不能光知道怎么说却说不出来,这样也是很难受的,准确表达自己的意思和让对方接受我们的想法是不一样的。

  • 相关阅读:
    c#自动更新+安装程序的制作
    VS2013项目受源代码管理向源代码管理注册此项目时出错
    WinDbg配置和使用基础
    InstallShield Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序)
    PowerDesigner 如何生成数据库更新脚本
    用户故事(User Story)
    Troubleshooting Record and Playback issues in Coded UI Test
    Coded UI
    compare two oracle database schemas
    How to: Use Schema Compare to Compare Different Database Definitions
  • 原文地址:https://www.cnblogs.com/flw0322/p/11063917.html
Copyright © 2011-2022 走看看