서론
최근 Android 작업을 하다가, 오랜만에 신규 API 연동 작업을 진행했는데 JSON에 관한 개념이 부족한 것 같아 다시 정리해보려 한다😂
JSON 맨날 쓰는 건데, 구조가 조금만 바뀌어도 헷갈리니 개념부터 차근차근!
JSON이란?
JSON은 JavaScript Object Notation의 약어로, 데이터를 저장하고 교환하기 위한 경량의 데이터 형식이다.
JSON은 텍스트 기반의 데이터 형식으로, 사람이 읽고 쓰기 쉽고, 기계가 파싱하고 생성하기 쉽다.
주로 애플리케이션에서 데이터 교환 형식으로 사용되고, 다양한 언어에서 지원된다.
JSON의 주요 특징과 구조
1. key-value
JSON은 key와 value의 쌍으로 이루어진 데이터를 표현한다. key와 value는 콜론(:)으로 구분되며, 각 쌍은 쉼표(,)로 구분된다.
{
"name": "soo",
"age": 27
}
2. 데이터 유형
JSON은 다양한 데이터 유형을 지원하고, Null 값도 들어갈 수 있다.
- String : 큰따옴표(")로 둘러싼 text
- Number : 정수 또는 부동 소수점 숫자
- Boolean : 'true' / 'false'
- Array : 대괄호([])로 둘러싼 값들의 순서 있는 목록
- Object : 중괄호({})로 둘러싼 key-value 쌍들의 집합
3. 중첩
JSON은 중첩된 데이터 구조를 지원한다. 객체 내부에 다른 객체나 배열을 중첩하여 복잡한 데이터 구조를 표현할 수 있다.
{
"developer" : {
"name": "soo",
"age": 27
},
"skill" : ["java", "kotlin", "javascript"]
}
4. 가독성
JSON은 사람이 쉽게 읽을 수 있도록 작성되어 있고, 들여 쓰기를 사용하여 데이터 구조를 시각적으로 구분 짓고 가독성을 향상시킨다.
마무리
오늘은 정말 간단하게 JSON의 기본에 대해서 정리를 해두었다. 사실 위의 내용이 기본이 되는 내용이라 다 안다고 생각했지만, 실제로 API 호출 시 복잡하게 JSON이 중첩되어 있어 어지러웠던 경험이 종종 있었다.
사실 앱 개발자 입장에서는 API 호출 후 JSON을 파싱 하는 내용이 더 중요해서 조만간 해당 내용을 다시 정리해보려 한다.
코딩은 잠깐 시간 지나면 까먹는 거 같아😅