jargon

Comparison

Anti-corruption layervsStrangler fig

Anti-corruption layer

you wrap the legacy system's awkward model in a translation layer so its concepts do not leak into your new code.

A translation boundary between your domain model and an external or legacy one. It keeps a foreign model's naming, quirks and constraints from spreading through your codebase. It costs an extra mapping layer, and it is what you wish you had built the first time a third-party field name ended up in your database.

Full entry →

Strangler fig

you put a router in front and moved one endpoint at a time until the old service had no traffic left.

Replacing a system incrementally by intercepting its traffic and moving one piece of functionality at a time to the new implementation, until the old one can be deleted. Named after the vine that grows around a tree and remains when the tree is gone. It is the default alternative to a rewrite because every step is small, reversible and independently valuable, and because the migration can be paused indefinitely without leaving anything half-built.

Full entry →

Related comparisons