Beyond Legacy Code
Beyond Legacy Code

Author: David Scott Bernstein
Publisher: Pragmatic Bookshelf
Pages: 230
ISBN: 978-1680500790
Print: 1680500791
Kindle: B01CRIZEF8
Audience: Developers
Rating: 5
Reviewer: Kay Ewbank

Over the festive season IProgrammer asks its reviewers to recommend books that are worth a second look in case you missed them. As this book descibes practices that could save the software industry from broken code, it seemed like a suitable inclusion.

The first thing to say about the book is that the title is misleading. The book isn't actually about legacy code, or reworking code to take it beyond legacy code. What Bernstein means by the title is that by using the techniques described, you'll write what might be termed 'modern' code - clean, understandable, and working. 

The book starts with a section called the legacy code crisis that lays out the problem of existing code being hard to maintain and extend. There are chapters on the Standish Group's CHAOS report and on the rise of agile coding, but essentially this part of the book is all scene setting.

Banner

The second part of the book then has chapters on each of nine practices, each describing an idea that Bernstein says will extend the life and value of your software.

These practices are:

  • Say What, Why and for Whom Before How
  • Build in Small Batches
  • Integrate Continuously
  • Collaborate
  • Create CLEAN code (Cohesive, Loosely coupled, Encapsulated, Assertive and Nonredundant)
  • Write the Test First
  • Specify Behaviors with Tests
  • Implement the Design Last
  • Refactor Legacy Code

Each chapter is written quite conversationally, and the book is easy reading. There are plenty of references to real world examples, and all the chapters on the practices end with a "let's get practical" section with seven strategies for putting into practice the ideas within that chapter. Where appropriate, the different techniques in common use for that particular idea are clearly and succinctly summed up, so that the chapter on collaboration, for example, discusses pair programming, buddy programming, spike, swarm and mob techniques.

 

 

This is a really nice read. Some ideas covered within it will be ones you've probably heard of, but the discussions of why they are worth adopting are well made and clear. It would be a great book for anyone who's not a developer and who wants to know why some ideas have become trendy, but it's equally good for clarifying the thoughts of those of us who do write code so we can do it better.

 

To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.

Banner


Beyond Requirements, Analysis With An Agile Mindset

Author: Kent J McDonald
Publisher: Addison-Wesley
Pages:304
ISBN: 978-0321834553
Print:0321834550
Kindle:B014PO7XYM
Audience: Project managers
Rating: 4
Reviewer: Alex Denham

This book looks at how to use agile techniques to make IT projects more effective.



Core Java for the Impatient

Authors:  Cay S. Horstmann 
Publisher: Addison Wesley
Pages: 512
ISBN: 97801321996329
Print: 0321996321
Kindle: B00SYPYMFW
Audience: Smart programmers wanting in-depth coverage
Rating: 4.8
Reviewer: Mike James

The key to this book is the word "impatient" in the title. W [ ... ]


More Reviews

 

 

Last Updated ( Saturday, 07 January 2017 )
 
 

   
Banner
RSS feed of book reviews only
I Programmer Book Reviews
RSS feed of all content
I Programmer Book Reviews
Copyright © 2017 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.