Search
Duplicate

일급컬렉션

작성일시
2023/04/22 08:50
강의 번호
4단계-자동차경주
유형
강의
자료
복습
오늘은 일급 컬렉션에 대해 설명하려고한다.
일급컬렉션은 Collction을 Wrapping 하면서, 그외의 멤버 변수가 없는 상태를 말하며, 장점으로는
1.
드 가독성 향상: 일급 컬렉션을 사용하면 관련된 데이터와 동작이 하나의 단위로 묶여 코드의 가독성이 증가합니다. 컬렉션을 다루는 로직이 분산되지 않고 한 곳에 모여 있어서 코드의 의도를 더 명확하게 전달할 수 있습니다.
2.
모듈화와 캡슐화 강화: 일급 컬렉션을 사용하면 관련된 데이터와 기능이 하나의 클래스로 묶이므로 모듈화와 캡슐화가 강화됩니다. 이는 코드를 수정하거나 기능을 확장할 때 영향을 최소화하며 코드의 변화에 따른 오류 가능성을 줄일 수 있습니다.
3.
유지보수성 향상: 일급 컬렉션은 관련된 데이터와 동작을 하나의 단위로 묶어 코드의 수정이나 유지보수를 더 효율적으로 진행할 수 있습니다. 수정이 필요한 경우 해당 클래스 내부만 수정하면 되므로 다른 부분에 영향을 덜 주며, 변경 내역의 파급 효과를 최소화합니다.
4.
확장성: 새로운 기능이나 속성을 추가할 때도 일급 컬렉션을 확장하는 것이 자연스럽고 효율적입니다. 새로운 메서드를 추가하거나 기존 동작을 확장하는 작업이 용이하여 애플리케이션의 확장성을 높일 수 있습니다.
5.
중복 코드 감소: 일급 컬렉션은 동일한 기능을 여러 곳에서 반복적으로 구현하지 않도록 도와줍니다. 해당 기능을 일급 컬렉션 내부에 구현하면 코드의 중복을 방지하고 유지보수성을 높일 수 있습니다.
6.
테스트 용이성: 일급 컬렉션은 단위 테스트를 작성하기 쉽습니다. 각 컬렉션 클래스의 메서드를 개별적으로 테스트할 수 있으며, 특정 기능을 검증하기 위한 테스트 케이스 작성이 간단해집니다.
7.
명확한 의미 부여: 일급 컬렉션을 사용하면 해당 컬렉션에 대한 의미와 역할을 명확하게 표현할 수 있습니다. 클래스 이름과 메서드 이름을 통해 해당 컬렉션의 역할과 기능을 직관적으로 이해할 수 있습니다.

일급 컬렉션 사용법

import java.util.Collections; import java.util.List; public class LottoNumbers { private List<LottoNumber> lottoNumbers; public LottoNumbers(List<LottoNumber> lottoNumbers) { this.lottoNumbers = lottoNumbers; sort(); } public static LottoNumbers from(List<LottoNumber> lottoNumbers) { return new LottoNumbers(lottoNumbers); } public List<LottoNumber> getLottoNumbers() { return lottoNumbers; } public void sort() { Collections.sort(lottoNumbers); } }
Java
복사
이렇게 로또 번호를 관리하는 객체를 생성하여, 상태값과 계산하는 형태를 객체의 형태로 보관하여, 호출하는 형태로 사용하여 유지보수하는 방법이다.

후기

오늘은 일급컬렉션에 정리하게되었다. 실무에서 사용하게 된다면 소스코드를 좀 더 간결하게 호출하는 형태로 변경할 수 있을 것 같아서 좋았으며, 서비스 레이어를 간결하게 할 생각에 빨리 적용하고 싶은 생각이 들었다.