A melhor prática para modificar coleção atributos funcionalmente

votos
14

Estou curioso para saber como ir sobre a implementação de uma classe que obedece a regras estritas de programação funcional.

Por exemplo, se eu tiver uma classe que tem dois atributos e eu tenho um método que lhes modifica, como eu iria sobre como fazer isso? Os atributos seria vals privadas, eo método teria que retornar uma nova instância do atributo cada vez que ela modifica. Isso é bom, só que eu gostaria de mantê-lo contido, ou seja, eu precisaria de uma maneira de definir o val.

Qual seria a melhor maneira de fazer isso para que eu não tenho milhares de casos de exemplo, uma coleção, flutuando em memória?

Publicado 27/07/2014 em 17:27
usuário
Em outras línguas...                            


1 respostas

votos
0

Esta é a minha opinião, mas; assim como as classes de caso do, eu gostaria implementar um copymétodo de tipos na classe para fazer a modificação possível, mantendo a imutabilidade, mas existe alguns casos que eu não posso ajudar a tê-lo mutável; por exemplo, quando se espera algo para tornar a operação de cópia muito grande e lento para a classe; como quando a classe tem tantos membros freqüentemente modificados. E não se preocupe com milhares de casos flutuando na memória, porque eles são automaticamente GC'ed, então o problema mais real é o custo do tempo de copiar as instâncias da classe. Por favor, diga-me se minha opinião é de alguma forma errada :)

Respondeu 27/07/2014 em 17:57
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more