본문 바로가기

Javascript/모던 자바스크립트 DeepDive

[모던 자바스크립트 Deep Dive] 01 프로그래밍

1.1 프로그래밍이란?

  • 컴퓨터에게 실행을 요구하는 일종의 커뮤니케이션
  • 0과 1밖에 알지 못하는 기계가 실행할 수 있을 정도로 정확하고 상세하게 요구사항을 설명하는 작업, 그 결과물이 코드
  • 컴퓨터와 사람은 사고, 인지 방식이 다르기 때문에, 컴퓨터의 관점에서 문제를 사고할 수 있어야함

1.2 프로그래밍 언어

  • 컴퓨터가 이해할 수 있는 언어는 기계어(machine code)
  • 기계어는 직접 작성이 어렵기 때문에, 사람이 이해할 수 있는 약속된 구문(syntax) 으로 구성된 프로그래밍 언어(Programming Language)를 사용해 프로그램을 작성
  • 그것을 컴퓨터가 이해할 수 있도록 기계어로 번환하는 번역기를 사용한다. 그 번역기를 컴파일러(Compiler) 또는 인터프리터(Interpreter)라고 함

1.3 구문과 의미

  • 언어는 문법에 알맞은 문장 뿐만 아니라 적합한 의미(semantics)를 가지고 있어야 언어의 역할을 충분히 수행할 수 있다.
  • 프로그래밍의 목정은 요구 사항의 실현 (문제의 해결)이다.
  • 대부분의 프로그래밍 언어는 '변수와 값', '키워드', '연산자', '표현식과 문', '조건문', '반복문'에 의한 '흐름제어', '함수', 그리고 자료구조인 '객체', '배열' 같은 문법을 제공
  • 프로그래밍은 요구사항의 집합을 분석해서 적절한 자료구조와 함수의 집합으로 변환한 후, 그 흐름을 제어하는 것