쿄쿄 IT
JSON / AJAX / XML 본문
* JSON (JavaScript Object Notation)
"속성-값" 또는 "키-값"쌍으로 이루어진 데이터오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준방식이다. *비동기 브라우저/서버통신(AJAX)를 위해 넓게는 XML(AJAX가 사용)을 대체하는 주요데이터기법.
* XML (eXtensive Markup Language)
HTML의 단점을 보완한 인터넷언어로, SGML의 복잡한 단점을 개선한 다목적 마크업 언어이다. 웹상에서 구조화된 문서를 상호교환 가능하도록 설계된 웹 표준 문서 포맷으로 메타데이터 정의가 명확하다. 사용자가 새로운 태그와 속성을 정의 할수 있는 확장성을 가짐.
* AJAX (Asynchronous JavaScript and XML)
브라우저가 갖고있는 XMLHTTPRequest 객체를 이용하여 전체페이지를 새로고치지 않고 페이지의 일부분만을 위한 데이터를 로드하는 기법이며 Javascript를 사용한 비동기통신, 클라이언트와 서버간에 XML데이터를 주고 받는 기술.
* JSP (JavaServer Pages) 서버사이드 언어 = PHP, ASP, Perl / 클라이언트 사이드 언어 = JavaScript
HTML내에 자바 코드를 삽입하여 웹 서버에서 동적으로 웹 페이지를 생성하여 웹 브라우저에 돌려주는 서버 사이드 스크립트 언어이다. Java EE 스펙 중 일부로 웹 애플리케이션 서버에서 동작한다.
------------------------------------------------------------------------------------------------------------------------------
※ 비동기(async)방식이란?
웹페이지를 리로드하지 않고 데이터를 불러오는 방식입니다. 이 방식의 장점은 페이지 리로드의 경우 전체 리소스를 다시 불러와야하는데 이미지, 스크립트 , 기타 코드등을 모두 재요청할 경우 불필요한 리소스 낭비가 발생하게 되지만 비동기식 방식을 이용할 경우 필요한 부분만 불러와 사용할 수 있으므로 매우 큰 장점임.
cf. 동기(synchronous : 동시에 일어나는)
- 동기는 말 그대로 동시에 일어난다는 뜻(요청과 그 결과가 동시에 일어난다)으로 바로 요청을 하면 시간이 얼마가 걸리던지 요청한 자리에서 결과가 주어져야 함.
-> 요청과 결과가 한 자리에서 동시에 일어남
-> A노드와 B노드 사이의 작업 처리 단위(transaction)를 동시에 맞추겠다 라는 뜻.
** 동기와 비동기는 상황에 따라서 각각의 장단점이 있습니다.
- 동기방식은 설계가 매우 간단하고 직관적이지만 결과가 주어질 때까지 아무것도 못하고 대기해야 하는 단점이 있고,
- 비동기방식은 동기보다 복잡하지만 결과가 주어지는데 시간이 걸리더라도 그 시간 동안 다른 작업을 할 수 있으므로 자원을 효율적으로 사용할 수 있는 장점이 있습니다.
** 동기와 비동기는 어떤 작업 혹은 그와 연관된 작업을 처리하고자 하는 시각의 차이입니다. 동기는 추구하는 같은 행위(목적)가 동시에 이루어지며, 비동기는 추구하는 행위(목적)가 다를 수도 있고, 동시에 이루어지지도 않습니다.
'취업 준비 > 기술 면접' 카테고리의 다른 글
ArrayList / Vector (0) | 2020.12.11 |
---|---|
추상클래스 / 인터페이스 (0) | 2020.12.11 |
자바스크립트 / 스크립트언어 (1) | 2020.12.11 |
쿠키과 세션 (0) | 2020.12.11 |
스프링 프레임워크 (0) | 2020.12.10 |