웹 사이트

JSON 데이터 교환 형식이 표준 축복을 얻습니다.

How far can I take this? l Road to Summer Shredding

How far can I take this? l Road to Summer Shredding
Anonim

XML에 대한 대안이 될 것으로 생각되는 웹 응용 프로그램을위한 상호 교환 형식은 표준 단체 인 Ecma의 도움을 얻었습니다. Ecma 총회는 Istvan Sebestyen에 따르면 ECMAScript의 다섯 번째 버전을 승인했으며, 조직의 사무 총장. 널리 사용되는 JavaScript가 방언 인이 ECMAScript의 새 버전에는 JSON (JavaScript Object Notation) 사용에 대한 기본 지원이 포함되어 있습니다.이 포함은 "확실히 개발자에게 큰 영향을 미칩니다."라고 더글러스 크록 포드 (Douglas Crockford) 야후 소프트웨어 아키텍트는 JSON의 창시자로 인용했다. "JSON은 이미 웹 애플리케이션에서 광범위하게 사용되고 있으며, JSON을 ECMAScript 언어에 내장함으로써 [JSON] 구현이 더 빠르고 안전하게 이루어질 것"이라고 Crockford는 말했다. 이 승인은 웹 응용 프로그램 개발 커뮤니티가 최소한 단순한 구조화 된 데이터의 전달이 필요한 경우에는 서로 다른 시스템간에 데이터를 교환하기위한 유일한 유일한 표준으로 XML을 사용하지 못하게하는 신호이기도합니다.

공식적으로 ECMA-262라는 제목의 표준에는 JSON 텍스트를 만들고 구문 분석하기위한 객체가 포함되어 있습니다. 대부분, Crockford가 저술 한 2006 인터넷 엔지니어링 태스크 포스 RFC 4627을 따릅니다. 새로운 ECMAScript 표준은 JSON을 둘러싼 여러 가지 보안 문제를 해결하려고 시도합니다.

지난 몇 년 동안 단순한 객체 액세스 프로토콜과 같은 XML 기반 접근 방식 대신 JSON을 사용하는 웹 응용 프로그램 개발자가 늘어나면서 데이터를 전송하여 두 컴퓨터간에 전송할 수 있습니다. Ajax 아키텍트이자 Virginia의 주요 파트너 인 Daniel Markham은 "JSON과 XML 옹호자 간의 분열은 앞으로도 계속 될 것이며 앞으로도 계속 될 것"이라고 말했다. 기반 컨설팅 회사 인 Bedford Technology Group.

지지자들은 JSON이 단순함을 칭찬했습니다. RFC에 따르면 JSON은 "구조화 된 데이터의 직렬화"를 처리하기 위해 특별히 개발되었습니다. JSON은 수신자가 파싱 할 수 있도록 전송할 데이터를 정렬하는 방법에 관한 일련의 규칙 또는 문법입니다. 객체와 배열을 포맷팅하는 자바 스크립트의 규칙을 차용합니다. 반면 XML은 일반적으로 JSON에서 렌더링되는 것보다 더 크고 복잡한 데이터를 만드는 경향이있는 스키마 기반 마크 업 태그에 의존합니다. "XML에 비해 JSON을 전반적으로 좋아하는 팬입니다. Markham은 "JavaScript 객체가 서버 엔터티와 긴밀하게 일치하는 경우에는 가질 수없는 추가적인인지 부하가 ​​있습니다. Markham은 또한 XML은 JSON이 일치시킬 수없는 융통성이 있다고 지적했습니다. "XML은 모든 커넥터의 모든 종류의 데이터를 처리 할 수있는 인터넷의 스위스 군대입니다."Crockford는 2001 년 Ajax 웹 개발 도구 세트를 사용하여 JSON을 공식화했습니다 JavaScript, XML 및 HTML이 포함됩니다. 그는 XML이 자신의 필요에 비해 너무 큰 것으로 나타났습니다. "XML은 단지 추악하고 비효율적이었습니다. 그래서 우리는 자바 스크립트 자체의 데이터 표현을 사용하여 데이터를 나타 냈습니다."라고 Crockford가 말했습니다. Crockford는 JSON의 발명가로 널리 인용되어 왔지만,이 appellative를 추측하는 것에 대해서는 겸손합니다. 그는 "자연 속에서 이미 존재했으며, 방금 발견했다"고 말했다.

JSON은 2001 년 창안 된 이래 인기를 얻고있다. JSON.org 사이트에는 Perl, Active Server Pages, PHP, C, Java, Python 및 기타 언어 용 JSON 변환기가 나열되어 있습니다. 야후는 자사의 웹 서비스를 위해 JSON을 지원한다. Internet Explorer와 Firefox의 최신 버전은 모두 JSON을 지원합니다. JSON은 보편적으로 출시 될 ECMAScript 5의 첫 번째 비트처럼 보입니다. "라고 Crockford는 말했습니다.

JSON 자체는 항상 ECMAScript의 일부였습니다. 적어도 Crockford는 JSON의 기초로 ECMAScript 문법을 사용했습니다. Crockford는 ECMAScript 5와의 차이점은 ECMAScript가 JSON 용 "내장 라이브러리 지원"을 제공한다는 점입니다. 대부분의 개발자는 JSON 기반 텍스트를 유용한 데이터 구조로 구문 분석하기 위해 JavaScript eval () 함수를 사용했습니다. 보안 전문가는 이러한 접근 방식을 타사가 악의적 인 코드를 삽입 할 수 있기 때문에 이러한 접근 방식을 보안 결함으로보고 있습니다. 썬 마이크로 시스템즈의 XML 포맷 공동 책임자이자 웹 기술 담당 이사 인 팀 브레이 (Tim Bray)는 새로운 파서가 eval () 함수를 사용할 필요가 없다고 말했다. JSON 값. "XML에는 문서 (블로그 조각, 보도 자료, 의료 기록)를 교환 할 수있게 해주는 많은 기능이 있으며 순수한 데이터 교환을 위해 불필요 할 수 있습니다."전자 메일로 지적했습니다. "JSON은 이런 종류의 물건을 교환하는 데 정말 잘 작동하며, XML처럼 잘 작동하는 업체가 아닙니다."

ECMA 축복이 JSON 채택에 많은 영향을 미칠지 의심 스럽다. 왜냐하면 이미 널리 사용되고 있기 때문에, 표준이 일반적으로 다루는 상호 운용성 문제로 어려움을 겪지 않습니다. "분명히 JSON의 현실을 인식 한 ECMAScript [개정판]에는 아무런 해가 없습니다.하지만 JSON은 이미 웹 IT 문화에 깊숙히 자리 잡고 있습니다."

ECMAScript는 원래 자바 스크립트 프로그래밍 언어의 벤더 중립적 버전으로, 넷스케이프가 웹 브라우저 용 스크립팅 언어로 만들었습니다.