Search

Fluent 패턴

패턴

정의

객체 지향 프로그래밍에서 객체의 메서드를 연속적으로 호출하여 마치 체인처럼 연결하는 프로그래밍 기법을 가능하게 하는 디자인 패턴

특징

메서드는 객체를 반환해야 한다.
메서드의 이름은 명확하고 일관성이 있어야 한다.
메서드 호출 순서는 자유롭다.
객체 생성 과정을 간결하게 만들 수 있다.
코드의 가독성을 향상시킬 수 있다.

장점

코드 간결화 : 여러 메서드를 한 줄에 작성하여 코드를 간결하게 만들 수 있다.
가독성 향상 : 메서드 호출 순서를 명확하게 보여주어 코드의 가독성을 향상시킬 수 있다.
유연성 향상 : 메서드 호출 순서를 자유롭게 변경하여 유연성을 향상시킬 수 있다.

단점

과도하게 사용하면 코드를 이해하기 어려워질 수 있다.
메서드 이름과 호출 순서를 명확하게 설계

예시

Builder 패턴: 객체 생성 과정을 단계별로 수행하는 패턴입니다.
스트림 API: 데이터 처리를 위한 다양한 메서드를 제공하는 API입니다.
UI 프레임워크: 위젯 설정을 위한 메서드 체이닝 방식을 제공하는 프레임워크입니다.

구현 방법

메서드가 객체를 반환하도록 설계
매서드 이름을 명확하고 일관되게 작성
메서드 호출 순서를 자유롭게 하도록 설계