웹개발 기초, 자바랑 자바 스크립트랑 뭐가 달라 (차이, 비교)

2024.04.04

|

71

웹개발 언어를 배우지 않은 사람들은 ‘자바(java)’와 ‘자바 스크립트(javascript)’를 헷갈려 합니다. 일단 이름에 공통적으로 ‘자바’가 들어가기 때문일 텐데요. 그러나 두 언어를 잘 아는 사람들은 이렇게 말하곤 합니다. “자바와 자바 스크립트의 관계는 자동차(car)과 카펫(carpet)의 관계라고나 할 수 있다.” 즉, 별 관계가 없다는 뜻이에요. ​

하지만, 웹개발 분야를 찾아보다 보면, 두 언어의 차이점과 함께 공통점도 보입니다. 정확히 둘은 어떤 관계이고, 어떻게 이해하는 게 좋을까요? 오늘 위시켓에서 자바와 자바 스크립트 언어가 무엇이 다른지 자세히 쉽게 알려드리겠습니다. ​

✍️ 이 글의 순서

• 자바, 자바 스크립트의 역사
• ‘자바 vs 자바 스크립트’ 공통점과 차이점
• 자바로 만들 수 있는 것
• 자바 스크립트로 만들 수 있는 것 ​

자바-자바스크립트-차이-비교

자바, 자바 스크립트의 역사 ​

먼저 두 개발 언어의 역사입니다. 첫 번째로 살펴볼 언어는 ‘자바’로, 자바는 우연히 만들어진 프로그래밍 언어입니다. 선 마이크로시스템스 연구소에서는 셋톱박스를 만들기 위해 C++ 언어를 정리하던 중 ‘오크’라는 이름의 프로그래밍 언어를 개발하게 되었습니다. 하지만 오크라는 이름은 이미 등록된 언어였고, 이에 ‘자바(java)’라는 이름으로 등록하게 되었죠. ​

반면 ‘자바 스크립트’는 넷스케이프 사의 브렌덴 아이크라는 개발자에 의해 탄생되었어요. 그는 사용자의 입력을 받아 컴퓨터가 상호작용할 수 있는 프로그래밍 언어를 개발했는데, 처음에는 ‘라이브 스크립트’라는 이름을 붙였답니다. 하지만 자바가 크게 유행할 것을 짐작한 넷스케이프사에서는 라이브 스크립트 대신 ‘자바 스크립트(javascript)’라는 이름으로 등록하게 됩니다. ​

이처럼 자바와 자바 스크립트는 회사도, 역사도, 그리고 쓰임새도 모두 다릅니다. 이제 그 쓰임새의 차이를 살펴볼게요. ​

자바-자바스크립트-역사

‘자바 vs 자바 스크립트’ 공통점과 차이점 ​

공통점

자바와 자바스크립트는 별개의 언어이지만, 비슷한 부분도 존재합니다. 크게 세 가지 정도로 나누어 볼 수 있습니다. ​

1) 객체지향 프로그래밍(OOP)

두 언어 모두 객체를 만들고, 객체들이 문맥 안에서 서로 관계를 갖도록 코딩해야 합니다. 특히, 상속(inheritance), 캡슐화(encapsulation), 폴리모피즘(polymorphism)이라는 기법을 사용한다는 점은 매우 유사하죠. ​

2) 프론트엔드 개발에 사용

두 언어는 모두 프론트엔드 개발에 사용하는 언어입니다. 자바는 자바 애플릿 형태로, 자바스크립트는 HTML에 직접 포함하는 형태로 사용합니다. ​

3) 백엔드 개발에 사용

원래 자바는 아파치(Apache), 제이보스(JBoss), 웹스피어(WebSphere)와 같은 강력한 백엔드 개발에서 사용해 왔습니다. 자바 스크립트는 백엔드 개발에 사용하지 않았는데요. 노드(Node.js)가 등장하면서 자바 스크립트 역시 서버 쪽에 사용할 수 있게 되었습니다. ​

자바-자바스크립트-공통점-웹개발

차이점

자바와 자바스크립트는 공통점이 많지만, 근본적인 차이점이 존재합니다. 구성과 코딩, 실행하는 방식이 다르며, 무엇보다 수행하는 기능(역할)이 분명하게 다르죠. ​

1) 역할, 기능, 범위

