JavaScript

이 문서는 JavaScript SDK를 사용하기 위한 정보를 제공하고 설명합니다.

📘

Before You Read

  • SDK 연동이 처음이라면, SDK 문서를 참고해주세요.
    SDK에서 사용되는 몇 가지 키
    문서에서 언급되는 몇 가지 키가 있습니다. 각 키 개념 및 키를 확인하는 방법에 대해서는 SDK에서 사용되는 키 문서를 읽어주시기 바랍니다.

브라우저 지원

JavaScript SDK는 IE11+ 및 모든 주요 브라우저를 지원합니다.
JavaScript SDK를 사용하기 위해서는 Promise, Map API가 필수로 지원되어야 합니다. 폴리필이 필요하다면 core-js를 이용하는 것을 추천합니다.

프레임워크 지원

React를 사용중이라면 React 가이드를 참고해주세요.
Angular, Vue 또는 기타 프레임워크에서 JavaScript SDK를 사용할 수 있습니다. 특정 환경 및 프레임워크에 대한 지원이 필요하시면 핵클 슬랙 커뮤니티 또는 [email protected]로 문의해주세요.


작업 순서

1356

1. SDK 연동

핵클을 사용하려는 개발 코드에 SDK를 연동한 적이 없다면 SDK를 우선 연동해야 합니다.

SDK 연동은 최초 1회만 진행합니다. 이미 연동했다면 바로 3단계로 이동할 수 있습니다.
예를 들어, 이미 SDK 연동 후 사용자 이벤트 전송을 하고 있는 상황에서 기능 플래그를 도입하고자 한다면 SDK 연동 단계를 다시 거칠 필요가 없습니다. 특히 SDK 초기화를 여러 번 수행하지 않도록 주의하세요.

2. SDK 기능

SDK 기능은 용도에 따라 여러 종류를 함께 사용할 수 있습니다.
대표적인 활용 사례를 들면 다음과 같습니다.

사례 1. A/B 테스트에서 테스트 그룹 분배

A/B 테스트에서는 2개 이상의 테스트 그룹을 만든 후, 사용자를 테스트 그룹 중 하나로 할당합니다.
테스트 그룹에 할당하는 것을 테스트 그룹 분배라고 하며, 핵클에서 해당 기능을 제공합니다.

사례 2. 기능 플래그 값 얻기

특정 기능에 대해 기능 플래그를 적용할 경우 핵클 대시보드에서 클릭 한 번으로 해당 기능을 활성화 혹은 비활성화할 수 있습니다.
핵클 대시보드에서의 설정이 제대로 동작하기 위해서는 코드 레벨에서 해당 값을 얻을 수 있어야 합니다.

사례 3. 이벤트 전송

특정 사용자의 행동(이벤트)을 기록하기 위해 사용합니다.

이 기능은 가장 활용할 곳이 많습니다.
행동을 기록하므로 A/B 테스트 혹은 기능 플래그에 대한 반응을 측정하는 데에 유용하게 사용할 수 있습니다.
또한 로그 기록, 사용자 퍼널 분석 등에도 요긴하게 사용할 수 있습니다.

사례 4. 데이터 세부 분석

사용자 속성을 이용하여 데이터 세부 분석을 할 수 있습니다.
사용자 속성은 사용자 객체에 부여할 수 있으며, 테스트 그룹 분배 / 기능 플래그 결정 / 사용자 이벤트 전송 시 함께 보낼 수 있습니다.

사례 5. 타겟팅

A/B 테스트 및 기능 플래그에서 특정 속성을 가진 사용자를 타겟(Target)으로 삼을 수 있습니다.
A/B 테스트의 경우 특정 속성을 가진 사용자만 A/B 테스트에 참여하게 할 수 있으며, 기능 플래그의 경우 특정 속성을 가진 사용자에게 기능 플래그를 적용할 수 있습니다.

사례 6. 원격 구성

원격 구성은 애플리케이션에서 관리되고 있는 값, 또는 속성들을 핵클 대시보드에서 정의한 파라미터 값들로 대체하여 실시간으로 애플리케이션의 동작 및 설정 값들을 제어할 수 있는 기능입니다. 파라미터에는 클라이언트/서버 측 애플리케이션의 모든 속성을 대상으로 값을 설정할 수 있습니다. (예. 버튼 색상, 외부 링크)