[Good Code Bad Code] 코드를 오용하기 어렵게 만들라-1
·
📚 개발자의 서재/Good Code, Bad Code
해당 포스팅은 톰 롱의 Good Code, Bad Code (P.201~213)를 읽고 정리한 글입니다. 불변 객체로 만드는 것을 고려하라 객체가 불변하다는 것은 객체가 생성된 후에 상태를 바꿀 수 없다는 뜻이다. 가변 객체는 아래와 같은 문제를 일으킬 수 있다.가변 객체는 추론하기 어렵다.가변 객체는 다중 스레드에서 문제가 발생할 수 있다.가변 클래스는 오용하기 쉽다.클래스는 일반적으로 세터(setter) 함수를 제공하여 가변적으로 만들 수 있다. 세터가 있는 클래스는 가변성이 있기 때문에, 해당 인스턴스를 전달받은 모든 코드가 객체를 변경할 수 있으며, 이 과정에서 오용될 위험이 있다. 해결책: 객체를 생성할 때만 값을 할당하라클래스는 객체 생성 시 모든 값을 제공하고 이후 변경을 허용하지 않으면 ..