1. Json 이란?
Javascript Object Notation 약자로
좀 더 쉽게 데이터를 교환하고 저장하기 위하여 만들어진 텍스트 기반의 데이터 교환 표준 이다!
Json의 가장 중요한 특징이 있는데,
"프로그래밍언어와 운영체제에서 독립적" 이라는 말이다.
2. Xml 과 Json 코드 분석
우선, xml 코드와 Json 코드를 보자.
2개의 코드는 같은 내용 코드인데 파일이 다른 것이다.
2개 같은 내용을 객체로 표현한 것인데, 코드가 조금 다르다.
같은 내용은 왜 다른 코드가 나왔을까요??
- Xml 코드
<dog>
<name>식빵</name>
<family>웰시코기</family>
<age>3</age>
</dog>
- Json 코드
{
"name":"식빵"
"family":"웰시코기"
"age":"3"
}
3. XML 과 JSON은 표준이다??
간단한 상황을 통해 설명을 하겠습니다.
웹이 동작하는 방식은 위의 그림처럼 된다.
만약에 클라이언트 코드는 JAVA로 했고,
서버쪽 코드는 C++ 했다면 어떻게 데이터를 주고 받을까요??
객체 자체를 보낼때, 서로 같은 java이면 서로 알 수 있을텐데
서버에서 C++ 언어로 되어 있기 때문에, 못 알아 듣는다. 즉, 해석을 못합니다.
서로 같은 언어로 객체에 있는 값을 사용하는 것이 가장 best 이지만,
서로 다른 언어를 쓸 상황이 충분히 있습니다.
데이터들을 보내야하는데, 한가지 언어로 다시 다 바꿔서 보낼수 없으니, 새로운 방법을 찾아야 합니다.
이런 상황에는 새로운 표준을 만들어야 했습니다.
- XML, JSON의 탄생 배경
-XML
야 우리 모두 XML 형식을 통일 시켜서 데이터 만들자.
그래서 서버 혹은 클라이언트가 사용하는 언어가 달라도 통신이 가능하게 만들자.
이것이 XML의 탄생입니다.
-JSON
현재도 XML를 쓰고 있지만, 잡스가 아이폰을 출시하면서 다른 표준이 필요했습니다.
모바일 환경에서 사용 가능한 표준...!!
모바일환경이 나오니깐 텍스트 1개 1개가 다 Money이다.
1mb, 1mb, 1mb ..... 이것을 줄이고 줄여야지 Money도 벌면서 데이터 용량도 줄일 수 있었습니다..
그래서 안되겠다. 우리 코드 좀 줄이자. 그래서 JSON이 탄생했습니다.
JSON은 자바스크립트 기반으로 만들었고, 텍스트를 많이 줄었으며.
자바스크립트의 "{ }" 표시는 객체라는 말이다.
결론, 무슨 언어로 만들어도 JSON(혹은 xml)로 가지고 와야합니다.
프로그래밍언와 운영체제에 독립적이라는 말은, 새로운 표준이니깐 독립적이라는 말 입니다.
4. JSON의 장점, 단점
장점
1. 문자열을 전송받은 후에 해당 문자영을 바로 파싱하므로, xml보다 더욱 빠른 처리 속도
2. 자바스크립트가 연동되어 빠른 응답이 필요한 웹 환경에서 많이 사용되고 있습니다.
단점
1. 내용이 함축적이다 보니 내용의 의미파악이 힘들수 있음 (JS 공부하면 단점은 아닙니다.)
2. XML에 비해 적은 규격의 데이터 전송엔 적합하지만, 대용량의 데이터 송수신에는 부적합니다.
3. JSON은 전송받은 데이터의 무결성을 사용자가 직접 검증해야 합니다.
그래서 데이터 검증이 필요한 곳은 스키마를 사용하여 데이터의 무결성을 검증 할 수 있는
xml이 아직도 많이 사용되고 있다.
*Tip.
무결성이란?
데이터베이스에 저장된 데이터 값과 그것이 표현하는 현실세계의 실제값이
일치하는 정확성을 의미한다.
'개발 및 IT 용어' 카테고리의 다른 글
인터프리터 언어와 컴파일 언어의 차이점 (0) | 2022.03.02 |
---|---|
컴퓨터를 이해하자! (OS, 시스템 종류, CPU, 메모리) (0) | 2022.02.19 |
댓글