새싹 개발자의 눈으로보는_2021 JavaScript ep.01

나라리야·2021년 8월 10일
0
post-thumbnail

글을 시작하며..

나는 2021년 3월에 개발공부를 시작한 새싹 개발자이다. 🌱
코드스테이츠 부트캠프를 통해 프로그래밍이라는 미지의 세계에 발을 들여놓게 되었는데 그 때 나를 맞이해준 첫번째 녀석이 바로 자바스크립트 이다.

새가 알을 깨고 나와 처음 본 생물을 어미라고 생각하는 것 처럼 의문을 가지지않고 몇 개월간 자바스크립트 언어로 알고리즘 문제를 풀고 문법을 익히고 코드를 쳤다.
지금도 '사용할 수 있는 프로그래밍언어가 무엇인가요?' 라는 질문을 받게된다면 당연히 '자바스크립트'입니다. 라고 말할 수 밖에 없지만 (계속 업데이트되는 프로그래밍언어를 완벽히 마스터한다는것 자체가 어려운일이라고 생각한다. 계속 학습하는 수밖에..😓) 이제는 '왜 자바스크립트를 사용하나요?' 라는 질문에 답을 할 수 있는 정도는 되었다고 스스로 생각한다.

Why?란 아주 중요하다.
여기에 '그냥' 이라는 답변을 한다면 조용히 이 글을 스킵해주길 바란다.👋🏻

'왜?'라는 의문없이 주체적인 개발을 할 수 있을까? 끊임없이 스스로에게 질문을 던져봐야한다.
그리고 지금부터 ''가 보는 시각으로 javascript에 대해 이야기 해보려한다.

그럼에도 불구하고 Javascript

javaScript에 대해 이야기 하기 전 아래의 그림을 보도록 하자 .

참고자료 :
https://www.jetbrains.com/ko-kr/lp/devecosystem-2020/
https://insights.stackoverflow.com/survey/2020#most-popular-technologies

2020년 jetbrains 에서 조사한 내용으로 가장 많이 사용된 프로그래밍 언어에 JavaScript가 꼽혔다.

그리고 2020년 StackOverflow에서 조사한 순위에 따르면 자바스크립트는 가장 많이 쓰이는 프로그래밍 언어로 집계되었다.

자바스크립트는 1995년 등장한 오래된 프로그래밍 언어이다. 사실 오래되면 도퇴되거나 트렌드의 방향이 달라지면서 사라질 수도 있다고 생각했는데 꾸준히 1위의 자리를 지키고 있는 저녀석을 보면 무섭기까지 하다. 자바스크립트를 대체해서 개발의 판도를 바꿀 녀석이 아직 없는건가? 얼마나 무시무시한 최종보스인거야?


우리는 이미 동적인 웹에 휩쓸려버렸고 깊숙히 잠식해있기 때문에 동적인 웹이 아닌 정적인 웹으로만 이루어진 세상을 상상하기란 어려울 것이다.

참고자료 : https://www.heecheolman.dev/post/%EC%9B%B9-%EB%B8%8C%EB%9D%BC%EC%9A%B0%EC%A0%80%EC%9D%98-%EC%97%AD%EC%82%AC/

위 보이는 그림은 세계 최초의 웹 브라우저 월드와이드웹(WorldWideWeb)이다. 바로 이 브라우저가 초창기의 정적인 브라우저라고 볼 수 있다. 현재의 크롬 사파리 파이어폭스 등과같은 웹브라우저와는 많이 다르다고 느낄 것 이다. 이런 초창기를 지나 격동하는 웹 신대륙의 점유를 위해 사용자를 위한 동적인 웹 브라우저를 만들 방법을 모색하다 넷스케이프라는 기업에서 스크립트 언어를 도입하게 되며현재의 자바스크립트까지 올 수 있었다.

그럼 자바스크립트가 처음부터 잘나갔을까?
NOPE! ☝🏻
마이크로소프트의 OS시장 지배력이 2000년을 휩쓸어서 익스플로어 브라우저가 90%에 달하는 웹브라우저 시장 점유율을 차지하게 되었는데 ActiveX와 같은 기술을 이용하여 웹페이지가 일종의 윈도우즈 애플맆케이션처럼 동작할 수 있도록 했고 이런 상황에서 개발자들은 자바스크립트보단 ActiveX 모듈을 개발할 수 있는 C++,C#,등의 언어를 많이 사용하였다.
하지만 그런 큰 파도에도 자바스크립트는 조용히 몸집을 키워나갔다. 비동기 HTTP통신 기술인 AJAX가 도입되면서 자바스크립트만으로 서버와 통신을 하는 동적인 웹사이트를 만들 수 있게되고 초보자도 쉽게 웹페이지 화면을 조작할 수 있는 jQuery가 만들어지기도 했다.

