[강의정리]노마드코더 바닐라JS 챌린지 시작!

김재만·2022년 6월 6일
0

부트캠프를 수강할 시기에 가장 나를 힘들게 했던 것이 기본적인 기술과 현재 사용하는 기술의 차이를 서술하지 못하는 것이었다. 특히, 바닐라 자바스크립트를 제대로 활용한 적이 없기 때문에 리액트와의 차이를 얘기하는 것은 더더욱이 어려웠다. 때문에 일과를 쪼개 꾸준히 기본을 다지면서, 지금 사용하는 기술의 의의와 효용을 비교해보려고 한다. 그 첫 시작은 바닐라JS의 사용성을 익히는 것이다.

바닐라JS로 크롬앱 만들기

강의는 프로그래밍 경험이 거의 없는 초보자를 대상으로 한다. 하지만 HTML과 CSS에 대한 기본적인 사용법을 요구한다. 다행히, 이 둘에 대해선 큰 어려움이 없다. 필요하면 니꼬샘의 추천대로 코코아톡 클론코딩강의를 한번 보아야겠다.

프론트엔드에서의 JavaScript에 대한 찬양

자바스크립트는 웹에 동작을 부여하기 위해 빠르게 만들어진 언어다. 처음에는 적당히 인터액션만 부여하는 역할이었지만 점차 영향력이 커지고 있다. 브라우저에 내장되어 있으며, 각종 언어에서 얻어온 아이디어를 덕지덕지 붙이면서 진화해온 언어이다. 덕분에 그 영향력은 점점 커지고 있으며, 점유율 덕분에라도 몰락하기 쉽지 않은 언어이다.

프론트엔드 개발자라면 필수적으로 사용해야할 언어이다. 물론 HTML과 CSS만으로도 페이지는 구성가능하고 파이스크립트와 같은 대체 언어도 등장하고 있지만, 지금 바로 현업에서 업무를 수행하겠다고 하면 자바스크립트 없이는 불가능하다. 물론 가볍게 개발하는 입장에서도 자바스크립트는 거대한 커뮤니티와 라이브러리가 있어서, 접근이 쉽다.

프론트엔드 밖의 JavaScript

Node.js는 많은 스타트업 기업이 채택할 정도로 상용화 된 백엔드 개발 도구이다. 아직 Node.js를 활용하여 데이터를 다룬 적은 없지만, ECMAScript의 버전 업그레이드가 많은 백엔드 개발 언어의 영향을 받고 있다는 느낌을 받는다. 특히 파이썬 특유의 효율과 유연함을 학습하는 느낌이다.

뿐만 아니라, React-Native와 같이 모바일 어플리케이션을 만드는 데도 자바스크립트가 유용하다. React-Native는 안드로이드와 IOS를 아우르는 모바일 어플 개발이 가능한 라이브러리다. 물론, 어플 성능 개선을 위해서는 각각의 네이티브로 개발해야 한다고는 하지만, 초반 단계를 빠르게 완성할 수 있는 것은 큰 장점이다.

가장 놀라운 점은 VSCode, Slack, Facebook Message같이 흔히 사용하던 어플도 전부 HTML, CSS, JavaScript로 만들었다는 것이다. 일렉트론은 정말 언젠가 한번은 꼭 사용해보고 싶은 개발도구다.

자바스크립트의 여러가지 역할

자바스크립트는 그 특이성 때문에 역할이 복합적이고, 때문에 개발 입문 시기에 혼동이 있었던 것 같다. 언어로써의 자바스크립트, 브라우저 조작 도구로써의 자바스크립트, HTML 조작 도구로써의 자바스크립트를 구분할 필요가 있다. 오늘부터 차근차근 정리해서 후배 개발자들에게 전해줄 수 있다면 정말 좋을 것 같다.

마무리

빈 구멍을 메우는 작업. 단단히 다지자.

profile
듣는 것을 좋아하는 개발자입니다

0개의 댓글