데이터 가공하면서 중복으로 쓰인 코드가 많아서 고민하고 있었는데 해결할 수 있는 방법을 찾아서 기분이 좋았다.
메모이제이션이라는 개념이 낯설었지만 발자국 남기듯이 가볍게 이해하기로 마음먹었다.
작업을 통해서 무엇을 배웠는가
원본 데이터가 바뀌지 않았음에도 같은 데이터를 반복해서 가공하는 문제를 해결하는 reselect에 대해 배웠다.
리팩토링은 정말 위대하다. 리팩토링 작업을 하면서 개선시키고 싶은 부분을 발견했고, 리셀렉트를 적용하면서 개선해보니 현재는 문제가 되지 않지만 프로젝트의 사이즈가 커지면 성능 저하를 가져올 수 있는 문제였다. 지금은 작게 보여도 나중에 큰 문제가 될 수 있기에 순간 순간 코드를 소중하게 리팩토링 해야한다는 걸 배웠다.
새로운 패턴을 배우고 나니 기존의 코드의 복잡도도 낮아지는 매직을 경험했다.
내 코드가 나아질 방법이 없는 것처럼 보일 때면 지금은 못 찾았지만 어딘가에 해결방법이 늘 존재한다는 사실을 기억해야겠다.