As a developer, you may inherit projects built on existing codebases with design patterns, usage assumptions, infrastructure, and tooling from another time and another team. Fortunately, there are ways to breathe new life into legacy projects so you can maintain, improve, and scale them without fighting their limitations.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the Book
Re-Engineering Legacy Software is an experience-driven guide to revitalizing inherited projects. It covers refactoring, quality metrics, toolchain and workflow, continuous integration, infrastructure automation, and organizational culture. You'll learn techniques for introducing dependency injection for code modularity, quantitatively measuring quality, and automating infrastructure. You'll also develop practical processes for deciding whether to rewrite or refactor, organizing teams, and convincing management that quality matters. Core topics include deciphering and modularizing awkward code structures, integrating and automating tests, replacing outdated build systems, and using tools like Vagrant and Ansible for infrastructure automation.
What's Inside
Refactoring legacy codebases
Continuous inspection and integration
Automating legacy infrastructure
New tests for old code
Modularizing monolithic projects
About the Reader
This book is written for developers and team leads comfortable with an OO language like Java or C#.
About the Author
Chris Birchall is a senior developer at the Guardian in London, working on the back-end services that power the website.
Table of Contents PART 1 GETTING STARTED
Understanding the challenges of legacy projects
Finding your starting point
PART 2 REFACTORING TO IMPROVE THE CODEBASE
Preparing to refactor
Refactoring
Re-architecting
The Big Rewrite
PART 3 BEYOND REFACTORING—IMPROVING PROJECT WORKFLOWAND INFRASTRUCTURE
Automating the development environment
Extending automation to test, staging, and production environments
Modernizing the development, building, and deployment of legacy software
Stop writing legacy code!
Rekenaars en tegnologie
Meer oor die skrywer
Chris Birchall is a senior developer at the Guardian in London, working on the back-end services that power the website.
Gradeer hierdie e-boek
Sê vir ons wat jy dink.
Lees inligting
Slimfone en tablette
Installeer die Google Play Boeke-app vir Android en iPad/iPhone. Dit sinkroniseer outomaties met jou rekening en maak dit vir jou moontlik om aanlyn of vanlyn te lees waar jy ook al is.
Skootrekenaars en rekenaars
Jy kan jou rekenaar se webblaaier gebruik om na oudioboeke wat jy op Google Play gekoop het, te luister.
E-lesers en ander toestelle
Om op e-inktoestelle soos Kobo-e-lesers te lees, moet jy ’n lêer aflaai en dit na jou toestel toe oordra. Volg die gedetailleerde hulpsentrumaanwysings om die lêers na ondersteunde e-lesers toe oor te dra.