The authors and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein.

Publisher: John WaitEditor in Chief: Don O’HaganAcquisitions Editor: Paul PetraliaEditorial Assistant: Michelle VincentiMarketing Manager: Chris GuzikowskiPublicist: Kerry GuilianoCover Designer: Sandra SchroederManaging Editor: Gina KanouseSenior Project Editor: Lori LyonsCopy Editor: Krista HansingIndexer: Lisa StumpfCompositor: Karen KennedyProofreader: Debbie WilliamsManufacturing Buyer: Dan Uhrig

For information ...

Get Working Effectively with Legacy Code now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.