JSON (JavaScript 객체 표기법)
JSON(JavaScript Object Notation) 은 사람이 읽고 쓰기 쉽고 기계가 파싱 및 생성하기 쉬운 경량 데이터 교환 형식입니다. JavaScript 프로그래밍 언어의 하위 집합을 기반으로 하며, XML의 대안으로 서버와 웹 애플리케이션 간 데이터 전송에 널리 사용됩니다.
JSON의 주요 특징:
데이터 형식: JSON은 데이터 객체를 키-값 쌍으로 표현하는 간단한 텍스트 기반 형식을 사용합니다. 예시:
{
"name": "John Doe",
"age": 30,
"isStudent": false,
"friends": ["Jane", "Alice", "Bob"]
}
- 데이터 유형: JSON은 다음과 같은 여러 데이터 유형을 지원합니다:
- 문자열: 큰따옴표(” “)로 묶입니다.
- 숫자: 정수 또는 부동 소수점 숫자.
- 부울: true 또는 false.
- 배열: 대괄호([ ])로 묶인 순서 있는 값 목록.
- 객체: 중괄호({ })로 묶인 순서가 없는 키-값 쌍의 모음입니다.
- Null: 빈 값(null)을 나타냅니다.
- 직렬화: JSON 직렬화는 데이터 객체를 JSON 문자열로 변환하는 과정입니다. 이는 일반적으로 네트워크를 통해 데이터를 전송하거나 파일에 데이터를 저장하는 데 사용됩니다.
- 구문 분석: JSON 구문 분석은 JSON 문자열을 다시 데이터 객체로 변환하는 과정입니다. 이를 통해 애플리케이션은 서버에서 수신하거나 파일에 저장된 JSON 데이터를 처리할 수 있습니다.
- 사용처: JSON은 웹 개발에서 다음과 같은 다양한 목적으로 널리 사용됩니다:
- API(애플리케이션 프로그래밍 인터페이스): 많은 웹 API가 요청 및 응답 페이로드의 데이터 형식으로 JSON을 사용합니다.
- 구성 파일: 웹 애플리케이션의 구성 설정 저장에 JSON이 사용됩니다.
- 데이터 저장: JSON은 데이터베이스나 파일에 구조화된 데이터를 저장하는 데 사용됩니다.
- AJAX(비동기 자바스크립트 및 XML): 전체 페이지 재로딩 없이 웹 페이지 일부를 업데이트하기 위해 AJAX와 함께 JSON이 자주 사용됩니다.
- 프론트엔드 개발: React, Angular, Vue.js와 같은 프론트엔드 개발 프레임워크에서 데이터 관리를 위해 JSON이 흔히 사용됩니다.
JSON의 장점:
- 인간이 읽기 쉬운 형식: JSON은 사람이 읽고 작성하기 쉬워 수동 편집 및 디버깅에 적합합니다.
- 경량성: JSON은 간단한 구문을 가지므로 XML과 같은 다른 데이터 형식에 비해 파일 크기가 작습니다.
- 언어 독립성: JSON은 특정 프로그래밍 언어에 구애받지 않아 다양한 프로그래밍 언어 및 플랫폼에서 쉽게 사용할 수 있습니다.
- 상호 운용성: JSON은 다양한 프로그래밍 언어와 프레임워크에서 지원되므로 서로 다른 시스템 간 데이터 교환에 널리 사용됩니다.
요약하자면, JSON은 단순성, 가독성, 다양한 프로그래밍 언어 및 플랫폼과의 호환성 덕분에 웹 개발에서 다용도로 널리 사용되는 데이터 교환 형식입니다. 프록시 서버와 웹 애플리케이션 간 데이터 전송 및 구조화된 데이터 저장에 흔히 사용됩니다.