HTML(HyperText Markup Language)은 웹 상에서 하이퍼텍스트를 보내기 위해서 개발된 언어. 하이퍼텍스트는 문서 시스템의 하나로서, 문서 중에 임의의 장소의 정보가 다른 정보(문서나 이미지 등)에 관련된 즉 링크되어 있는 문서.
마크 업 언어는 문서의 일부에 특별한 문자열을 붙임으로써, 문서를 수식하는 언어.
HTML5는 브라우저 간의 호환성 문제를 해결하거나 텍스트를 데이터로서 다룰 수 있도록 하여 재사용하기 쉽게 하거나 애니메이션 등의 효과를 충실히 하는 것이 사양에 포함.
브라우저에 따라 HTML 사양에 따르지 않은 것이나 독자적인 태그를 확장하고 있는 것도 있어 사실상 HTML 규격은 아직도 통일되어 있지 않은 상태.
CSS(Cascading Style Sheets)는 HTML 각 요소를 어떻게 표시할지를 지시하는 것으로, 스타일 시트라고 불리는 사양중의 하나.
다이나믹 HTML(Dynamic HTML)은 정적인 HTML 내용을 클라이언트 사이드 스크립트를 사용해서 동적으로 변경하는 기술을 말함. 다이나믹 HTML 기술은 HTML 등으로 만들어진 웹 페이지를 JavaScript 등의 클라이언트 사이드 스크립트로 조작하여 동적으로 변화시킴. 동적으로 바꾸고 싶은 HTML 요소를 지정하기 위해 DOM이라는 구조를 사용.
DOM(Document Object Model)은 HTML 문서와 XML 문서를 위한 API(Application Programming Interface). DOM을 사용하면 HTML 내의 요소를 오브젝트로 다룰 수 있기 때문에 요소 내의 문자열을 추출하거나 CSS를 프로퍼티로서 변경해 디자인을 변경할 수 있음.
웹 애플리케이션은 웹 기능을 사용해서 제공되는 프로그램을 지칭. 동적 콘텐츠.
쇼핑 사이트나, 인터넷 뱅킹, SNS이나 게시판, 검색 엔진, e-러닝 등 인터넷이나 인트라넷 상에는 다양한 웹 애플리케이션이 있음.
CGI(Common Gateway Interface)는 웹 서버가 클라이언트에서 받은 리퀘스트를 프로그램에 전달하기 위한 구조. CGI에 의해 프로그램은 리퀘스트 내용에 맞게 HTML을 생성하는 등으로 동적으로 콘텐츠를 생성할 수 있음.
CGI를 사용한 프로그램에 Perl, PHP, Ruby, C언어 등의 프로그래밍 언어가 사용.
서블릿(Servlet)은 서버 상에 HTML 등의 동적 콘텐츠를 생성하기 위한 프로그램을 가리킴. Java 프로그래밍 언어 사양의 하나로 엔터프라이즈 환경을 위한 Java인 JavaEE(Java Enterprise Edition)의 일부로서 제공되고 있음.
위에서 소개한 CGI는 리퀘스트마다 프로그램을 기동하기 때문에 대량으로 액세스가 있을 때 웹 서버에 부하가 걸리게 되지만 서블릿에서는 웹 서버와 같은 프로세스 속에서 동작하기 때문에 비교적 부하를 적게 하여 동작시킬 수 있음.
XML(eXtensible Markup Language)이라는 것은 목적에 맞게 확장 가능한 범용적으로 사용할 수 있는 마크업 언어.
XML은 HTML과 같이 태그를 사용한 트리 구조로 되어 있고 독자적으로 확장된 태그가 정의. XML은 HTML에 비해 데이터를 빼내는 것이 간단. 데이터를 재사용하기 쉽다는 점에서 XML은 인터넷에서 널리 이용되고 있음.
RSS와 Atom은 뉴스나 블로그의 기사 등의 갱신 정보를 송신하기 위한 문서 포맷의 총칭으로 둘 다 XML을 이용함.
JSON(JavaScript Object Notation)이라는 것은 경량 데이터 기술 언어로서 JavaScript(ECMAScript)에 있어서 오브젝트 표기법을 바탕으로 함.
다룰 수 있는 데이터형은 false/null/true/오브젝트/배열/수치/문자열 등 일곱 가지 종류.
JSON 데이터는 단순하고 가볍게, 게다가 문자열을 JavaScript에서 간단하게 읽어올 수 있다는 점에서 당초 XML이 사용되던 Ajax에서 JSON을 널리 이용하게 됨.