JavaScript란?
- 라이브스크립트 확장시킨 것
- 넷스케이프사(라이브스크립트 만듦), 선 마이크로시스템사(자바 만듦)의 공동 프로젝트로 탄생
- 웹페이지에 생동감을 붙여넣기 위해 탄생
- 동적 웹페이지 : 사용자와 상호작용할 수 있도록 기능 추가해, HTML이 담고 있는 정보들을 움직이게 만들어 준다
- 엔진(브라우저 일 경우 내장 엔진)이 스크립트 읽음 => 스크립트를 기계어로 전환 => 기계어 전환된 코드 실행
JavaScript로 하는 일
- 웹의 요소 제어 : 메뉴바, 탭화면 처럼 같은 공간에서 다른 콘텐츠를 보여줄 수 있다. 로그인, 회원가입시 유효성검사를 할 수 있다.
- 웹 애플리케이션 : 지도길찾기서비스, 정보시각화 등 자바스크립트로 구현해서 동작하는 웹 사이트를 만들 수 있다.
- 다양한 라이브러리 : 프레임워크 - React, Angular, Vue.js / 라이브러리 - jQuery
- 서버 개발 : Node.js 프레임워크로 서버 개발까지 영역을 확대
- JSON(JavaScript Object Notation) : 데이터 전송과 교환을 위한 XML 대체용 기법
HTML과 JavaScript의 차이
HTML
- 컴퓨터언어, 컴퓨터프로그램언어는 아니다.
- 웹페이지를 묘사하는 목적의 언어이기 때문에 시간의 순서에 따라서 무엇을 할 필요가 없다.
JavaScript
- 컴퓨터언어, 컴퓨터프로그래밍 언어
- 시간의 순서에 따라 웹브라우저의 여러기능을 실행되어야 하기 때문에 프로그래밍 형태를 띠고 있다.
프로그램, 프로그래밍, 프로그래머
컴퓨터의 여러가지 기능들 중 하나만 필요한 경우는 별로 없다. 어떤 의도에 따라 순서대로 여러 기능을 작동 시키는 것이 컴퓨터의 일반적인 사용법이다. 순서를 반복하는 과정에서 드는 시간과 오류들을 해결하기 위해서 나온 것이 프로그래밍 언어이다. 시간에 순서에 따라 실행되어야 할 기능들을 프로그래밍 언어의 문법에 맞게 글로 작성해두고, 사용하고 싶은 프로그램이 있을 때 작성 한 글을 컴퓨터에게 실행해달라고 하면 컴퓨터는 실행해준다.
PROGRAM - 시간의 흐름에 따라 진행되는 순서
PROGRAMMING - 순서를 만드는 행위
PROGRAMMER - 순서를 만드는 사람
단순히 시간을 나열하는 것에서 원하는 기능들이 많아졌다. 그중에서도 핵심적인 기능들인 조건문, 반복문, 함수등은 프로그래밍언어라면 꼭 가지고 있는 기능들이다.
단순히 시간을 나열하는 것 → 조건에 따라 다른 순서의 기능을 실행
→ 반복해서 어떤 기능을 실행
→ 코드가 복잡해지면서 단순하게 잘 정리정돈 하기
JAVA과 JavaScript의 차이
JAVA
- 별도의 소스 파일로 작성, 소스를 컴파일하여 자바 가상 기계 위에서 실행되는 컴파일 언어
- 객체 지향 언어
- 반드시 자료형을 선언
- 소스를 볼 수 없어 보안 유지가 가능
JavaScript
- HTML 내에 직접 삽입, 클라이언트에서 직접 해석되고 실행되는 인터프리터 언어
- 객체 기반 언어
- 자료형 선언 불필요
- 브라우저의 메뉴에서 소스를 볼 수 있어 보안 취약
'프로그래밍언어 > JavaScript' 카테고리의 다른 글
[JavaScript] JS 조건문 (0) | 2020.12.04 |
---|---|
[JavaScript] 이벤트 onclick (0) | 2020.12.03 |
[JavaScript] JavaScript 변수와 상수 (0) | 2020.12.03 |
[JavaScript] JavaScript 기본, 자료형 (0) | 2020.12.03 |
[JavaScript] JavaScript 사용법 (0) | 2020.12.03 |