Extensibility Patterns

Extensibility patterns focus on how to add functionality to a system without modifying its existing code. They provide ways to design systems that are open for extension but closed for modification, promoting flexibility and maintainability.

Wikipedia