JavaScript 역사

Doodream·2021년 4월 18일
1

코어 자바스크립트

목록 보기
4/36

자바스크립트 역사

인터넷이 세상에 만들어지고 두개의 웹 브라우저가 만들어졌습니다. 개발자들은 이러한 웹사이트들을 좀더 사용자 친화적인 인터렉티브 한 사이트로 만들고자 하였습니다. 즉, 브라우저를 위한 프로그래밍 언어가 필요했습니다.


1995년 Netscape Navigator는 당시에는 지배적인 브라우저였습니다.
이 브라우저에 쓰일 언어로 Brendan Eich라는 사람을 고용했는데 이사람은 10일만에 현대 자바스크립트의 기반이 되는 특징을 가진 Mocha 라는 언어를 만들어냈습니다.

그리고 1996년 Mocha는 LiveScript라는 이름으로 불렸다가 다시 JavaScript라는 이름으로 불리게 되었습니다. 그당시 가장 있기있는 언어는 Java였습니다. 정말 마케팅 적인 이유로 자바스크립트에 개발자들이 관심을 갖게 하기 위해서 이러한 이름을 붙였습니다. 실제로는 자바와 자바스크립트는 아얘 전혀다른 언어입니다.

1996년 MicroSoft에서 InternetExplorer를 개발하였고 JavaScript를 복제해서 구동시켰습니다. 하지만 법적인 이유로 JScript라고 불렀습니다.

이시기에 인터넷이 폭발적으로 성장하기 시작하면서 자바스크립트를 표준화 해야한다는 인식이 생겼습니다.

1997년 ECMA라는 독립 표준 조직에 의해서 결국 ECMAScript로 불리는 첫번째 표준모델의 자바스크립트 (ECMAScirpt 1 = ES1)이 출시 되었습니다.
이로서 모든 브라우저들의 자바스크립트 표준모델을 이용하게 되었습니다.

이후 2009년 많은 의견 불일치와 여러 갈등으로 인해 ES5가 출시되었습니다. 이때 많은 기능들이 추가되었습니다.

이후 2015년 대망의 ES6가 출시되었습니다. 이 업데이트는 한 언어에 대해서 가장큰 업데이트 였습니다.(ES2015 = ES6)

이후에는 매년마다 언어가 출시되었는데 ES2017 = ES7, ES2018 = ES8 ... ES2020 = ES10 이렇게 출시되고 있습니다.

자바스크립트의 하위 호환성

웹페이지는 브라우저의 자바스크립트 엔진으로 구동되기 때문에 아주 옛날의 웹페이지도 돌아가게 만들어야 했습니다. 만약 예전의 웹페이지를 구동시키지않고 어떠한 기능을 제거하거나 했다면 옛날의 웹사이트들은 최신 브라우저에서 구동되지 않게 됩니다. 이는 사용자의 접근 차단을 초래하는데 ECMA에서는 이를 허용하지 않는 방침을 세웠습니다.

따라서 기존에 있는 기능들을 절대로 지우지 않되 추가만 하는 언어가 되었습니다. 이는 하위호환성을 보장합니다. 하지만 언어가 발달함에 따라서 불필요한 부분의 기능들을 제거하는 대신 무시 하는 형태가 된 것입니다.

ES5 에서 ES6 업데이트시 클린코딩시 배제할 부분들이 있는데 이런부분들은 알고 있지만 ( 회사에서 예전에 작성한 코드들을 관리해야할수도 있으니.. 이런회사들이 꽤많다. ) 무시하면서 현대적인 코드로 재구성할때는 사용하지 않는 것으로 언어를 사용합니다.

다만 예전의 브라우저들은 상위 버전의 자바스크립트에서 만든 웹페이지들을 구동시킬수 없습니다. 즉 상위 호환이 차단됩니다.

그래서 브라우저를 항상 최신버전으로 유지하고 있어야합니다.

현대브라우저는 ES6+를 지원합니다. 예전 브라우저에 대한 지원은 없습니다.
ES6+란 ES6 ~ ES2020 까지 말하고 현재는 모두를 지원합니다.

ESNext란 이후에 나올 ES 버전들을 말합니다. 이러한 것들은 ECMA의 향후 release 계획에 있는데 어떠한 사양으로 어떻게 출시할 것인지 명시되어있습니다. 브라우저들은 이러한 문서를 보고 해당기능을 지원할 준비를 할수 있습니다.

profile
일상을 기록하는 삶을 사는 개발자 ✒️ #front_end 💻

0개의 댓글