Volver al glosario
Code Review y Calidad

Legacy Code

Existing code that is difficult to change due to lack of tests, poor documentation, outdated technologies, or original developers no longer available.

Definicion

Michael Feathers defines legacy code simply as "code without tests" because without tests, changes are risky. Legacy code often has: unclear architecture, missing documentation, deprecated dependencies, complex interdependencies, and accumulated workarounds. However, legacy code is also valuable — it represents working business logic that has been tested in production.

Por que es importante

Most developers spend more time maintaining legacy code than writing new code. Understanding how to safely modify legacy systems is a critical skill. Techniques include: adding characterization tests, strangler fig pattern, and incremental refactoring.

Ejemplo

A 15-year-old PHP monolith processes millions in transactions daily. It has no tests, uses deprecated libraries, and the original team left. Developers must add tests before making changes to avoid breaking production.

Terminos relacionados

legacy codewhat is legacy codelegacy systemworking with legacy code

Automatiza Code Review con diffray

Sistema de IA multi-agente para code review. Encuentra bugs, vulnerabilidades de seguridad y problemas de arquitectura automaticamente.