[Refactoring] 레코드 캡슐화하기


[Refactoring] 레코드 캡슐화하기

데이터 클래스 데이터 클래스 : Public 필드 또는 필드에 대한 getter와 Setter만 있는 클래스 코드가 적절한 위치에 있지 않기 때문에 이러한 냄새가 생길 수 있다. 예외적으로 단계 쪼개기에서 중간 데이터를 표현하는 데 사용할 레코드는 불변 객체로 데이터를 전달하는 용도로 사용할 수 있다. public field를 가지고 있다면 레코드 캡슐화하기를 사용해 getter or setter를 통해서 접근하도록 고칠 수 있다. 변경되지 않아야 할 필드에어는 세터 제거하기를 적용할 수 있다. getter와 setter가 사용되는 메서드를 찾아보고 함수 옮기기를 사용해서 데이터 클래스로 옮길 수 있다. 메서드 전체가 아니라 일부 코드만 옮겨야 한다면 함수 추출하기를 선행해서 옮길 수 있다. 레코드 캡슐화하기 변하는 데이터를 다룰 때는 레코드보다는 객체를 선호한다. 여기서 레코드란 public field로 구성된 데이터 클래스를 말한다. 데이터를 메서드 뒤로 감추면 객체의 클라이언트...


#레코드 #리팩토링 #백기선 #인프런 #자바 #캡슐화

원문링크 : [Refactoring] 레코드 캡슐화하기