Web/JavaScript
-
[JavaScript] 번들러(Bundler)란?Web/JavaScript 2021. 5. 13. 10:01
프론트엔드를 개발하다보면 웹팩(WebPack)이나 파셀(Parcel)같은 이름을 종종 마주하곤 한다. 사실 나도 이름은 들어봤지만 어떤 기능을 하는지, 왜 필요한지 전혀 몰랐고, 번들러라는 용어는 심지어 처음 들어봤다. 공부를 시작한지 수 개월이 지나서야 프론트개발에 있어서 필수적인 번들러가 무엇인지, 그리고 왜 사용하는지를 알게 되었기에 반성과 복습의 의미로 글을 적기로 했다. 번들러(Bundler)의 탄생 배경 인터넷이 등장하고 처음에는 웹 페이지와 서비스들의 규모가 그렇게 크지 않았다. 때문에 이를 구성하는 HTML이나 자바스크립트 파일의 크기도 상대적으로 작았고 해당 서비스를 유지하는데 큰 무리가 없었다. 하지만 인터넷이 발달하면서, 적게는 수십만 줄에서 많게는 수백만 줄의 코드로 이루어진 대규모..
-
[JavaScript] JavaScript의 동작 원리Web/JavaScript 2021. 5. 3. 00:36
이 전 글에서 언급했듯 우선 자바스크립트는 컴파일이 되지 않은 채 브라우저에 내장 되어있는 자바스크립트 엔진(자바스크립트 인터프리터)에 의해 한줄 한줄 읽어 내려가며 실행되는 인터프리터(스크립트) 언어다. 자바스크립트의 생명이라고도 볼 수 있는 자바스크립트 엔진의 구조는 데이터를 저장하는 Memory Heap과 호출될 명령어들을 순서대로 담는 Call Stack으로 구성되어있다. 자바스크립트는 싱글 스레드? '자바스크립트는 싱글 스레드 기반의 언어'인데 이는 자바스크립트의 가장 큰 특 징중 하나다. 그리고 이것은 하나의 프로세스 안에서 한가지의 일 밖에 처리하지 못 한다는 의미다. 실제로 함수들이 호출되면 그 순서대로 위에서 말한 콜스택에 쌓여, 위에서부터 함수가 하나씩 완료되기 전 까지는 아래쪽의 함수..
-
[JavaScript] JavaScript란?Web/JavaScript 2021. 4. 28. 23:14
자바스크립트? ECMAScript? Node.js? 웹을 처음 접했을 때 사실은 Node.js와 JavaScript의 차이를 그냥 서버에서 쓰는 자바스크립트정도로만 알고있었다. 자바스크립트에 대한 첫 포스트인 만큼 오늘은 확실하게 정리를 하고 가야겠다. 웹이 빠른 속도로 발전하면서 많은 개발자들은 본인들의 웹페이지에 동적인 요소를 추가하고자 하는 니즈가 생기기 시작했다. 그렇게 자바스크립트(JavaScript)는 넷스케이프(Netscapte) 웹 브라우저에서 웹 페이지에 동적인 요소를 구현하기 위해 처음 발명되었다. 그 후 다른 웹 브라우저들이 이 언어를 탑재하기 시작하면서 이 수많은 브라우저들에서 자바스크립트가 동일하게 잘 작동하기 위한 표준 규격이 필요해졌다. 이 때문에 ECMA 국제기구에서 "ECM..