Hablemos de serialización

Gracias a $root, normalmente no hay una única forma de afrontar una tarea. Eso ya lo hemos visto aquí, en posts tales como La taza de café de la vergüenza o Tres funciones de pertenencia (la fea, la guapa y la estúpida). El objetivo primordial suele ser buscar la opción que sea más sencilla de entender, o aquella que sea más mantenible (aunque normalmente sencillez y mantenibilidad van de la mano). Sin embargo, en algunas ocasiones, la solución que ha de primar por encima de todas las demás es la eficiente.

Ilustración 1, un fragmento del algoritmo de compresión LZ4

Ilustración 1, un fragmento del algoritmo de compresión LZ4

Hay escenarios en los que no podemos entregar velocidad de ejecución o tamaño en memoria a cambio de legibilidad. Un ejemplo de ello que me encanta son los algoritmos de compresión con aritmética de punteros. Que me aspen si los puedes entender al vuelo, pero seguro que funcionan a las mil maravillas.

Sigue leyendo