괴발개발라이프
로그인
괴발개발라이프
로그인
모던 자바스크립트 Deep Dive - 2. 자바스크립트란
둡둡
·
2023년 12월 9일
팔로우
0
JavaScript
deepdive
모던자바스크립트
자바스크립트
Modern Javascript Deep Dive
목록 보기
3/49
2.1. 자바스크립트의 탄생
2.2. 자바스크립트의 표준화
ECMAScript: 크로스 브라우징 이슈로 인해 비영리 표준화 기구 ECMA의 자바스크립트 표준화 출시
ECMAScript 버전별 특징
ES1(1997): 초판
ES5(2009): HTML5와 함께 출현한 표준안, JSON, 향상된 배열 조작 기능(forEach, map, filter, etc.) 등
ES6(2015): let/const 클래스, 화살표 함수, 디스트럭처링 할당, 스프레드 문법 등
이후 ES11(2020)까지 비교적 작은 기능을 추가하는 버전업 공개
2.3. 자바스크립트 성장의 역사
2.3.1. Ajax
비동기 방식 데이터 교환 통신 기능
서버로부터 필요한 데이터만 전송받아 한정적으로 렌더링
빠른 성능과 부드러운 화면 전환 구현 -> 구글 맵스(2005)
웹 애플리케이션 프로그래밍 언어로서의 가능성 확인
2.3.2. jQuery
2.3.3. V8 자바스크립트 엔진
구글의 V8 자바스크립트 엔진의 등장으로 웹 서버에서 수행되던 로직들이 클라이언트(브라우저)로 대거 이동
웹 애플리케이션 개발에서 프론트엔드 영역 주목
2.3.4. Node.js
V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 환경
브라우저 이외의 환경에서도 자바스크립트를 동작할 수 있는 실행 환경
주로 서버 사이드 애플케이션 개발에 사용
비동기 I/O 지원, 단일 스레드 이벤트 루프 기반으로 동작 -> SPA Framework 적합
백엔드/프론트엔드까지 모두 아우르는 웹 프로그래밍 언어의 표준으로 자리 잡음
2.3.5. SPA Framework
개발 규모와 복잡해진 개발 과정을 수행하기 위해 유연성과 확장성 요구
CBD(Component Based Development) 방법론을 기반으로 하는 SPA(Single Page Application) Framework 대중화
2.4. 자바스크립트와 ECMAScript
ECMAScript는 프로그래밍 언어의 값, 타입, 객체와 프로퍼티, 함수 등 핵심 문법 규정
각 브라우저 제조사는 ECMAScript 사양을 준수하여 자바스크립트 엔진 구현
자바스크립트는 ECMAScript와 함께 클라이언트 사이드 Web API(DOM, BOM, XMLHttpRequest )를 아우르는 개념
2.5. 자바스크립트의 특징
웹 브라우저에서 동작하는 유일한 프로그래밍 언어
명령형, 함수형, 프로토타입 기반 객체지향 프로그래밍, 멀티 패러다임 프로그래밍 언어
컴파일 작업을 수행하지 않는 인터프리터 언어(interpreter language)
대부분 모던 자바스크립트 엔진은 인터프리터와 컴파일러의 장점을 결합하여 처리함
2.6. ES6 브라우저 지원 현황
인터넷 익스플로러를 제외한 대부분 모던 브라우저는 ES6 지원함
지원하지 않는 브라우저에서는 바벨(babel)과 같은 트랜스파일러 사용
[출처] 모던 자바스크립트 Deep Dive (이웅모, 위키북스)
둡둡
괴발개발라이프
팔로우
이전 포스트
모던 자바스크립트 Deep Dive - 1. 프로그래밍
다음 포스트
모던 자바스크립트 Deep Dive - 3. 자바스크립트 개발 환경과 실행 방법
0개의 댓글
댓글 작성