프로그램
작성, 마지막 큰 수정
에 풉;에 (‘프로그래밍’이라는 제목으로) 첫 작성.
에 전체적으로 윤문하고 관련 개념으로 내용을 확대.
컴퓨터에서 프로그램(program)은 컴퓨터가 할 일을 명령의 형태로 나열한 것이다.
프로그램을 작성하는 행위를 프로그래밍(programming), 프로그램을 작성하는 사람을 프로그래머(programmer)라고 한다. 프로그램은 일반적으로 프로그래밍 언어로 작성된 소스 코드(source code)로부터 유도되며, 프로그램에 필요한 데이터를 포함한 제품으로서의 소프트웨어(software)의 일부가 된다. 방송 편성과 같이 컴퓨터가 아닌 곳에서도 프로그램·프로그래밍·프로그래머라는 말을 쓰는 경우가 있으니 주의가 필요하다.
관련 개념 #
프로그램과 연관된 개념들. 앞에서 뒤로 갈수록 더 큰 단위이다.
행위물 | 행위 | 행위자 | 행위물의 사전적 의미 |
---|---|---|---|
소스 코드 (source code) | 코딩 (coding) | 코더 (coder) | 인간이 읽고 쓰는 프로그램의 원본. |
프로그램 (program) | 프로그래밍 (programming) | 프로그래머 (programmer) | 컴퓨터가 이해해 실행할 수 있는 명령. |
소프트웨어 (software) | 소프트웨어 개발 (development) | 소프트웨어 개발자 (developer) | 하드웨어를 제외한 모든 것. |
흔히 코딩(coding)과 (소프트웨어) 개발(software development)을 프로그래밍과 연관된 의미로 쓰곤 한다. 소스 코드로부터 유도되지 않는 프로그램은 거의 없기 때문에 코딩과 프로그래밍은 같은 의미이며, 소프트웨어를 프로그램만으로 구성할 수 있으므로 프로그래밍이 곧 소프트웨어 개발인 경우도 드물지 않다. 따라서 세 개념은 조건만 맞다면 혼용되어 쓰일 수 있다. 그러나 조건과 무관하게 잘못된 선입견을 강조하는 용도로 개념을 혼용하는 경우가 드물지 않다.
알고리즘 및 소프트웨어 구조를 잘 선택하지 못하거나, 라이브러리를 무비판적으로 수용하는 프로그래머들을 비하하는데 ‘코더’라는 말을 쓰곤 한다.
소프트웨어 개발에는 단순 프로그래밍 뿐만이 아닌 데이터(리소스)를 만들고 의사 결정을 하는 것까지가 포함되는데, 이를 무시하고 프로그래머의 기여분을 강조하기 위해 프로그래머를 ‘개발자’로 칭하는 경우가 흔하다.