
4.1 변수란 무엇인가? 왜 필요한가? 애플리케이션은 데이터를 다룬다. 아무리 복잡한 애플리케이션이라고 해도 데이터를 입력받아 처리하고 그 결과를 출력하는 것이 전부다. 변수는 프로그래밍 언어에서 데이터를 관리하기 위한 핵심 개념이다. 변수란 무엇인지 그리고 왜 필요한지 살펴보자. 자바스크립트를 해석하고 실행하는 자바스크립트 엔진도 사람과 유사하게 코드를 실행한다. 자바스크립트 엔진이 위 자바스크립트 코드를 계산(평가:evaluation)하려면 먼저 기호(리터럴:literal 과 연산자:operator)의 의미를 알고 있어야 하며, 식(표현식:expression)의 의미도 해석(파싱:parsing) 할 수 있어야 한다. 자바스크립트 엔진이 10 + 20 이라는 식의 의미를 해석하면 + 연산을 수행하기 위..

3.1 자바스크립트 실행 환경 모든 브라우저는 자바스크립트를 해석하고 실행할 수 있는 자바스크립트 엔진을 내장하고 있다. 브라우저 뿐만 아니라 Node.js 도 자바스크립트 엔진을 내장하고 있다. 자바스크립트는 브라우저 환경 또는 Node.js 환경에서 실행할 수 있다. 한 가지 주의할 점은 브라우저와 Node.js 는 용도가 다르다는 것이다. 브라우저는 HTML,CSS,JS를 실행해 웹페이지를 브라우저 화면에 렌더링하는 것이 주된 목적이지만 Node.js 는 브라우저 외부에서 자바스크립트 실행 환경을 제공하는 것이 주된 목적이다. 따라서 브라우저와 Node.js 모두 자바스크립트의 코어인 ECMAScript를 실행할 수 있지만 브라우저와 Node.js 에서 ECMAScript 이외에 추가로 제공하는 기..
2.1 자바스크립트의 탄생 1995년, 약 90%의 시장 점유율로 웹 브라우저 시장을 지배하고 있던 넷스네이프 커뮤니케이션즈는 웹페이지의 보조적인 기능을 수행하기 위해 브라우저에서 동작하는 경량 프로그래밍 언어를 도입하기로 결정한다. 그래서 탄생한 것이 바로 브렌던 아이크가 개발한 "자바스크립트"다. 현재 모든 브라우저의 표준 프로그래밍 언어로 자리 잡았다. 하지만 자바스크립트가 탄생한 뒤 얼마 지나지 않아 자바스크립트 파생 버전인 JScript 가 출시되어 자바스크립트는 위기를 맞는다. 2.2 자바스크립트의 표준 JScript 와 자바스크립트는 자사 브라우저의 점유율을 높이기 위해 자사 브라우저에서만 동작하는 기능을 추가하기 시작했다. 이로 인해 브라우저에 따라 웹페이지가 정상적으로 동작하지 않는 크로..

1.1 프로그래밍이란? 프로그래밍이란 컴퓨터에게 실행을 요구하는 일종의 커뮤니케이션이다. 따라서 먼저 무엇을 실행하고 싶은지 정의할 필요가 있다. 이 때 요구되는 것이 문제 해결 능력이다. 프로그래밍이란 0과 1밖에 알지 못하는 기계가 실행할 수 있을 정도로 정확하고 상세하게 요구사항을 설명하는 작업이며, 그 결과물이 바로 코드이다. 문제 해결 방안을 고려할 때 컴퓨터의 입장에서 문제를 바라보는 것을 컴퓨팅 사고(Computational thinking) 라고 한다. 논리적, 수학적 사고가 필요하며 해결 과제를 작은 단위로 분해하고 패턴화해서 추출하며, 프로그래밍 내에서 사용될 모든 개념은 평가 가능하도록 정의해야 한다. 1.2 프로그래밍 언어 기계어로 직접 명령을 전달하는 것을 대신할 가장 유용한 대안..