《高效能程序员的修炼》

2020/05/30 reads 共 1857 字,约 6 分钟

读书笔记,涵盖编程入门、团队协作、高效工作、用户设计、安全基础等多方面。

第1章 入门须知

  • 软件开发的整个历程,就是程序员耗尽毕生精力去编写代码,以使其他人能从代码编写工作中解脱出来。不是每个人都需要知道如何去编程。
  • 跟钱打交道的人往往会挣很多钱,看看华尔街就知道了。
  • 预测未来最好的方法是创造未来。——Kay
  • 杰出程序员跟普通程序员的区别不在于编程语言,而在于能否把想法表达清楚。通过说服别人达成协作,通过清晰的注释和技术文档让别人读懂代码。
  • 人需要花一生的时间去学习如何有效的写作。可以从写博客或从 StackOverflow 写回答开始,坚持每周练习几次。
  • 每个人都应该大量写作:博客、书、StackOverflow、电子邮件。写下来,然后回过头去斟酌。这种书面沟通有助于理清思维。——Jon Skeet

第2章 把一堆烂事搞定的艺术

  • 每一天,你一定要一起床就热情澎湃。否则,你就只是在打工。
  • 教同伴是提高我们自己的专业水平最好的途径之一。
  • 如果你想造一艘船,就不要催着工人们去收集木材——你应该教会他们的是对无边无际大海的渴望。
  • 迭代的速度胜过迭代的质量。
  • 编程需要在大脑里同时记住很多东西。请远离干扰,避免同时做多个项目。

第3章 高效编程之原则

  • 无论你的软件出现什么问题,请总是假定问题出在你的代码上
  • 你越早认识到”你就是自己最大的敌人”,你的处境就会越好。
  • 最好的代码就是完全没有代码。 每一行新代码都需要被调试、被阅读、被维护。
  • 如果你热爱编程,那就应该惜墨如金。
  • 避免写注释——把时间花在实现代码上。
  • 源代码才是最终的事实,是最确定、最新的文档。
  • “向橡皮鸭求助”:向一个假想的人透彻详尽地提问来解决问题。
  • 与其担心你的大创意是否足够出色,不如担心你能执行得有多好。
  • 执行力意味着专注于构成应用程序的所有微小细节。
  • 团队里的每个人都应能通过”电梯测试”——60秒内清晰解释他们在做什么。
  • 性能是一个特性,能帮助你克敌制胜。

第4章 招聘程序员须得其法

  • 在雅达利,我们聘用一个人的标准是看他的业余爱好,而不是学习成绩。
  • 应聘者对公司文化的认同往往比高超的编程技能更重要。
  • 不要让候选人主导面试过程。
  • 电话面试的目的是把候选人从舒适区推出去,问他们没见过的问题,了解面对新事物时的反应。

第5章 促使团队紧密协作

  • 要想赢得信誉和尊敬,最好的方法就是努力工作并取得实实在在的成绩
  • 如果你想建议什么,就应该为此付出实际行动,做好充分准备。
  • 最有效的技术领导就是以身作则
  • 只要保证有超过一双眼睛在看你写的代码(结对编程或代码审查),你就一定会开发出更好的软件。
  • 会议是浪费工作时间的最佳去处。
  • 你不必和团队里的每个人都成为朋友。
  • 永远不要低估真正和另一个人通话的力量,尤其远程办公时。
  • 远程开发代表着未来。

第6章 高效工作场所

  • 每个程序员都应该有两台显示器、一台快速的电脑、自己选择的鼠标和键盘、一把舒适的椅子、快速互联网接入、安静的工作环境。
  • 购买一张优质的桌子和一把优质的椅子,是你能做的最好的投资之一。
  • 拥有更多的显示空间确实会让工作更有效率。

第7章 设计时要把用户放在心上

  • 令人赏心悦目的产品和让人勉强容忍的产品的区别,在于细节有没有被做好
  • 从用户角度来说,用户界面就代表了你的软件。
  • 用户界面设计优先于软件。
  • 理想情况下,搜索应该只返回一个结果。
  • 用户不会阅读你放在屏幕上的任何东西——他们只读取完成任务的、最少量的文字。
  • 把最重要的内容写在尽可能靠近页面顶部的地方。
  • 终极的单元测试是:用户是否想要使用你的软件。
  • 除非你把软件发布出去,否则你无法知道那些被做砸的东西到底是什么。
  • 请尽早发布你的软件,即使第一版做得很差劲。

第8章 安全基础:保护用户数据

  • 登录过的网站越多,某个网站被人攻破的概率也就越大。
  • 限制每个用户的登录尝试次数是安全领域的”101”。

第9章 加强代码测试

  • 把开发人员带到”战壕”里面去至关重要,因为客户才是真正与代码休戚与共的人。
  • 要避免失败,最好的办法是不断的尝试失败
  • 同级之间的代码评审是提高代码质量的最大贡献。
  • 任何想要打印到屏幕或输出给调试器的信息,都应该改写成单元测试。
  • 如果不找来真正的用户做可用性测试,你无法知道程序能否正常工作。
  • 快速失败——碰到问题马上失败,而不是自动绕开问题。

第10章 创建并管理社区

  • 倾听社区的声音,但别被它们牵着鼻子走。
  • 优秀的艺术家善于模仿,伟大的艺术家善于剽窃。
  • 沉默以对是最残酷的惩罚方式。

第11章 揭露营销伎俩

  • 禀赋效应:人们一旦拥有某项物品后,对该物品价值的评价要比拥有之前大大增加。

第12章 轻重缓急,了然于心

  • 要搞明白你没日没夜的拼命工作到底是为了什么。
  • 经历胜过物质。

文档信息

Search

    Table of Contents