Top 5 Must-Read Software Development Books

来源:互联网 发布:淘宝和支付宝解绑不了 编辑:程序博客网 时间:2024/05/16 06:32
From Kevin Taylor,
Your Guide to Focus on Java.
FREE GIFT with Newsletter! Act Now!

This list of software development books comprises the absolute must-read books for all professional software developers. Whatever the language or domain in which you practice your craft, these tomes hold an essential body of hard-earned, collective wisdom and knowledge.

1) Refactoring

Author: Martin Fowler, et al. Refactoring is the process of improving the internal structure of code without changing the published interface. This book is the definitive text on the subject (and is just a plain good read). Experienced programmers can usually smell bad code but this book will finally clarify why it is bad and what must be done to improve it.

2) Design Patterns Explained

Author: Alan Shalloway, et al. Many say the Gang of Four (GOF) Design Patterns book is a must-read, but most developers do not have the requisite knowledge to study it successfully. Design Patterns Explained provides that essential knowledge of object-oriented concepts. Then, it goes on to cover ten important design patterns from the GOF Design Patterns book. Throughout, the book melds OO concepts into design patterns, showing how they interrelate.

3) UML Distilled

Author: Martin Fowler. This may be the only book you'll ever need to read on UML--and it is only 192 pages. This concise guide on using the Unified Modeling Language is chock full of useful examples (and of course diagrams).

4) The Pragmatic Programmer

Authors: David Thomas, Andrew Hunt. This book has spawned a series of "Pragmatic" programming books. This one discusses how to become a master code craftsman. Subjects include preventing software rot, fixing broken windows, writing flexible code, exploiting tools effectively, and more. This book is a practical but, also, inspiring read.

5) Test Driven Development

Author: Kent Beck. Test Driven Development (TDD) is radically altering software development shops. This is the definitive tutorial on the subject. In the book, Beck implements two applications using TDD, a multi-currency calculator and an xUnit testing framework. Through the process of implementing these applications, the reader will learn how to design classes and methods by writing tests first. This leads to code that is simple, loosely-coupled, and highly-cohesive.