前言

作为程序员,其能力可分为两种:

  • 技术能力,对语言的理解,对所在技术栈中技术的理解,这类能力可称为外功。
  • 思维的修炼,工作效率提升, 对代码的理解,对架构的理解,此类能力可成为内功。

内功和语言平台无关,修内功对于程序员总体的能力提升有潜移默化的作用

本文整理了行业内经典的书籍,工作之余不妨拿来研读。

职业生涯篇

如何理解软件这个行业,行业内的大师的职业轨迹是如何的? 作为程序员要关注哪些内容可以让自己的职业生涯之路走的一帆风顺? 这一部分便会介绍这类书籍。

程序员修炼之道 The Pragmatic Programmer

《程序员修炼之道》由一系列的独立的部分组成,涵盖的主题从个人责任、职业发展,直到用于使代码保持灵活、并且易于改编和复用的各种架构技术。利用许多富有娱乐性的奇闻轶事、有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读。

书里讲到很多故事,教你如何一步一步从“菜鸟”转变成大牛。成为一名“大家”需要哪些能力。经过实践和总结,诙谐的讲述出来。

我编程,我快乐 The Passionate Programmer

要在当今的IT职场取得成功,必须像经营企业那样对待你的事业。在本书中,你将学到如何规划自己的职业生涯,让它向着你选择的目标前进,使人生更快乐、更美好。 作者运用其独特的思维方式,启发程序员不能只注重技能上的提高,还要关注自己的职业发展。书中涉及新旧技术的取舍、技术与业务的关系、技术是要专精还是要广博等,相信这也是长久以来困扰你的问题。带着这些问题去阅读此书,定会受益良多。

此外,本书中的每一章都包含一篇或几篇各领域成功人士的文章,让你直接了解他们如何规划自己的职业生涯!

中文书名看起来很山寨,但实际的内容非常棒,比如做“团队中最差的人”等等。如果你想要在这个行业走下去,热情是很重要的,推荐一边看一边思考。

编程人生 Coders at Work

世界顶尖的程序员是怎么走上编程道路的? 他们的编程工作创造和改变了人类历史,在这一过程中都有哪些经验和教训? 他们对计算机软件行业的过去、现在和未来有什么独到的看法和见解? 他们对培养、发现、选拔、面试优秀的程序员有什么建议? 放下手头的工作,听听这些软件先驱们的故事和建议,眼界可以更开阔,思路可以更清晰,方向可以更明确,人生可以更精彩。

几位计算机大牛的访谈录,你可以看看大师的路是怎么走过来,大师对待语言,对待技术的态度是什么样的,Javascript的作者又是如何看待这门语言的。

思维篇

思维篇汇总一些关于如何高效的工作,如何认识你的大脑,如何最大限度的利用你的大脑,提高效率。 效率本身很关键,掌握这些技能,做事情可以事半功倍

程序员的思维修炼 Pragmatic Thinking and Learning - Refactor Your Wetware

本书解释了为什么软件开发是一种精神活动,思考如何解决问题,并就开发人员如何能更好地开发软件进行了评论。书中不仅给出了一些理论上的答案,同时提供了大量实践技术和窍门。

左脑右脑如何工作?多任务为何效率低下?如何思考和解决这些问题? 这本书可以给你答案。

Clean code

之所以单独拿出一个章节,是因为这真的很重要

编写可读代码的艺术 The Art of Readable Code

细节决定成败,思路清晰、言简意赅的代码让程序员一目了然;而格式凌乱、拖沓冗长的代码让程序员一头雾水。除了可以正确运行以外,优秀的代码必须具备良好的可读性,编写的代码要使其他人能在最短的时间内理解才行。本书旨在强调代码对人的友好性和可读性。

Readable Code 是每个程序员应该追求的,如何写出可读代码也是有技巧的,本书讲述了为何重要,并提供了各种方法,推荐阅读

Clean Code

Bob大叔写的书,与前面一本讲的是一个事情。

哲学

UNIX编程艺术

本书主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S. Raymond倾力多年写作而成。包括Unix设计者在内的多位领域专家也为本书贡献了宝贵的内容。本书内容涉及社群文化、软件开发设计与实现,覆盖面广、内容深邃,完全展现了作者极其深厚的经验积累和领域智慧。

这本书更多的将Unix系统中的一些思想和理念,对于写代码很帮助,著名的KISS原则,在本书中有很好的解释。

计算机基础

编码 Code

本书讲述的是计算机工作原理。作者用丰富的想象和清晰的笔墨将看似繁杂的理论阐述得通俗易懂,你丝毫不会感到枯燥和生硬。更重要的是,你会因此而获得对计算机工作原理较深刻的理解。这种理解不是抽象层面上的,而是具有一定深度的。

编程语言和范式

七周七语言

通过不同的语言讲述不同的编程范式,让你明白一个问题的解决思路可以有很多,开阔视野方面非常有帮助,你不需要把这7门语言掌握的很好,但其中函数式编程、面向对象编程的概念需要特别关注。

总结

之所以要看书,是因为如今的信息过于碎片化,不成系统,所以思考的深度有时也会有所欠缺,而对于程序员而言,只要不断的积累学习,才能修炼好内功,做事情更加得心应手。

