-
[백엔드]일급 컬렉션이 모지??매일메일 2025. 6. 30. 17:42728x90
일급 컬렉션(First-Class Collection)은 하나의 컬렉션을 감싸는 클래스를 만들고, 해당 클래스에서 컬렉션과 관련된 비즈니스 로직(예를 들어 데이터 검증, 계산, 상태 보호 등)을 관리하는 패턴을 말한다.
장점
1. 캡슐화과 응집도 향상
- 컬렉션에 관련된 모든 검증과 처리를 한 곳에 모아두면, 외부에서는 단순히 일급 컬렉션 객체의 메서드만 호출하면 되므로, 내부 구현이 숨겨지고 응집도가 높아짐.
2. 불변성 보장
- 컬렉션을 외부에 직접 노출하지 않고, 읽기 전용 메서드만 제공함으로써 의도치 않은 데이터 변경을 막을 수 있다. 단순히 final 키워드를 사용하는 것보다 훨씬 강력한 불변성을 보장한다.
3. 비즈니스 로직 집중
- 예를 들어 로또 번호처럼 특정 조건(숫자의 개수, 중복 제거 등)이 요구되는 경우, 이러한 비즈니스 규칙을 일급 컬렉션 내부에 구현함으로써, 다른 부분에서 검증 로직이 중복되거나 누락되는 문제를 방지할 수 있다.
4. 명확한 도메인 표현
- 일급 컬렉션은 단순한 변수명이 아니라, 도메인 모델의 한 부분으로 이름을 부여할 수 있기 때문에, 코드만 봐도 해당 컬렉션이 어떤 역할을 하는지 명확하게 알 수 있다.
'매일메일' 카테고리의 다른 글
[백엔드]로그와 메트릭은 모야? (0) 2025.07.02 [백엔드] 얕은 복사와 깊은 복사 (0) 2025.07.01 [프론트엔드]인터넷 창에 www.google.com를 입력하면 무슨 일이 일어나는지?? (0) 2025.06.30 [백엔드] 자바에서 객체를 복사하는 방법에는 어떤 종류가 있는지?? (0) 2025.04.29 [프론트] 브라우저 렌더링 파이프라인에 대해서 설명하세요. (0) 2025.04.29