Cherry & Cherish

[JavaScript] JavaScript 왜 쓸까? 본문

Programming/JavaScript

[JavaScript] JavaScript 왜 쓸까?

앵도라지 2022. 5. 12. 01:01

"프론트엔드 개발을 한다면 무조건 알아야 한다"는 자바스크립트!

도대체 왜? 그리고 어떻게 쓰는 걸까?

1. 자바스크립트란?

자바스크립트는 웹브라우저에서 주로 사용하는 프로그래밍 언어다.

 

넷스케이프의 브렌던 아이크에 의해 모카라는 이름으로 처음 만들어졌으나, 모카는 곧 라이브 스크립트라는 이름으로 개발됐고, 이후 넷스케이프가 썬 마이크로시스템즈와 함께 자바스크립트라는 이름을 붙이면서 언어를 발전시켰다. 참고로 자바스크립트는 1명의 개발자에 의해 약 10일간 만들어진 것으로 유명하다.

 

당시 넷스케이프는 인터넷 익스플로러를 대항할만한 브라우저를 만들기 위해서 아이크에게 스킴을 활용해서 브라우저를 만들어 달라고 했으나, 아이크는 그냥 언어를 개발(걍 천재..)했다고 전해진다. 어쨌든 단기간에 1명에 의해 개발된 언어인만큼 당황스러운 오류도 있고, 개선되어야 하는 부분도 많아서 버전 업그레이드가 잦다. 

 

대부분의 개발을 배우는 학생들은 처음 자바스크립트를 접했을 때, "자바랑 이름이 비슷하네!"로 접근을 시작하겠지만, 사실 자바와 자바스크립트는 전혀 관계가 없다. 단순 마케팅 조약을 통해 돈을 지불하고 구매한 것이다. 마치 인도와 인도네시아가 아무 관련이 없는 두 나라이고, 코끼리와 바다코끼리가 전혀 다른 생물종인 것처럼 이름은 비슷하지만 둘은 전혀 다르다.

출처 : 구글

2. 자바스크립트로 할 수 있는 것들

자바스크립트는 간단히 웹 브라우저 상에서 동적으로 보이는 영역을 개발하기 위해 사용하는 것으로 유명하지만, 사실 활용 방안은 상당히 많다.

 

첫 번째로는 웹 클라이언트 애플리케이션 개발이 가능하다.

동적으로 웹 문서의 내용을 바꾸거나 마우스 클릭 같은 이벤트 처리가 가능하다. 우리가 웹에서 하는 대부분의 행동을 자바스크립트를 통해 처리가 가능하다.

 

두 번째로는 웹 서버 애플리케이션 개발도 가능하다.

자바스크립트는 프론트엔드 언어로 많이 사용되지만, 2009년 Node.js가 등장하면서 서버 개발도 가능하게 되었다.(해외에서는 대다수 기업에서 사용한다. EX)Linkedin)

Node.js는 간단한 모듈만 제공하고, Django보다 훨씬 예외 처리가 복잡하다는 단점이 있다. 그래서 사용 빈도는 좀 낮은 편이다.

그러나 빠르고, 서버 구매 비용도 저렴하며, 속도가 무려 20배 이상 빠르다고 알려져 있다. 

 

따라서 자바스크립트만으로 백과 프론트를 아우르는 모든 웹 개발을 할 수 있게 되었다.

 

세 번째는 모바일 애플리케이션 개발이 가능하다.

자바스크립트로 네이티브 애플리케이션 개발이 가능하다는 것이다.

React Native는 페이스북에서 공개한 프레임 워크이고,

리액트르 활용하면 모든 운영체제에 빠르게 동작하는 네이티브 애플리케이션을 만들 수 있다.

우버, 인스타그램, 페이스북, 핀터레스트 같은 서비스는 모두 자바스크립트 네이티브 애플리케이션으로 개발된 것이다. 

 

네 번째는 데스크톱 애플리케이션 개발이 가능하다.

NW.js('노드웹킷 제이에스') 모듈 등으로 데스크톱 애플리케이션 개발에 조금씩 자바스크립트를 활용하기 시작했다.

그러다가, 깃허브에서 NW.js 개발자들을 흡수하면서 자바스크립트 개발 전용 텍스트 에디터인 아톰을 만들어서 배포하면서 데스크톱 애플리케이션 개발의 시작의 물꼬를 텄다. 당시 함께 배포했던 일렉트론을 통해 다른 개발자들도 데스크톱 애플리케이션을 개발하기 시작했는데, 대표적으로 비주얼 스튜디오 코드, 디스코드, 워드프레스, 몽고디비, 깃허브 데스크톱 등이 있다.

 

마지막으로는 데이터베이스 관리가 가능하다.

보통의 데이터베이스는 SQL을 활용해서 관리하고, 관계형 데이터베이스 관리 시스템(RDBMS)를 사용하는 것이 일반적이다. 그러나, 페이스북, 트위터 등으로 인해 폭발적으로 증가한 빅데이터를 처리하기 위해 Not Only SQL이라고 불리는 NoSQL이 등장했고, 그 중 JS로 개발된 몽고디비가 대표적인 NoSQL 데이터베이스이다.

 

결론은 뭐든지 다 가능하다는 것!

 

 

'Programming > JavaScript' 카테고리의 다른 글

[JavaScript] 함수  (0) 2023.02.09
[JavaScript] 반복문  (0) 2023.02.09
[JavaScript] 조건문  (0) 2023.02.09
[JavaScript] 자료형 (템플릿 문자열, 형변환)  (0) 2023.02.09
[JavaScript] 함수  (0) 2023.02.08
Comments