程序员的内功修炼——值得看的9本书相关推荐

  1. 程序员的内功修炼指南

    IT信息技术的发展速度可以用"爆炸"两个字来形容,尤其是近几年代码开源后,新的技术,框架,工具层出不穷,在这样一种情况下,对IT行业的程序员来说,有好处,也有坏处.好处是,新技术往 ...

  2. 程序员的自我修炼(一):打通任督二脉

    程序员的自我修炼(一):打通任督二脉 文章目录 程序员的自我修炼(一):打通任督二脉 前言 思想的力量 黄金圈法则 软技能 剑的力量 驱动力3.0 十步学习法 整体性学习方法 费曼学习法 富爸穷爸爸爸 ...

  3. 《程序员的思维修炼》读书笔记(思维的重生)

    此读书笔记并不完全作为阐述想法,所以在阐述一些问题的时候可能没有前因后果,更是一种总结性的话语和书上言语的精华,这有点悖论,如果你想了解,请去看<程序员的思维修炼>,这本书可以跨学科,即便 ...

  4. 《程序员的思维修炼--开发认知潜能》读书笔记

    转载原因] 我们很多人都会遇到这样的问题:刚刚看的书,却发现把书本一合上就啥都不记得了!比如,昨天阅读了<Spring in action>的第一章(总共三大章).当时觉得书很不错,虽然翻 ...

  5. 程序员的自我修炼(二):锻造倚天屠龙

    程序员的自我修炼(二):锻造倚天屠龙 文章目录 程序员的自我修炼(二):锻造倚天屠龙 前言 杠杆 心智的杠杆 计划的杠杆 行动的杠杆 起步的杠杆 稀缺 专注与管窥 带宽 装箱.权衡式思维.余闲 装箱 ...

  6. 「程序员的思维修炼——开发认知潜能的九堂课」读书笔记

    书名:程序员的思维修炼--开发认知潜能的九堂课 作者:(美) 亨特 (Andy Hunt) 译者:崔康 关于本书 本书从德雷福斯模型入手,阐释了程序工程师发展的五个阶段:接着从阶段间的特征中引出 L ...

  7. 好程序员web前端分享值得参考的css理论:OOCSS、SMACSS与BEM

    为什么80%的码农都做不了架构师?>>>    好程序员web前端分享值得参考的css理论:OOCSS.SMACSS与BEM 最近在The Sass Way里看到了Modular C ...

  8. 读《程序员的思维修炼》有感

    不久前读过<程序员的思维修炼:开发认知潜能的九堂课>,这本书里面有一段让我最印象深刻,它将职业分成了5个阶段. 从新手到专家的5个阶段 新手 高级新手 胜任者 精通者 专家 新手 顾名思义 ...

  9. 《程序员的思维修炼》思维导图

    今天去图书馆借书,偶然看到一本<程序员的思维修炼>,薄薄的一本,翻开看看想不到竟吸引了我,索性坐到一旁看起来.短短的几页,就发现大有收获,像顿悟一样,连作起思维导图来都能够体会到书本的旁征 ...

最新文章

  1. MySQL安装失败问题汇总
  2. 如何发表顶级期刊论文
  3. boost::contract模块实现throw on failure的测试程序
  4. GuGuFishtion(2018 Multi-University Training Contest 7)
  5. 数据结构实验之图论四:迷宫探索_迷宫搜索类的双向bfs问题(例题详解)
  6. Centos或者Redhet开通telnet
  7. iosselect简单使用(三级联动)
  8. 5.Servlet 对象(request-response)
  9. Upload-Labs(1-5)
  10. 受众定向_我如何了解社区与受众之间的差异
  11. Seata多微服务互相调用_全局分布式事务使用案例_seata之原理剖析---微服务升级_SpringCloud Alibaba工作笔记0066
  12. (转)用Javascript获取页面元素的位置
  13. Linux入门及安装教程
  14. 精通Javascript+jQuery视频下载地址
  15. 胖子哥的大数据之路(二)- 大数据结构化数据存储应用模式
  16. 麻将为什么是顶级随机设计?
  17. 【机器学习-斯坦福】学习笔记1 - 机器学习的动机与应用
  18. 明日方舟登录时服务器显示泰拉,明日方舟泰拉档案馆使用说明
  19. CAS4.0配置Mysql数据库,认证失败
  20. Web地图服务规范(WMS、WMTS、TMS)简析

热门文章

  1. D37 682. Baseball Game
  2. LeetCode刷题(26)
  3. java怎么求方程的虚根_java怎么求一元二次方程虚根,虚根i怎么定义啊。
  4. Hadoop单机伪分布式安装(完整版)
  5. Eclipse 使用常见问题汇总
  6. 购物车及商品php代码_简单的php购物车代码
  7. mysql8连接java_JAVA连接MYSQL8.0问题
  8. 用php的for循环画椭圆,如何快速简单的使用css3画出各种各样的椭圆
  9. poj3254(状压dp入门第一道题,很详细)
  10. arrays合并两个数组_九章算法 | 字节跳动面试题:合并k个排序数组