Definición
El proceso de convertir estructuras de datos en memoria o grafos de objetos en una representación lineal, almacenable o transmisible (bytes, texto) y el proceso inverso de reconstruir las estructuras originales preservando identidad, tipo e información de versión necesaria.
Principio
Principio
Definir un mapeo desde diseños en memoria a una representación externa determinista que incluya el tratamiento de relaciones de punteros/alias, endianness, metadatos de esquema/versión y compresión o canonicalización opcional para garantizar interoperabilidad y corrección.
Demostración
Demostración
Un servicio codifica datos estructurados como JSON para APIs HTTP, un microservicio usa Protocol Buffers para mensajes binarios compactos con esquema, y una aplicación emplea marshaling versionado que tolera campos añadidos manteniendo compatibilidad hacia atrás.
Aplicación incorrecta
Aplicación incorrecta
Deserializar datos no fiables sin validación, conduciendo a ejecución de código o vulnerabilidades por inyección; omitir versionado causa incompatibilidades; usar un formato no canónico rompe reproducibilidad y controles de integridad.
Consecuencia
Consecuencia
La serialización correcta posibilita persistencia, llamadas RPC e interoperabilidad entre sistemas heterogéneos; las elecciones afectan rendimiento, ancho de banda, seguridad y compatibilidad hacia delante/atrás.
Inversión
Inversión
Sin serialización, el estado no puede persistirse de forma fiable ni intercambiarse entre procesos o máquinas; codificaciones ad hoc o incompatibles provocan pérdida de datos o fallos de interoperabilidad.
Límite
Límite
Cubre formatos y algoritmos que mapean objetos en ejecución a representaciones transferibles (JSON, XML, protobuf, marshalling binario); excluye volcados de memoria crudos ligados a una imagen de proceso concreta y transformaciones semánticas a nivel de aplicación no relacionadas con transporte o almacenamiento.
Tensión semántica
Tensión semántica
Tensión entre formatos legibles por humanos (JSON, XML) y formatos binarios compactos (protobuf, CBOR), y entre la flexibilidad sin esquema y la estricta dependencia de esquemas para compatibilidad y eficiencia.
Síntesis
Síntesis
La serialización es el mapeo sistemático del estado estructurado en memoria a una representación portable y viceversa, gobernado por esquemas/metadatos y reglas de seguridad para equilibrar eficiencia, interoperabilidad y compatibilidad.