본문 바로가기
컴퓨터 사이언스/컴퓨터 일반

[컴퓨터 일반] 프로그래밍 언어의 구성요소

by 메리뉴데이 2020. 9. 18.

1. 데이터

 프로그램은 데이터를 처리한다.

 데이터(data)란 어떤 자료를 프로그램이 처리할 수 있는 형태로 나타낸 것.

 컴퓨터가 처리하는 데이터는 이진 데이터와 텍스트 데이터로 나뉘는데,

 수로 나타낸 데이터를 통칭하여 이진 데이터라고 하고,

 이에 더해 그림 파일, 음악 파일, 비디오 파일 등 미디어 데이터 또한 이진 데이터로 본다.

 문자나 문자열을 나타내는 데이터는 텍스트 데이터라고 한다.

 

2. 연산

 데이터를 처리하는 방법을 연산이라 하고, 특별한 연산을 수행하는 함수를 연산자라고 부름.

 연산 후 그 결과를 저장하는 이름을 변수(variable)라고 한다.

 하지만, 어떤 변수에서는 한 번 정해진 뒤 바뀔 수 없는 경우 상수와 같이 사용되므로,

 이 땐 변수 대신 이름(name)이나 식별자(identifier)라고 하기도 한다.

 다음 두 가지 구조로 연산을 나타내는데, 하나는 수식, 그리고 하나는 문장으로이다.

 수식은 값을 나타내는 표현을 통칭하며, 연산자가 포함되어 있지 않아도 값을 나타내면 수식이라고 한다.

 문장은 처리를 나타내는 표현이며, 프로그램 상에서 끝에 쌍반점(;)을 찍어 문장을 표시한다.

 

3. 명령어

 특정 작업을 지시하는 단어를 의미함.

 그 외 특정 함수를 이용하여 사용자 지정 명령어를 구현할 수도 있다.

 함수가 명령어를 대신할 수 있으며 이를 명시적으로 나타내기 위해 void함수(반환값 없음)로 만들기도 한다.

 

4. 서브프로그램

 값에 이름을 부여한 것이 변수라면, 코드에 이름을 부여한 것이 서브프로그램(subprogram)임.

 특별한 코드의 일부분을 별개의 단위(코드 블록)로 묶어서 지칭하는 것이다.

 서브루틴(subroutine)이라고 부르기도 함.

 서브프로그램은 연산 수행 결과 값을 반환하는 함수(function)와

 결과 값을 반환하지 않는 서브프로그램, 프로시저(procedure) 이렇게 두 가지로 분류된다.

 void함수는 프로시저라고 할 수 있다.

 

5. 타입

 현대 프로그래밍 언어의 정의로서는데이터 집합과 연산 집합을 합친 개념으로,

 데이터형 혹은 자료형이라고 부름.

 데이터 집합(int, float,...) 뿐 아니라

 이 데이터 집합에 적용 가능한 연산 집합까지도 정의에 포함하는 것으로 간주된다.

  * 타입 안전성 ㅡ 함수 f의 타입이 f(x):A B라고 하면 이는 a A인 모든 a에 대하여 f(a) B라는 것을 의미한다. 

                         어떤 프로그램 내 모든 연산 및 함수에 대해 위 성질이 만족되면 그 프로그램은

                         '타입 안전'하다고 한다. 이 의미는 타입 오류가 발생하지 않는다는 뜻이다.

 

6. 모듈

 독립적인 프로그램 구성단위를 말함.

 모듈은 프로그램 구성단위로서 프로그램 재사용에 활용된다. 작게는 서브프로그램도 모듈로 볼 수 있다.

 내부와 외부를 구별하며 내부에서, 외부에서 각각 독자적인 이름 공간을 차지한다.