본문으로 이동
쓰기 쉬운 Toss Front SDK
문서

쓰기 쉬운 Toss Front SDK

이주함 토스 · 토스 기술 블로그

원문 보기

AI 핵심 요약

Toss Front SDK에서는 연동사가 서버를 열고 연결·메시지 리스너를 등록한 뒤 각각 정리해야 하는 절차가 휴먼 에러와 리소스 누수로 이어질 수 있었습니다. 이를 줄이기 위해 서버 시작, 콜백 등록, 연결별 정리와 종료를 묶는 `start()`·`stop()` 형태의 퍼사드 API를 설계하고, 내부 오케스트레이션을 SDK가 맡도록 했습니다. AWS CDK의 L1·L2처럼 흔한 사용 사례는 고수준 인터페이스로 단순화하되, 세밀한 제어가 필요한 경우에는 `open`, `close`, `listen` 같은 저수준 API를 함께 제공하는 균형을 제안합니다. 의도에 맞춘 인터페이스와 명확한 리소스 소유권은 사용성을 높이고 누수를 방지하며, 내부 구현 변경으로부터 사용자 코드를 보호하는 데 도움이 됩니다.

  • SDK API는 기능 목록보다 사용자가 따라야 하는 절차와 리소스 정리 책임을 얼마나 줄이는지에 초점을 맞춰 설계하세요.
  • 고수준 API는 서버 시작부터 리스너 등록과 정리까지 하나의 의도 기반 워크플로우로 묶을 수 있습니다.
  • 특수한 요구사항에 대비해 고수준 추상화와 함께 원자적인 저수준 API라는 탈출구를 제공하세요.
  • 리소스를 생성한 곳에서 닫도록 책임을 모으면 이벤트·리스너 누수와 정리 누락을 줄일 수 있습니다.

소개

SDK의 품질은 어떤 기능들을 제공하는가보다, 사용자가 그 기능을 어떤 형태로 쓰게 되느냐에 따라 갈립니다. 사용 형태를 고민하기 위해, 퍼사드(Facade) 패턴에 기반하여 쓰기 쉽게 SDK 메서드와 인터페이스를 구성하는 것이 중요한 방법론이 됩니다.

비슷한 학습 자료

문서 한주연

The Toss Frontend team no longer has to dig through documents to find what they need. We’re building an environment where developers can get immediate answers to their questions through docs and AI. Here’s how we built a new documentation system that lets developers focus entirely on development.

프론트엔드 AI에이전트 개발

문서 박서진/이다용

*This is the English version of a previously published article. Hello! We're Sojin Park, Head of Frontend Engineering at Toss, and Dayong Lee, Frontend Developer at Toss Bank. Today, we'd like to share the story of es-toolkit: how it started as a small utility function library inside Toss and grew i...

프론트엔드 프로그래밍 언어

문서 최진영

SDK를 개발하며 마주한 다양한 상황과 기술적 어려움, 그리고 이를 해결하기 위해 우리가 설정한 핵심 가치와 달성해온 과정을 공유합니다.

웹 개발 프론트엔드

문서 강민우

'접근성은 어려운 것' 이라고 느끼는 분들을 위해 실무에서 바로 적용할 수 있는 접근성의 핵심 개념과 실수하기 쉬운 패턴을 알려주는 문서, A11y Fundamentals 을 소개합니다.

UI/UX

문서 박연주/김지혜

인터랙션, 꼭 넣어야 해요?

문서 박연주/김지혜

빠른 속도를 중요시하는 토스에서 어떻게 팀원들을 인터랙션에 공감하게 하고 슬릭한 제품을 만들어나갈 수 있었는지 소개할게요.

UI/UX

문서 이지윤

디자이너들도 어떻게 하면 빠른 속도를 내며 전체적인 경험을 맞출 수 있을지 매 순간 고민하고 있어요.

UI/UX