리팩토링(2차) 완료 / class 분할됨