Simple play icon Course

Domain-Driven Design: Working with Legacy Projects

by Vladimir Khorikov

Discover the best ways to deliver new functionality and scalability of legacy code bases with this in-depth course on Domain-Driven Design: Working with Legacy Projects.

What you'll learn

As a programmer, you'd love to only work on green-field projects. However, you are most likely working on a legacy project right now, or will be at some point in the future. In this course, Domain-Driven Design: Working with Legacy Projects, you'll develop skills that will help you manage these legacy projects to deliver new functionality and keep the stakeholders happy. First, you'll learn how to make your way through the legacy code base by refactoring it one step at a time. Next, you'll explore how to handle rewrites, when to do that, and when it is better to keep the existing legacy code base instead. Finally, you'll discover techniques such as building an Anticorruption Layer, the Strangler pattern, and Branch by Abstraction pattern to deal with these code bases. By the end of this course, you'll have a solid understanding of the theory and practice of improving the functionality and scalability of legacy projects.

Table of contents

Course Overview

About the author

Vladimir Khorikov is the author of the book Unit Testing Principles, Practices, and Patterns: He has been professionally involved in software development for over 15 years, including mentoring teams on the ins and outs of unit testing. He's also the founder of the Enterprise Craftsmanship blog, where he reaches 500 thousand software developers yearly. He started as an adviser on general programming topics, but lately has shifted his focus to unit testing with a central ... more

Ready to upskill? Get started