#1. 자바스크립트의 개념

1. 자바스크립트(Javascript)란?

1995년 브랜든 아이크가 10일만에 만든 언어로 프로토타입 기반의 스크립트 언어이다.

처음에는 모카(Mocha)라는 이름이였다가, 라이브스크립트(Livescript)로 바꾼 후 최종적으로 자바스크립트로 작명하였다.

자바와 이름이 비슷해서 같은 언어로 착각할 수 있는데, 자바와는 아무런 관련이 없다. (바다와 바다코끼리 정도 관계?)

자바스크립트 만들 당시에 자바가 유명해서 유명세에 묻어가려고 의도적으로 작명했다고 한다.

오늘날에 HTML, CSS와 함께 웹페이지 구성하는 요소 중 하나이며, Node.js와 같은 런타임 환경과 같이 백엔드 분야에서도 쓰이고 있다.

 

2. 자바스크립트 사용하기

1) 소스코드

  • 프로그램 명령어를 저장해 놓은 파일
  • 사용하는 프로그래밍 언어 종류에 따라 확장자가 서로 다르다
    • 자바스크립트는 .js 확장자를 사용한다. (html은 .html, css는 .css, 자바는 .java, 파이썬은 .py 등등)
  • 소스코드는 대소문자를 구분하고, 줄바꿈 및 띄워쓰기는 아무런 영향이 없다.

 

2) 주석문

  • 프로그램 소스코드에 대한 부연 설명을 작성하는 용도로 사용한다.
  • 주석문이 포함된 소스코드는 프로그램이 읽지 않고 무시한다.

 

  • 한 줄 주석
    • " // " 를 쓰고 뒤에 주석 내용을 작성한다. 여러 줄을 지정해야할 경우 모든 행 앞에 " // " 가 붙는다.
// 주석문 작성 1
// 주석문 작성 2
// 주석문 작성 3
// 주석문 작성 4

 

  • 여러 줄 주석
    • 여러 줄 을 한번에 주석 처리 하려면 " /* " 과 " */ "  사이에 내용을 작성한다. 
/*
주석문 작성 1
주석문 작성 2
주석문 작성 3

줄 바꿈해도 상관 없다.
*/

 

3. 실행 환경 구성

1) Visual Studio Code 설치 (https://code.visualstudio.com/)

마이크로소프트에서 만든 에디터로 많은 개발자가 사용중인 에디터이다.

다양한 익스텐션으로 IDE 못지 않은 성능을 가지고 있다.

 

2) Node.js 설치 (https://nodejs.org/ko/)

자바스크립트로 웹 브라우저 없이 출력하거나 서버를 구축하게 해주는 런타임 환경이다.

자바스크립트라는 언어로 백엔드까지 작성할 수 있다는 엄청난 장점이 있다. 

설치 확인하는 방법

node --version

명령프롬프트(win) 또는 터미널(mac)에 위와 같은 명령어를 입력하면 설치한 버전이 나온다.(버전이 나오면 정상적으로 설치 됨)

 

4. 자바스크립트 코드 출력

1) 웹을 이용해 출력하는 방법 (Node.js 설치 없이 가능)

html에 script 태그로 연결(또는 script 태그 안에서 코드 직접 작성)한 뒤

마우스 우클릭

html로 연 웹페이지에서 마우스 우클릭, 검사 항목을 누르면(F12 눌러도 나온다) 개발자 도구가 나오는데

개발자 도구의 콘솔에서 출력한 내용을 볼 수 있다.

 

2) 터미널을 이용해 출력하는 방법 (Node.js 설치 필요)

node 파일이름.js

윈도우의 명령프롬프트나 맥의 터미널에서 해당 자바스크립트 파일이 있는 폴더로 들어가서 node 파일이름.js 입력하면 출력 된다.

 

3) Visual Studio Code 안에서 출력하는 방법 (Node.js 설치 필요)

Visual Studio Code의 익스텐션에서 Code Runner 설치 후

Ctrl + Alt + N 을 누르면, 아래 OUTPUT에서 출력할 수 있다. 

 

5. 프로그래밍 언어

1) 컴파일 언어

  • 반드시 기계어로 컴파일 되어야만 실행 시킬 수 있는 프로그래밍 언어
  • 작성한 소스코드를 2진수(바이너리) 형태로 변환 → 컴파일
    • 소스코드를 컴파일 해주는 소프트웨어 → 컴파일러
  • 한번 컴파일 된 파일은 2진수 형태로 저장되어 있기 때문에 재실행시 컴퓨터가 해석할 필요가 없다.
  • 컴파일 된 결과물은 독립 실행이 가능한 형태이기 때문에 별다른 도구가 필요 없다.
  • C, C++, Java 등등

 

2) 인터프리터 언어

  • 컴파일러를 거쳐서 기계어로 변환되지 않고 바로 실행되는 프로그래밍 언어
  • 컴파일을 거치지 않고 매 실행시 마다 소스코드를 해석하는 과정이 반복적으로 수행되는 형태
  • 컴파일을 하지 않는다는 간편함 때문에 상대적으로 배우기 쉽다
  • 컴파일 언어보다 실행 속도가 느리다 (대용량 서비스에 적용하는 것은 적합하지 않다)
  • 컴파일을 하지 않는 대신 실행을 하기 위해 해석기가 매번 필요하다
    • 자바스크립트는 node 나 웹 브라우저가 필요하다
  • Javascript, Python 등등

 

3) 스크립트 언어

  • 인터프리터 방식에서 사용하기 위해 고안된 프로그래밍 언어

 

+ Recent posts