Em JavaScript, as lentes são um conceito de programação funcional que te permite aceder e modificar dados de forma modular e imutável. São, essencialmente, pares componíveis de funções puras, umas para ler e outras para escrever, que incidem sobre um campo específico de um objeto.
As lentes podem simplificar o código, torná-lo mais reutilizável e evitar erros de programação comuns. Por exemplo, podes usar lentes para:
Usa lentes para atualizar registos aninhados (específico de linguagens com dados imutáveis).
Atualizar campos de registos aninhados e imutáveis é um bocado chato. O código para estes casos é tão pesado quanto a estrutura é profunda. Se tiveres, digamos, uma Person, que contém uma Address, que tem uma Street, que tem um Number, atualizar o Number obriga-te a criar uma nova Street com o novo Number, depois uma nova Address com a nova Street e, por fim, uma nova Person com a nova Address. Já estás confuso?
Uma solução para este problema é usar lentes.
Implementa várias funções de acesso a registos usando lentes. O conjunto de testes também te permite não usar lentes, para poderes experimentar abordagens diferentes.
Inscreve-te no Exercism para aprenderes e dominares JavaScript com 37 conceitos159 exercícios, e mentoria humana real, tudo grátis.