정규화(Normalization)와 리팩토링(Refactoring)은 겉보기에는 전혀 다른 분야처럼 보이지만, 그 핵심에는 "누가 어떤 데이터를 소유하는가"에 대한 명확한 정의와 책임 분리라는 공통된 철학이 자리하고 있다. 지금까지 제1정규화부터 제5정규화에 이르기까지 다양한 정규화 원칙을 객체지향 리팩토링 기술과 연결해 설명한 것은, 데이터베이스와 코드 구조 설계가 서로 동떨어진 개념이 아님을 보여주기 위함이었다.정규화는 데이터 중복을 제거하고, 데이터 간 관계를 명확하게 분리하여 정보의 일관성과 무결성을 유지하는 데 목적이 있다. 반면, 리팩토링은 시간이 지나며 복잡해지고 방대해진 코드 구조를 다시 읽기 좋고 유지보수하기 쉬운 형태로 정리하는 작업에 가깝다. 하지만 이 둘은 모두 ‘구조를 명확히 하고..