La migración de proyectos en C y C++ a Rust ya no se considera una apuesta experimental: cada vez más equipos adoptan Rust como vía práctica para mejorar la seguridad de memoria, reducir costes de mantenimiento a largo plazo y modernizar sistemas de rendimiento crítico. Sin embargo, el éxito no depende de reescribir todo el código, sino de identificar qué partes conviene mover y cómo hacerlo sin romper lo que ya funciona. Luca Palmieri, de Mainmatter, y Vitaly Bragilevsky, de JetBrains, abordaron esta cuestión en una emisión en directo.
Para la mayoría de sistemas en producción, la estrategia más segura no es una reescritura completa, sino una migración incremental: empezar por módulos aislados, integrar Rust dentro del sistema de compilación y de release existente, y ampliar la cobertura a medida que crece la confianza del equipo. La reescritura total solo se justifica en bases de código pequeñas, con una API estable y una suite de pruebas black-box exhaustiva; en esos casos se pueden usar técnicas como shadow traffic y migración progresiva de carga.
Los proyectos candidatos a migrar son aquellos donde la mantenibilidad ya resulta costosa: código sensible al rendimiento, sistemas concurrentes o multihilo, componentes críticos de seguridad y despliegues a gran escala donde la eficiencia se traduce en ahorro de infraestructura. La decisión se apoya en datos publicados por Google sobre reducción de vulnerabilidades de memoria, en la madurez del tooling, en la difusión de experiencia en Rust entre ingenieros y en el apoyo de herramientas de IA generativa que aceleran la curva de aprendizaje.
