유연하고 확장 가능한 배너 기능 구현하기
5
AI 요약

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

유연하고 확장 가능한 배너 기능 구현하기

이 게시물은 토스증권의 배너 기능을 유연하고 확장 가능하게 구현한 방법을 소개합니다.

핵심 구현 전략

  • 배너 지면별 position 필드를 도입해 재사용성과 커스터마이징 용이성 확보
  • IntelligenceHandler 인터페이스를 통해 각 지면별 배너 로직을 분리하고 관리
  • UserDataSource에 LazyContext를 적용해 필요한 시점에만 외부 API 호출
  • Spring Expression Language(SpEL)를 사용해 복잡한 노출 조건을 유연하게 처리
  • IntelligenceCondition 구현체들의 check 메소드를 리플렉션으로 호출해 SpEL과 연동

결과 및 장점

이 구조는 새로운 지면, 데이터 소스, 노출 조건 추가를 쉽게 하며 if-else 중첩 문제를 해소해 코드 가독성과 유지보수를 크게 개선했습니다.

연관 게시글