기술 면접(JSON)

유요한·2024년 2월 23일
0

기술면접

목록 보기
10/27
post-thumbnail

JSON

JSON(Javascript Object Notation)라는 의미의 축약어로 데이터를 저장하거나 전송할 때 많이 사용되는 경량의 data 교환 형식을 의미합니다. JSON은 자바스크립트의 객체 표기법으로부터 파생된 부분 집합입니다. 따라서 JSON 데이터는 다음과 같은 자바스크립트 객체 표기법에 따른 구조로 구성됩니다. JSON은 XML의 대안으로서 좀 더 쉽게 데이터를 교환하고 저장하기 위하여 고안되었습니다. JSON은 javascript object notation 의 약자로 자바스크립트에서 객체 인스턴스를 생성하는 또 다른 방식입니다. 객체안에는 매개변수와 값이 들어있으므로 이 자체로 데이터의 교환을 하기에 용이합니다. 네트워크와 앱 등 서로간 데이터 교환을 위해 과거에는 xml 을 사용했다면 json은 xml 이후에 등장하여 널리 사용되고 있는 형식입니다. 확장자는 .json이다. 사람과 기계 모두 이해하기 쉬우며 용량이 적어서 최근에는 XML을 대신하여 데이터 전송에 사용한다. JSON은 Object로 되어 있는데 { }로 감싸여 있는 것을 말합니다. 또한, JSON은 텍스트 기반이므로 어떠한 프로그래밍 언어에서도 JSON 데이터를 읽고 사용할 수 있습니다.

데이터의 값

  1. 숫자
  2. 문자열
  3. 불리언
  4. 객체
  5. 배열
  6. null
  • JavaScript Object Notation 줄임말
  • JSON은 서버와 클라이언트 또는 컴퓨터/프로그램 사이에 데이터를 주고 받을 때 사용하는 데이터 포멧
  • 키와 값을 괄호와 세미콜론과 같이 간단한 기호로 구성하여 표현할 수 있고, 언어나 운영체제에 구애받지 않기 때문에 많이 사용됨
  • 특히 웹/앱 환경에서 Rest API를 사용하여, 서버와 클라이언트 사이에 데이터 주고 받을때 많이 사용

JSON은 어디에 사용하는가?

Ajax를 사용해 데이터를 주고받을 때 그 데이터 포맷으로 JSON을 사용하는 것이다. eval()함수 하나로 해결되는 것이 JSON이다. 변수를 전달하기 위한 목적의 JSON이 Javascript 그 자체를 전달할 수 있다.

  • 브라우저 확장 프로그램 또는 웹 사이트를 포함하는 자바스크립트 기반 응용 프로그램을 작성할 때 사용된다.
  • JSON 형식은 네트워크 연결을 통해 구조화 된 데이터를 직렬화 및 전송하는데 사용된다.
  • 주로 서버와 Web 응용 프로그램 간에 데이터를 전송하는데 사용된다.
  • Web 서비스와 API.s는 공개 데이터를 제공하기 위해 JSON 형식을 사용한다.
  • 여러 프로그램 언어에서 사용할 수 있다.

JSON의 특징

  • 서버와 클라이언트 간의 교류에서 일반적으로 많이 사용된다.
  • 자바스크립트 객체 표기법과 아주 유사하다.
  • 자바스크립트를 이용하여 JSON 형식의 문서를 쉽게 자바스크립트 객체로 변환할 수 있는 이점이 있다.
  • JSON 문서 형식은 자바스크립트 객체의 형식을 기반으로 만들어 졌다.
  • 자바스크립트 문법과 굉장히 유사하지만 텍스트 형식일 뿐이다.
  • 다른 프로그래밍 언어를 이용해서도 쉽게 만들 수 있다.
  • 특정 언어에 종속되지 않으며, 대부분의 프로그래밍 언어에서 JSON 포맷의 데이터를 핸들링 할 수 있는 라이브러리를 제공한다.

JSON 문법

  • 데이터는 속성-값 쌍으로 표현된다.
  • 중괄호는 개체를 유지하고 각각의 이름이 계속되고 있는 :(콜론), 속성-값 쌍으로 쉼표로 구분된다.
  • 대괄호는 배열과 값은 쉼표로 구분된다.

XML과 JSON의 공통점

XML과 JSON의 차이점

JSON 사용범위

XML 문서는 XML DOM을 이용하여 해당 문서에 접근합니다. 하지만 JSON은 문자열을 전송받은 후에 해당 문자열을 바로 파싱하므로, XML보다 더욱 빠른 처리속도를 보여줍니다. 따라서 HTML과 자바스크립트가 연동되어 빠른 응답이 필요한 웹 환경에서 많이 사용되고 있습니다. 하지만 JSON은 전송받은 데이터의 무결성을 사용자가 직접 검증해야 합니다. 따라서 데이터의 검증이 필요한 곳에서는 스키마를 사용하여 데이터의 무결성을 검증할 수 있는 XML이 아직도 많이 사용되고 있습니다.

profile
발전하기 위한 공부

0개의 댓글