IT 자격증 정보의 모든 것

안녕하세요~ 오늘은 자바 스크립트에 대해 알아보려고해요.
2017년 5월 기준 프로그래밍 언어 순위를
자바 스크립트가 5위를 차지했을 만큼
인기 있는 프로그래밍 언어인데요.

그래프를 보면

프로그래밍 언어 순위 1위가 바로 자바, 7위가 자바 스크립트인 것을 확인할 수 있어요

차마 프로그래밍 언어에 익숙하지 않으신 분들이라면

자바와 자바 스크립트가 같은 언어라고 생각하셨던 분들이 많을 것 같은데요~

자바와 자바스크립트는 개발자부터 특징 그리고 사용법까지 전!혀! 다른 별개의 프로그래밍 언어랍니다.


그렇다면 자바와 자바스크립트, 어떤 점이 다르고 또 자바스크립트는 무엇일까요?

좀 더 자세하게 살펴볼까요?




1. 자바 스크립트란?


우리가 매일 사용하는 웹 사이트는 크게 3가지 요소로 구성이 돼요. HTML, CSS 그리고 자바 스크립트입니다!

HTML은 웹 페이지의 큰 뼈대를 제공하고, CSS는 색이나 폰트같은 디자인 요소를 관리해요.

자바 스크립트는 크로스 플랫폼, 객체 지향 스크립트 언어로 웹 페이지의 동작을 담당합니다.

예를 들어 자바 스크립트를 이용하면 이 버튼을 클릭하면 그림을 띄워줘 라는 식의 명령을 내릴 수 있어요.


사실 2000년대까지만 해도 자바스크립트는 개발자들에게 조금 무시당하는 언어였어요.

별다른 기능도 없고 성능도 좋지 않았기 때문이죠. 하지만 최근 몇 년 사이에 다양한 자바스크립트 프레임워크와

라이브러리가 생기면서 자바스크립트는 더욱 더 발전하고 있습니다.





2. 자바와 자바스크립트의 차이점


자바스크립트는 브랜든 아이크라는 사람이 1995년 넷스케이프에 근무하면서 개발한 개념이예요. 

처음에 모카라는 이름으로 불리었지만 당시 자바가 큰 인기를 끌자 마케팅 효과를 노려 이름을

자바스크립트로 변경하는데요. 마케팅 효과를 본 것인지 이후 자바 스크립트의 기술은 다양하게 발전했고

지금은 많은 사람들이 사용하는 프로그래밍 언어가 되었답니다.


자바와 자바스크립트의 차이, 가장 큰 차이점은 역시 특징이 아닐까 싶어요.


자바스크립트는 객체 지향언어로 객체의 형 간에 차이가 없답니다. 프로토타입 메커니즘을 통한 상속, 

그리고 속성과 메서드는 어떤 객체든 동적으로 추가될 수 있구요. 

하지만 자바는 클래스 기반 언어로 객체는 클래스 계층구조를 통한 모든 상속과 함께 클래스와 

인스턴스로 나뉘는데요. 클래스와 인스턴스는 동적으로 추가된 속성이나 메소드를 가질 수 없답니다.

또한 자바스크립트는 변수 자료형이 선언되지 않지만 자바는 변수 자료형이 반드시 선언되어야 한다는 점,

자바스크립트는 하드 디스크에 자동으로 작성이 불가하지만 자바는 자동으로 작성이 가능하다는 점이

가장 큰 차이점이네요.






3. 자바 스크립트의 장단점

자바스크립트는 다양한 장단점을 갖는데요. 자바스크립트는 컴파일 과정이 없기 때문에 
다른 언어와 비교했을 때 빠른 시간 안에 스크립트 코드를 작성할 수 있게 도와준답니다. 
기존 C언어나 자바 언어와 달리 굉장히 단순한 구조와 원칙을 가지고 있기 때문에 초보 개발자들이
쉽게 배우고 이해할 수 있어요!
하지만 성능이나 보안 측면이 단점이에요. 내부에서 제공되는 기능이 제한적이고 관련된 개발도구도 
적은 편인데다가, 자바스크립트는 HTML 소스코드에 함께 작성되면서 소스코드가 외부로 공개되는데,
이 과정에서 보안 취약점이 발생할 수 있기 때문이에요.


하지만~ 개발자가 가장 관심을 많이 갖는 언어로 꼽힌 '자바 스크립트'

개발자들의 대표 커뮤니티인 스택오버플로우는 2015년 157개국에 있는 사용자 2만 6천여명에게

다양한 기술 관련 설문조사를 실시했어요. 그 결과 자바스크립트는 '스위프트'와 함께 개발자들이 가장 관심을

가지는 언어로 뽑히게 됩니다! 또한 최근에는 자바스크립트 관련 라이브러리나 프레임 워크가 개발자들 사이에서

큰 화제로 떠오르면서 더욱 주목을 받고 있습니다.



이렇게 자바 스크립트에 대해서 알아보았는데요

자바와 자바스크립트를 구분하는 데에 도움이 되었나요?

계속해서 여러 프로그래밍 언어를 알려드리겠습니다!~