Master
NOT ON THE CURRENT EDITION
This blip is not on the current edition of the Radar. If it was on one of the last few editions it is likely that it is still relevant. If the blip is older it might no longer be relevant and our assessment might be different today. Unfortunately, we simply don't have the bandwidth to continuously review blips from previous editions of the RadarUnderstand more
Published: Apr 24, 2019
Last Updated: Oct 28, 2020
Oct 2020
Experimente?

Com a complexidade crescente das aplicações de página única (SPA) em JavaScript, gerenciar o estado com previsibilidade está se tornando cada vez mais importante. A imutabilidade pode ajudar a garantir que nossas aplicações se comportem de forma consistente, mas infelizmente o JavaScript não oferece estruturas de dados profundamente imutáveis integradas (veja a proposta ES para Records e Tuples). Immer — que significa "sempre" em alemão — é um pequeno pacote que permite trabalhar com o estado imutável de uma forma mais conveniente. É baseado no mecanismo copy-on-write, tem uma API mínima e opera em objects e arrays JavaScript normais. Isso significa que o acesso aos dados é feito normalmente e nenhum grande esforço de refatoração é necessário ao introduzir a imutabilidade em uma base de código existente. Muitos de nossos times agora o usam em suas bases de código JavaScript e o preferem em relação ao Immutable.js, e é por isso que nós estamos o movendo para Experimente.

Apr 2019
Avalie?

Com a crescente complexidade de aplicações JavaScript de página única, gerenciar a previsibilidade do estado está se tornando cada vez mais importante. A imutabilidade pode ajudar a assegurar que nossas aplicações se comportem consistentemente, mas infelizmente o JavaScript não suporta nativamente a capacidade de criar objetos imutáveis. Bibliotecas como Immutable.js preenchem essa lacuna, mas introduzem novos problemas com a existência de dois tipos de objetos e arranjos na aplicação, a biblioteca JavaScript nativa e a versão. Immer — “sempre” em alemão — é um pacote pequeno que permite trabalhar com estado imutável de maneira mais conveniente. É baseado no mecanismo cópia-em-gravação, tem uma API mínima e opera em objetos e arranjos normais em JavaScript. Isso significa que o acesso a dados ocorre sem obstáculos e não são necessários grandes esforços de refatoração ao introduzir imutabilidade a um código existente.