每个程序员都应该阅读的几本书
Dmitry Shvetsov是一位全栈Web开发者,他在Medium上发了一篇文章,总结了几位程序员大咖推荐阅读的几本书,哦不,应该是几十本书。
这几位经验丰富的著名程序员是Bozhidar Batsov、Robert C. Martin(Uncle Bob)、Jeff Atwood、David Heinemeier Hansson(DHH),他们见多识广、知识渊博,推荐的书籍还是有一定水准的。下面分别介绍。
Bozhidar Batsov是高级自由职业者平台Toptal.com的工程副总裁、开源黑客。
他的网站:https://batsov.com/
他推荐的书:
Inside the Machine 讲的是计算机如何工作
CODE 处理器的一些东西
Concrete Mathematics: A Foundation for Computer Science
Structure and Interpretation of Computer Programs
How to Design Programs: An Introduction to Programming and Computing
The Algorithm Design Manual and Introduction to Algorithms
Compilers: Principles, Techniques, and Tools 程序员应该了解编译器如何工作
C Programming Language
Advanced Programming in the UNIX Environment
Unix Network Programming volume 1 and 2
上面是一个好的程序员必看的书,下面是他推荐的面向对象编程语言的书:
Growing Object-Oriented Software, Guided by Tests
Domain-Driven Design
Practice Object-Oriented Design in Ruby
The Elements of Programming Style
Robert C. Martin(Uncle Bob)是软件工程师、讲师,是敏捷宣言(Agile Manifesto)的作者之一。
他的网站:https://blog.cleancoder.com/
他推荐的书:
Design Patterns
Structure and Interpretation of Computer Programs
Fundamental Algorithms Vol.1 of The Art of Computer Programming series
The Annotated Turing
Refactoring
Extreme Programming Explained
Redshirts
The “Bobiverse” trilogy
Kent Beck是一个程序员,极限编程(Extreme Programming)的创始者之一,曾是Facebook的技术教练。
他的网站:https://www.kentbeck.com/
他推荐的书:
On Growth and Form
The Timeless Way of Building
Nature’s Patterns series: Shapes, Flow, and Branches
Jeff Atwood是一位老牌程序员,是Coding Horror、Stack Overflow、Discourse等诸多网站的创始人。
他的网站:https://blog.codinghorror.com/
他推荐的书:
Code complete 2
The Mythical Man-Month
Don’t Make Me Think, Revisited: A Common Sense Approach to Web Usability
Rapid Development
Peopleware
The Design of Everyday Things
About Face: The Essentials of Interaction Design
The Inmates Are Running the Asylum
Programming Pearls
The Pragmatic Programmer: From Journeyman to Master
Designing Web Usability
Regular Expressions Cookbook
The Visual Display of Quantitative Information
Visual Explanations: Images and Quantities, Evidence and Narrative
Envisioning Information
Beautiful Evidence
Waltzing With Bears: Managing Risk on Software Projects
Dynamics of Software Development
David Heinemeier Hansson(DHH)是一位丹麦的程序员,Ruby on Rails和Instiki的最早的作者,Basecamp.com的创始人和CTO,喜欢赛车。
他的网站:https://dhh.dk/
他推荐的书:
Smalltalk Best Practice Patterns
Refactoring: Improving the Design of Existing Code
Patterns of Enterprise Application Architecture
Domain-Driven Design: Tackling Complexity in the Heart of Software
Are Your Lights On?: How to Figure Out What the Problem Really Is
The Elements of Style, Fourth Edition
On Writing Well: The Classic Guide to Writing Nonfiction
这些书基本都可以在亚马逊买到,也有翻译成中文的。读完中文后,再读一读英文的书,对概念的理解会更准确。
Dmitry Shvetsov的文章:
Essential Books That Every Programmer Should Read