[자바스크립트] 자바스크립트 기초

Kate·2023년 3월 21일

자바스크립트

목록 보기
2/19

프로그래밍이란?

  • 컴퓨터에게 실행을 요구하는 일종의 커뮤니케이션
  • 요구사항의 집합을 분석해서 적절한 자료구조와 함수의 집합으로 변환한 후 그 흐름을 제어하는 것

자바스크립트란?

  • 자바스크립트는 HTML, CSS와 함께 웹을 구성하는 요소 중 하나로 웹 브라우저에서 동작하는 유일한 프로그래밍 언어다.
    - 인터프리터 언어 : 개발자가 별도의 컴파일 작업을 수행하지 않아도 됨
  • 멀티 패러다임 프로그래밍 언어 : 명령형, 함수형, 프로토타입 기반 객체 지향 프로그래밍 지원
  • 프로토타입 기반의 객체 지향 언어
컴파일러 언어인터프리터 언어
코드 실행 전 단계인 컴파일 타임에 소스코드 전체를 머신코드로 변환 후 수행코드가 실행되는 런타임에 한 줄씩 중간 코드로 변환 후 수행
실행 파일 생성실생 파일 생성 안함
컴파일 단계와 실행 단계 분리인터프리트 단계와 실행단계 분리 X
실행에 앞서 컴파일 한 번 수행코드가 실행 될 때마다 인터프리트 과정 반복
코드 실행 속도 빠름반복 수행으로 속도 느림


자바스크립트의 역사

1. 자바스크립트의 역사

1995년, 웹 브라우저 시장을 장악하고 있던 넷스케이프 커뮤니케이션즈는 경량 프로그래밍 언어를 도입하기로 결정. 브렌던 아이크에 의해 개발되어 1996년 자바스크립트로 최종 명명

2. 자바스크립트의 표준화

  • 표준화된 자바스크립트의 필요성 대두. 컴퓨터 시스템 표준을 관리하는 비영리 표준화 기구 ECMA에 자바스크립트의 표준화를 요청.
  • 1997년 7월, 자바스크립트 초판 사양 완성, ECMAScript로 명명
  • ECMAScript 5 : 2009년, HTML5와 함께 출연한 표준사양

3. 자바스크립트의 탄생

1) AJAX(Asynchoronous JavaScript and XML)

  • 자바스크립트를 이용해 서버와 브라우저가 비동기 방식으로 데이터를 교환할 수 있는 통신 기능, XMLHttpRequest라는 이름으로 등장
  • 서버에서 필요한 데이터만 전송받아 변경이 필요한 부분만 한정적으로 렌더링하는 방식이 가능해짐 -> 웹 브라우저에서도 데스크톱 애플리케이션과 유사한 빠른 성능과 부드러운 화면 전환이 가능해짐

2) jQuery

  • DOM(Documen Object Model)의 제어가 쉬워지고 크로스 브라우징 이슈 해결.

3) V8 자바스크립트 엔진

  • 빠르게 동작하는 자바스크립트 엔진의 필요성 대두
  • 2008년, 빠른 성능을 보여주는 V8 엔진이 등장

4) Node.js

  • 2009년 라이언 달이 발표한 구글 V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 환경
  • 브라우저 이외에 환경에서도 동작할 수 있도록 엔진을 브라우저에서 독립시킨 자바스크립트 실행 환경
  • 서버 사이드 애플리케이션 개발에 주로 사용되며 이에 필요한 모듈, 파일 시스템, HTTP 등 빌트인 API 제공
  • 비동기 I/O를 지원하며 단일 스레드 이벤트 루프기반으로 동작하여 요청 처리 성능이 좋음 -> SPA에 적합

5) SPA 프레임 워크

  • CBD(Component based development)를 기반으로 하는 SPA(Single page application)이 대중화됨
  • React, Vue.js, Angular, Svelte
profile
개발 공부하는 케이트입니다.

0개의 댓글