# Mutable data > 코드 악취 중 하나. [코드 악취](https://wiki.g15e.com/pages/Code%20smell.txt) 중 하나. ## 관련 리팩토링 - - - - - - - - - - ## 함수형 프로그래밍 변하는 데이터 그 자체를 문제의 원인으로 보는 접근: > For this reason, an entire school of software development—[functional programming](https://wiki.g15e.com/pages/Functional%20programming.txt)—is based on the notion that data should never change and that updating a data structure should always return a new copy of the structure with the change, leaving the old data pristine. --Chapter 3, [Refactoring: Improving the design of existing code](https://wiki.g15e.com/pages/Refactoring%20-%20Improving%20the%20design%20of%20existing%20code.txt) (모든 함수형 프로그래밍이 변수를 허용하지 않는 건 아니다.)