2.1 자바스크립트의 탄생
- 1995년, 브레던 아이크는 웹페이지의 보저적인 기능을 수행하기 위해 경량 프로그래밍 언어를 제작 = js
2.2 자바스크립트의 표준화
자바스크립트 성장의 역사
ajax
- 비동기 통신
- 기존의 방식 = 화면이 전환되면 서버로부터 새로운 html을 전송받아 리렌더링 -> 효율 떨어짐, 깜빡임 현상
- 비동기 방식 = 변경할 필요가 없는 부분은 다시 렌더링 x -> 부드러운 화면 전환
jQuery
- 코드를 획기적으로 줄여줌
- 크로스 브라우징 문제 해결
V8 자바스크립트 엔진
- 웹 서버에서 수행되는 것들이 클라이언트 측으로 넘어가면서 프론트가 주목받게 됨
Node.js
Node.js란?
2009년 라이언 달이 발표한 V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 환경
- 브라우저에서 독립적으로 자바스크립트가 작동할 수 있는 실행 환경
- 프론트엔드 백엔드 모두 사용가능한 동형성의 특성
- 비동기I/O를 지원하며 단일 스레드 이벤트 루프 기반으로 동작
동형성(homoiconicity) = 표현이 같은 특성
SPA 프레임워크
단일 페이지 어플리케이션(SPA)는 현재 웹개발의 트랜드이다.
기존 웹 서비스는 요청시마다 서버로부터 리소스들과 데이터를 해석하고 화면에 렌더링하는 방식이다. SPA형태는 브라우저에 최초에 한번 페이지 전체를 로드하고, 이후부터는 특정 부분만 Ajax를 통해 데이터를 바인딩하는 방식이다.
자바스크립트와 ECMAScript
자바스크립트의 특징
-
웹 브라우저에서 동작하는 유일한 프로그래밍 언어
-
인터프리터 언어(!=컴파일러) -> 한문장씩 번역
-
멀티 패러다임 언어 = 명령형 , 함수형 , 프로토타입 기반, 객체지향 지원