Percursos
/
JavaScript
JavaScript
/
Exercícios
/
Pessoa com lentes
Pessoa com lentes

Pessoa com lentes

Médio

Introdução

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:

  • Aceder e modificar estruturas de dados aninhadas sem teres de te preocupar com a estrutura específica dos dados.
  • Atualizar dados de forma pura, sem modificar o objeto original.
  • Compor várias lentes entre si para criar lentes mais complexas, capazes de aceder e modificar dados de várias formas.

Instruções

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.

Editar via GitHub A ligação abre numa nova janela ou separador
JavaScript Exercism

Estás pronto para começar Pessoa com lentes?

Inscreve-te no Exercism para aprenderes e dominares JavaScript com 37 conceitos159 exercícios, e mentoria humana real, tudo grátis.