자바는 C나 파이썬 같은 전형적인 프로그래밍 언어이므로, 다양한 프로그램을 만들 수 있습니다. 데스크톱 응용프로그램부터 기업용 솔루션, 안드로이드 애플리케이션까지, 소프트웨어 개발과 관련한 전 분야에 사용되고 있죠. ​

이와 달리 자바스크립트는 주로 상호작용이 필요한 웹페이지를 만들거나 플래시를 대신해 사용됩니다. 따라서 자바스크립트를 실행하려면 반드시 CSS와 HTML에 의존해야 합니다. ​

2) 실행 환경

자바는 보통 자바 가상기계(JVM) 위에서 실행됩니다. 반면 자바스크립트는 웹 브라우저 위에서 실행하며, 추가적인 환경 설정이 불필요합니다. ​

3) 모바일 앱 개발

예전 모바일 애플리케이션은 대부분 ‘자바’로 작성되었습니다. 반면, 자바스크립트로 모바일 앱을 만들기는 (불가능한 건 아니지만) 어렵습니다. ​

4) 컴파일

자바는 프로그래밍 언어이므로 컴퓨터가 이해할 수 있도록 컴파일되어야 합니다. 자바 스크립트텍스트로 쓰인 코드로 실행될 수 있는 스크립트 언어입니다. ​

이러한 차이점 때문에 프로그래밍을 배우는 사람이라면 가급적 자바와 자바 스크립트 모두 배우는 것이 좋습니다. 자바와 자바 스크립트가 서로 커버하는 영역이 다르기 때문. 특히, 개발자가 항상 똑같은 프로젝트나 업무만 하는 것은 아니므로, 두 언어를 모두 배워놓는 것이 실무적으로 유리합니다. ​

웹개발-자바-자바스크립트-차이점

각각 이런 걸 만들어요. ​

마지막으로, 자바로 만들 수 있는 것과 자바 스크립트로 만들 수 있는 것을 통해 둘의 차이점을 좀 더 명확하게 구분해 보겠습니다. ​

자바로 만들 수 있는 것

– 하드웨어 프로그래밍
– 안드로이드 앱
– 기업용 소프트웨어
– 빅데이터 분석
– 서버 관련 기술(아파치(Apache), 제이보스(JBoss), 제로니모(Geronimo), 글래스피시(GlassFish) 등 ​

자바 스크립트로 만들 수 있는 것

– 동적인 싱글 페이지 애플리케이션(SPA)
– 제이쿼리(jQuery), 앵귤러JS(AngularJS), 백본(Backbone.js), 엠버(Ember.js), 리액트(React.js), 노드(Node.js), 몽고디비(MongoDB), 익스프레스(Express.js) 등 ​

개발을 전문적으로 다루지 않는 사람들 입장에서는 헷갈리지만, 웹개발 현업에 종사하는 분들 사이에서는 그리 어렵지 않은 구분입니다. 만약, 사내 웹개발 프로젝트를 준비하는 과정에서 이와 같은 난관에 봉착한다면 위시켓을 통해 전문과와의 협업을 권합니다. 위시켓에서는 클라이언트마다 담당 매니저를 두어 기획부터 계약, 사후 처리까지 진행의 모든 과정을 돕고 있습니다. 아래 링크를 누르면 이동합니다. ​

💡 about 위시켓 ​ : 2012년 설립된 위시켓은 지금까지 ‘세상이 일하는 방식을 더 행복하게’ 만들기 위해 IT 아웃소싱 시장에 혁신을 만들어가고 있습니다. 현재까지 97,569개의 기업이 누적 7,519억 원 이상의 프로젝트를 믿고 맡겨주셨습니다. ​


🔖 함께 보면 도움되는 글

앱제작 위한 스토리보드, 화면 설계, 와이어프레임 도구 총정리

프로그램 제작 외주 ‘요구정의서’가 꼭 필요한 이유

2024년 소프트웨어 개발 평균 노임 단가는 얼마?


국내 1위 IT 아웃소싱 플랫폼 위시켓 >

앱 개발 비용 궁금하세요?
위시켓이 바로 알려드릴게요!

개발언어웹개발웹개발 기본웹개발 기초위시켓자바자바 개념자바 뜻자바 역사자바 정의자바vs자바스크립트 비교자바vs자바스크립트 차이자바스크립트
다음 글

위시켓 블로그의 새로운 소식 받기