BlogEtcAPI design first

API design first

API 개발에는 Code FirstDesign First 접근 방식이 있으며, 각 접근 방식은 비즈니스 요구 사항을 API로 변환하는 절차와 우선순위가 다릅니다.

Code First 접근 방식

  • 비즈니스 요구 사항을 먼저 정리한 후 코드를 개발하여 문서를 생성하는 전통적인 방법입니다.
  • 개발 과정:
    1. 기획을 바탕으로 API가 직접 코딩됩니다.
    2. 이후, API 명세서 (예: Swagger 문서)가 생성됩니다.

Design First 접근 방식

  • 코드를 작성하기 전에 API 계약을 먼저 설계하는 접근 방식입니다.
  • 개발 과정:
    1. 기획이 API 명세서 (예: Swagger 문서)로 먼저 변환됩니다.
    2. 이 계약을 바탕으로 실제 코드가 작성됩니다.

Code First보다 Design First를 추천하는 이유

  1. 협업 효율성
    Client와 Server 양쪽의 의견이 반영된 API 명세서를 먼저 정의하면, Client와 Server를 동시에 구현할 수 있어 개발 속도가 빨라집니다.

  2. 목표의 일관성 유지
    API 명세서는 팀원들이 API의 목표와 각 리소스가 어떻게 노출되는지에 대한 공통된 이해를 제공합니다. 이로 인해 모든 팀원이 목표를 일치시킬 수 있습니다.

  3. 원활한 데이터 교환
    효율적인 API 설계는 Client - Server 간의 원활한 데이터 교환을 위한 초석이 됩니다. API 명세서를 먼저 설계하면 양측 간의 데이터 교환이 효율적이고 일관되게 이루어질 수 있습니다.