그리고 자바스크립트는 운명의 2008년을 맞이한다.

이 기점으로 자바스크립트는 크게 성장할 수 있게 되는데 스크립트 실행 속도를 크게 개선하는 JIT(just in time)기술이 도입된 것이다. google chrome은 JIT를 이용한 V8엔진 덕분에 기존 브라우저들에 비해 빠른 성능을 보여줄 수 있게 되었다.

참고자료 : https://johnresig.com/blog/javascript-performance-rundown/

자바스크립트의 장점

너무 많은 곳에서 정리되어 있겠지만 짚고 넘어가야하기 때문에 몇가지만 간략하게만 설명하겠다.

  • 단순하고 쉽다
    • 나를 보면 알 수 있듯, 진입장벽이 굉장히 낮다. 프로그래밍 언어를 학습하는데 있어서 난이도가 낮고 어느정도 기본적인 문법을 학습하면 누구라도 쉽게 프로그래밍을 할 수 있다.
  • 비동기 방식의 코드를 짜기 쉽다
    • 자바스크립트는 싱글스레드 기반이지만 비동기 작업들은 런타임 환경에게 넘겨줌으로서 해당 작업이 완료될 때 까지 다른 작업을 실행할 수 있게된다.
  • 실행 성능이 좋다.
    • 구글의 V8 + JIT가 합쳐진 자바스크립트 엔진이 정적 언어(C++, Java)에는 조금 미치지 못하겠지만 스크립트 언어 중에서는 최고 수준의 성능을 갖게 되었다.



무적함대 자바스크립트

자바스크립트는 나도 처음에 프론트엔드, 클라이언트 개발을 위한 프로그래밍 언어로만 알고있었..다.. 그러다 부트캠프가 끝날 때 쯤 백엔드에 대해 학습할 때 Node.js라는 녀석이 등장한것이 아닌가? 자바스크립트 너란녀석.. 어디까지 시장을 잠식할 것 인가?

서버시장까지 진출한 자바스크립트는 아마도 시기가 잘 맞물렸던 것 같다. 스마트폰의 앱 생태계가 활성화 되면서 서버는 웹브라우저 이외에 모바일웹도 지원해야하는데 서버는 JSON,XML등의 형식으로 클라이언트의 데이터를 전달하는 API 서버의 역할을 할 필요가 더욱 커졌고 데이터베이스 측면에서도 관계형 데이터베이스의 한계에 대한 대안으로 MongoDb, NoSQL이 등장하게 되었다. 그리고 자바스크립트를 배우면 서버도 개발할 수 있다는 무지막지한 장점이 자바스크립트의 큰 파워에 더 힘을 실어 주었다고 생각한다.
여기에 NPM(node package manager)를 중심으로 자바스크립트 생태계가 더 활성화 되어 지금의 위치까지 올 수 있었다.



글을 마치며..

2021 자바스크립트

혹자는 자바스크립트가 2035년쯤에는 없어질 것이라고 얘기하지만 매년 자바스크립트는 강력해지고있다. 자바스크립트 기술을 필요로 하는 개발 서비스가 매일 늘어나고 있고 사용하는 개발자들이 많은 만큼 더 깊게 자바스크립트를 파고들고 이에 맞춰 더 다양한 기술과 파생되는 라이브러리 프레임워크들이 많아지고 있기 때문이다. (거기에 매번 업데이트되는 무료 강의도 한가득!)


결국 21년에도 자바스크립트의 강세는 쭉~ 이어질 것이며 웹브라우저의 탄탄한 위치를 공고히하고 서버와 데스크탑등의 신규시장에서 상당한 점유율을 확보한 자바스크립트는 더 많은 사람들의 사랑을 받게 될 것이다.



다음 포스트는 자바스크립트 프레임워크와 라이브러리 동향에 대해 이야기 할테니 많은 기대 부탁한다!

profile
Code의 美를 추구하는 개발자 🪞

2개의 댓글

comment-user-thumbnail
2021년 8월 10일

나랑 같이,, 코틀린 공부할래? 므흣

1개의 답글