
- 232 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
Re-Engineering Legacy Software
About this book
Summary 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!
Frequently asked questions
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Information
Table of contents
- Copyright
- Brief Table of Contents
- Table of Contents
- Preface
- Acknowledgments
- About this Book
- Part 1. Getting started
- Part 2. Refactoring to improve the codebase
- Part 3. Beyond refactoringāimproving project workflow and infrastructure
- Index
- List of Figures
- List of Tables
- List of Listings