`

《卓有成效的程序员》读书笔记

 
阅读更多
   开篇:懒惰是程序员的优秀品质,他们无法容忍自己反复做同样的事情,无法容忍自己去做应该计算机做的事,无法容忍可以2个按键的操作却按了3个键来达到目的......

  《Be Productive Programmer》就是这样一本教你如何变懒的书,Neal Ford非常睿智的编排了这本书的目录,把书籍分为机制和实践的两部分。
   在机制部分,主要介绍了一些能帮助大家提升效率的工具,思想。个人从中收益的东西有:
1、Mac系统上使用QuickSilver加快程序的启动。
2、尽量少的使用鼠标,甚至都不要使用上下左右的按键,因为这些手势都会导致效率的下降。
3、使用Vim作为文本编辑器。
4、使用多重剪贴板,因为环境切换回消耗时间,jumpcut就是其中的一个好工具。
5、记住历史,历史的命令,上次的操作目录等等,防止反复输入。
6、尽量使用命令行,图形界面很杀时间,华而不实。
7,IntelliJ中使用KeyPrompter来帮助记住快捷键,IntelliJ的快捷键会极大的提升我们的编码效率。
8、使用宏来记录一段反复使用的计算机操作。
9、做事情的时候专注,隔离干扰。
10、搜索优于导航,找东西的时候不要人肉遍历,使用内置的搜索会极大的提高效率。搜索时对正则表达式的理解会极大的提升你的效率。
11、多桌面的工作环境,一个桌面专注于做一件事。
12、自动化一切能自动化的东西
13、注意自动化时的“yakshaving”问题,一旦发现自动化耗时过多,果断停住,回顾。
14、一切跟你个人环境设置的项目文件都应该放到版本管理中。
15、如果不实时更新文档还不如没有文档。
16、把代码的提交信息尽量写详细,便于项目组成员之间的沟通。
17、白板+相机强于任何的Case工具。使用工具的成本一定要纳入项目考虑。
18、不要重复,重复是软件开发中的最大阻力,是写出良好代码的根本原则。

   在实践部分,主要讲了一些在实践过程中自己总结的一些理念。
1、TDD的开发实践,消除功能浪费。
2、把注释重构成代码,需要写注释的代码意味着需要重构。
3、以TDD开发的代码应保持100%的测试覆盖率,没覆盖的代码意味着不应该存在,因为没有消费者。
4、使用CheckStyle,FIndbug,PMD帮助分析代码中潜在的问题。
5、不要破坏封装,只开放需要开放的成员变量。
6、构造函数的含义,没有状态的对象存在是没有意义的
7、慎用单例,单例对象自己管理自己的实例,显得有点怪,可通过工厂方法管理。
8、不要写出类似JDK的Calendar的代码,语义不明,自以为是的替客户做决定。
9、只开发现在需要的功能,不要开发将来要用的功能,不要给软件贴金使用最新的技术和框架,只选择当前业务需要的技术,如无必要,切勿给软件增加复杂度。
10、软件开发的第一步是沟通博弈,弄清楚问题远比解决问题重要。
11、区分事物的本质属性和附加属性。抓住事物的本质属性,去除附加属性可以让事情变简单。
12、学会质疑传统的方法,以开阔的思维解决问题。
13、组合方法,让方法看起来像一段连贯的话,方法的行数要少于15行。
14、每个方法的所有代码都应该属于同一级的抽象层次。
15、把所有的实现细节都封装在公共方法之外,对外提供只是方法的功能说明。
16、学习多种语言,根据每个语言的特点选择合适的语言解决问题。
17、好的工具可以提高效率,复杂的工具尽快抛弃,把所有的功能,行为都抱在可测试的代码当中。


分享到:
评论

相关推荐

    《卓有成效的程序员》

    《卓有成效的程序员》是一本面向广大程序员的实践指南,旨在帮助他们提升工作效率和代码质量。这本书结合了多种编程技巧、项目管理策略以及个人生产力的提升方法,为程序员提供了全面而实用的知识。 首先,书中的...

    卓有成效的程序员书籍

    卓有成效的程序员卓有成效的程序员卓有成效的程序员卓有成效的程序员

    卓有成效的程序员 卓有成效的程序员

    《卓有成效的程序员》是一本探讨如何提升程序员工作效率和质量的专业书籍,由Neal Ford著,ThoughtWorks(中国)公司翻译。这本书旨在揭示那些高效程序员的思考模式和工作习惯,帮助程序员们提升自身的专业素养,...

    卓有成效的程序员(精选版)

    卓有成效的程序员(精选版) ,PDF格式。 本书是《卓有成效的程序员》的精选版,节选了原书中比较有代表性的四章。这不是一本帮助最终用户更有效率使用计算机的书。这是一本写给程序员、关于如何提高生产效率的书,这...

    卓有成效的程序员.pdf

    《卓有成效的程序员》就是讲述如何在开发软件的过程中变得更加高效。同时,《卓有成效的程序员》的讲述将会跨语言和操作系统:很多技巧的讲述都会伴随多种程序语言的例子,并且会跨越三种主要的操作系统,Windows...

    《卓有成效的程序员》 迷你书

    通过阅读《卓有成效的程序员》迷你书,程序员们可以学习到这些重要的话题,从而提升自己的专业技能,更好地适应不断发展的IT行业。这本书的PDF格式使得读者可以在任何设备上方便地获取和阅读这些宝贵的知识。

    卓有成效的程序员 新版下载

    《卓有成效的程序员》迷你书是一本针对程序员提升工作效率和生产力的重要读物。这本书旨在帮助程序员在日常工作中更好地管理时间、优化代码、提升团队协作效率以及掌握有效的学习方法,从而实现个人技能与团队整体...

    《卓有成效的程序员》中文版电子书

    通过阅读《卓有成效的程序员》,开发者不仅能掌握提升效率的具体技巧,还能了解到一个成功程序员应具备的心态和习惯。书中的案例研究和实践建议都是作者多年经验的结晶,对于任何希望在软件开发领域有所建树的人来说...

    卓有成效的程序员

    卓有成效的程序员 精选版

    卓有成效的程序员高清完整版

    这是一本少有的高清完整版,此书不看,是程序员的终身遗憾!

    <卓有成效的程序员>

    《卓有成效的程序员》是一本面向广大程序员的实践指南,旨在帮助他们提升工作效率,优化...通过阅读这本书,程序员不仅可以提升技术水平,还能学会如何在团队中更好地发挥自己的价值,成为一名真正卓有成效的开发者。

    [13]卓有成效的程序员.zip上位机开发VC串口学习资料源码下载

    [13]卓有成效的程序员.zip上位机开发VC串口学习资料源码下载[13]卓有成效的程序员.zip上位机开发VC串口学习资料源码下载[13]卓有成效的程序员.zip上位机开发VC串口学习资料源码下载[13]卓有成效的程序员.zip上位机...

    The Productive Programmer-卓有成效的程序员

    《The Productive Programmer》这本书是为那些希望提升编程效率、改善工作流程的程序员量身定制的指南。书中涵盖了大量实用的技巧、工具和方法,旨在帮助程序员提高生产力,成为更有效的开发者。 首先,书中的核心...

    免费下载-卓有成效的程序员

    标题中的“卓有成效的程序员”是一本书的名字,这本书旨在帮助程序员提升工作效率和产出质量。在编程领域,卓有成效通常意味着能够有效地解决问题,编写出高效、可维护的代码,并且能够持续学习和适应技术的发展。这...

    技术资料分享卓有成效的程序员技术资料.zip

    技术资料分享卓有成效的程序员技术资料.zip

Global site tag (gtag.js) - Google Analytics