객체 생성 비용 발생하는 경우 64비트 JDK에서 객체는 8바이트의 배수, +_앞부분은 12바이트 헤더 캡슐화된 객체는 함수 호출 비용이 발생하며 비용은 크지는 않지만 티끌모아태산임 객체 생성시 비용이 발생함 불필요한 객체를 제거할 방법 객체 선언 객체를 재사용함 캐시를 활용하는 팩토리 함수 팩토리 메서드를 가지면 캐시를 가질수 있음 쓰레드풀, 커넥션풀 등 객체생성이 무겁고 동시에 여러 mutable 객체를 사용하는 경우 적합함 모든순수 함수는 캐싱을 활용할 수 있음 (메모이제이션)적합 캐싱처리하면 대신 메모리 사용은 증가, 적절하게 활용해야함 private val FIB_CACHE = mutableMapOf() //캐싱 처리해서 재사용 예시 fun fib(n: Int): BigInteger = FIB_..