Factory Method Design Pattern in C#
A factory method moves object creation out of the client code. I start from a document converter in ASP.NET Core that is tied to one PDF converter class, show why adding a second format forces changes everywhere, and then refactor it so that new formats can be added without touching the client.