-
(1분 읽기) JSON이란? 📚Android 개발/개념 & 기초 2025. 2. 23. 20:03
📌 JSON이 뭐야?
JSON (JavaScript Object Notation)
데이터를 주고받을 때 사용하는 가볍고 간단한 데이터 형식이야.
사람도 읽기 쉽고, 컴퓨터도 이해하기 쉬운 텍스트 포맷이지. 😎
XML 대체제로 가독성과 처리 속도가 뛰어나서 요즘 대세야! 🚀
💡 왜 JSON을 쓸까?
- 가볍고 빠름: XML보다 데이터 크기가 작아서 네트워크 전송이 빨라.
- 가독성 최고: 중괄호 {}와 배열 []로 구조화해서 읽기 쉬워.
- 호환성 최고: 거의 모든 프로그래밍 언어에서 쉽게 쓸 수 있어.
- API 표준: RESTful API에서 기본 포맷으로 자리잡았어.
🔧 JSON 문법이 궁금해?
{ "이름": "홍길동", "나이": 25, "취미": ["독서", "운동", "게임"], "주소": { "도시": "서울", "우편번호": "123-456" } }
- Key-Value 쌍으로 구성돼 있어.
- Key는 항상 쌍따옴표로 감싸야 해.
- Value는 문자열, 숫자, 배열, 객체, 불리언, null 사용 가능.
- 중첩 구조도 표현할 수 있어. (예: 주소 안에 도시, 우편번호)
📡 어디에 쓰냐고?
- 앱 ↔ 서버 간 데이터 전송
예: 쇼핑몰에서 주문정보 보내기 🛒 - 실시간 데이터 교환
예: 채팅 메시지, 댓글 주고받기 💬 - 설정 파일
예: 앱 환경 설정(config.json)
❓ XML vs JSON
항목 XML JSON 가독성 복잡하고 장황함 😵 간단하고 읽기 쉬움 😍 데이터 크기 태그가 많아 크기가 큼 🐢 태그 없이 간결해서 가벼움 🚀 파싱 속도 느림 빠름 주석 지원 미지원 😥 데이터 타입 문자열만 가능 문자열, 숫자, 불리언, 배열, 객체 사용처 오래된 시스템이나 SOAP 웹서비스 RESTful API, 웹/앱 개발
⚠️ JSON의 단점은?
- 주석 불가 😥
JSON에는 주석을 달 수 없어. 코드 설명이 힘들 수 있어. - 데이터 타입 제한 🔒
문자열, 숫자, 배열, 객체, 불리언, null만 지원해.
날짜, 함수는 표현할 수 없어. - 보안 이슈 🔐
JSONP 방식 사용 시 XSS 공격 위험이 있어. - 대형 데이터 처리 비효율 🐢
중첩 구조가 깊어지면 처리 속도 저하가 발생할 수 있어.
🚀 요약 & 꿀팁
- JSON은 가볍고 읽기 쉬운 데이터 포맷이야.
- 대부분의 프로그래밍 언어에서 호환되니 앱 개발 필수템!
- XML보다 가볍고 빠르지만, 주석 불가와 데이터 타입 제한은 알아두자!
- RESTful API, 실시간 데이터 교환에서 많이 사용돼.
- 면접 꿀팁: 장단점과 사용처를 정확하게 설명하면 플러스 점수! 🎯
💡 추가 팁
- JSON 데이터 검사할 때는 JSONLint 사용해봐.
- JSON을 더 깊게 이해하고 싶다면 JSON Schema도 공부해보는 걸 추천해! 🚀
'Android 개발 > 개념 & 기초' 카테고리의 다른 글
(1분 읽기) Kotlin Class vs Data Class의 생성자 완벽 비교 🚀 (0) 2025.03.02 (1분 읽기) XML이란? 📚 (0) 2025.02.26 (1분 읽기) 안드로이드에서 도메인 모델과 데이터베이스 Entity 🤔 (0) 2025.02.18 (1분 읽기) Parcelable이 뭐야? 🤔 (2) 2025.02.17 (1분 읽기) Serializable이 뭐야? 🤔 (0) 2025.02.17