En JavaScript, las lentes son un concepto de la programación funcional que te permite acceder a los datos y modificarlos de forma modular e inmutable. En esencia, son pares componibles de funciones getter y setter puras que se centran en un campo concreto dentro de un objeto.
Las lentes pueden usarse para simplificar el código, hacerlo más reutilizable y evitar errores de programación comunes. Por ejemplo, las lentes te permiten:
Usa lentes para actualizar registros anidados (específico de los lenguajes con datos inmutables).
Actualizar los campos de registros anidados e inmutables es bastante molesto. El código para estos casos es tan engorroso como profunda es la estructura. Si tienes, por ejemplo, un Person que contiene un Address, el cual tiene una Street, que a su vez tiene un Number, actualizar el Number requiere crear una Street nueva con el nuevo Number, luego un Address nuevo con la nueva Street y, por último, un Person nuevo con el nuevo Address. ¿Ya te has liado?
Una solución a este problema es usar lentes.
Implementa varias funciones de acceso a registros usando lentes. La suite de tests también te permite prescindir por completo de las lentes, para que puedas experimentar con distintos enfoques.
Regístrate en Exercism para aprender y dominar JavaScript con 37 conceptos159 ejercicios y mentoría humana real, todo gratis.