Percursos
/
F#
F#
/
Exercícios
/
Pessoa com lentes
Pessoa com lentes

Pessoa com lentes

Difícil

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.

Dicas

  • Este exercício espera que uses a biblioteca Aether, que acrescenta a funcionalidade de lenses ao F#. Com as lenses, consegues ler ou atualizar estruturas aninhadas com bastante facilidade.
Editar via GitHub A ligação abre numa nova janela ou separador
F# Exercism

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

Inscreve-te no Exercism para aprenderes e dominares F# com 18 conceitos148 exercícios, e mentoria humana real, tudo grátis.