REST API camal vs snake 어떤거를 쓰는게 좋을까?

2024. 7. 4. 01:38·Programming/Etc
728x90
반응형

REST API에서 요청(Request) 및 응답(Response) 파라미터의 표기법으로는 주로 camelCase와 snake_case가 사용됩니다. 이 두 가지 표기법은 각각의 상황과 컨텍스트에 따라 선택됩니다.

 

1. camelCase

  • 주로 사용되는 경우: JavaScript 및 JSON 데이터 표기법
  • 예시: userId, firstName
  • 특징: 소문자로 시작하며 각 단어의 첫 글자를 대문자로 표기
  • 선호되는 이유: JavaScript 객체 및 JSON 표기법에서 많이 사용되어, 클라이언트 측(특히 웹)에서 호환성이 높음

 

2. snake_case

  • 주로 사용되는 경우: Python 및 URL 경로 표기법
  • 예시: user_id, first_name
  • 특징: 각 단어를 소문자로 작성하며 언더스코어(_)로 단어를 구분
  • 선호되는 이유: Python 코드 및 SQL 데이터베이스 스키마와의 일관성을 유지하기 위해 많이 사용됨

 

현대적 트렌드

현대 REST API 디자인에서는 camelCase가 더 자주 사용됩니다. 이는 주로 JavaScript와 JSON의 광범위한 사용 때문입니다. JSON은 API 통신의 주된 포맷으로 사용되며, JavaScript 객체 표기법과 일치하기 때문에 camelCase가 더 많이 채택됩니다.

참고 예시

  • GitHub API(https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api?apiVersion=2022-11-28): camelCase 사용 (userId, repoName)
  • AWS API(https://docs.aws.amazon.com/apigateway/latest/api/API_CreateAuthorizer.html): camelCase 사용 (maxItems, nextToken)
  • Google API: camelCase 사용 (kind, nextPageToken)

 

결론

일반적으로 REST API에서는 camelCase를 사용하는 것이 트렌드입니다. 이는 JSON 및 JavaScript와의 호환성 때문에 많은 API 제공자들이 이 표기법을 채택하고 있기 때문입니다. 다만, 특정 조직이나 프로젝트에서는 snake_case를 사용할 수도 있으며, 일관성을 유지하는 것이 가장 중요합니다.

 
728x90
반응형
저작자표시 (새창열림)

'Programming > Etc' 카테고리의 다른 글

시퀀스 다이어그램의 주요 용어와 요소 정리  (0) 2024.07.08
Mac PC 에서 sleep 해제 방법  (0) 2024.07.06
폰트 파일 확장자 정보에 대하여  (1) 2024.06.13
윈도우 TreeSize Free를 이용한 용량 확인 및 제거 방법  (1) 2024.01.04
쿠버네티스와 도커의 볼륨의 차이  (0) 2023.06.11
'Programming/Etc' 카테고리의 다른 글
  • 시퀀스 다이어그램의 주요 용어와 요소 정리
  • Mac PC 에서 sleep 해제 방법
  • 폰트 파일 확장자 정보에 대하여
  • 윈도우 TreeSize Free를 이용한 용량 확인 및 제거 방법
이프로그
이프로그
리뷰, 개발, 일상을 기록하는 블로그
    반응형
    250x250
  • 이프로그
    이프로그의 IT이야기
    이프로그
  • 전체
    오늘
    어제
    • 분류 전체보기 (158)
      • Programming (111)
        • C# WPF (11)
        • Java Spring (16)
        • JavaScript & TypeScript (5)
        • Git (9)
        • Database (5)
        • Etc (42)
      • 생활상식 (24)
      • 리뷰 (8)
      • 주식 (12)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      ES6
      클라우드 컴퓨팅
      데이터베이스 성능
      XAML
      협업 도구
      주식투자
      데이터 바인딩
      서버 관리
      C# WPF
      WPF
      데이터 파이프라인
      재테크
      투자
      Kubernetes
      java8
      docker
      DevOps
      자바스크립트 트릭
      Apache Kafka
      투자전략
      소프트웨어 개발
      javascript
      이슈 트래킹
      웹 개발
      마이크로서비스
      rest api
      dynamicresource
      클라우드 네이티브
      분산 메시징 시스템
      Java
    • 최근 댓글

    • 최근 글

    이프로그
    REST API camal vs snake 어떤거를 쓰는게 좋을까?
    상단으로

    티스토리툴바