로딩
요청 처리 중입니다...

그럼 언제 struct가 진짜 빛을 발할까?

 그럼 언제 struct가 진짜 빛을 발할까?

앞선 글들에서 struct의 위험성과 DTO에서의 한계를 이야기했다. "그럼 struct는 아예 안 쓰는 게 좋은 걸까?"

물론 아니다. struct는 가장 엄격한 값 모델링 도구다. 그 엄격함을 제대로 활용할 수 있는 자리가 분명히 있다.

의미적으로 ‘값’ 그 자체일 때 데이터의 묶음이 아니라, 그 자체가 하나의 독립된 단위여야 할 때다. 좌표: (X, Y) 범위: (Min, Max) 단위 값: (Amount, Currency / Value, Unit) 이런 것들은 정체성이 "데이터의 집합"이 아니라 그냥 하나의 값이다.

좌표 A와 B의 값이 같으면, 그건 완벽히 같은 것이다. 작고, 불변이고, 확장될 일이 없다면 struct는 가장 자연스러운 표현이 된다.

도메인 값 객체(Value Object) DDD에서 식별자(ID)가 없는 값 객체를 표현할 때 struct는 특히 잘 맞는다. public readonly record struct Money(decimal Amount, str...