오랫만이다 게이들아.
집안에 여러가지 일이 생겨서 한동안 컴퓨터를 못 할거 같고, 앞으로도 글같은거 쓸 분위기가 못될거 같아서
글쓰기 시작한지 일주일 만에 번외편 올려놓고 한동안 잠수탈 예정이다. Sorry
C언어를 배워보자 글을 쓰기 시작하면서 알게된 것이
참 수많은 종류의 프로그래밍 언어가 있구나 하는 거였는데,
프로그래밍 언어의 종류가 다양하고 여러가지 기능은 틀리지만, 결국 프로그램으로 만들어지는 과정은 다 거기서 거기인것 같더라.
그래서 급하게 쓸 번외편으로 어울리도록
여러가지 인터넷에 흩어져 잇는 프로그래밍 과정을 하나하나 주워모아서 읽기 쉽게 정리해놓은 글을 써본다.
글을 써보고 알게 되었지만, 개드립에는 나보다 훌륭한(랄까 아직 나는 비기너즈클레스)프로그래머도 많은거 같아서, 항상 글을 쓸때마다 긴장되고,
혹시나 내가 쓴 글이 틀렸다면 그 사람들의 입장에서 어떻게 보일까라는 불안감이 적잖아 있다.
But 구더기 무섭다고 장을 담구지 않을 수도 없는 노릇이고
함정카드 무섭다고 몬스터소환을 안할 수도 없는 노릇이고
악플 무서워서 글을 안쓸 수도 없는 노릇이므로
약간의 용기를 내 머릿속에 첨가해서 글을 쓰기 시작함(현재 시간 20 : 51)
먼저 프로그램이 만들어 지는 과정을 알기 위해서는 간단한 용어를 알아햐 한다.
1. 프로그래밍언어
2. 컴파일과 컴파일러
3. 링크
1번 프로그래밍언어는 내가 1편에서 언급을 했으므로 여기선 생략한다. ( 혹시나 링크가 필요하다면 http://www.dogdrip.net/37310382)
2. 컴파일(Compile)과 컴파일러(Compiler).
프로그래밍을 하는데 가장 기본적인것은 역시 프로그래밍언어라고 나는 생각한다.
그래서 우리는 프로그래밍언어를 공부함으로서 이것을 익힐 수 있지.
하지만 애석하게도 정작 컴퓨터는 프로그래밍언어를 전혀 할 수 없고 2진법으로 이루어진 전자언어밖에 할 줄 모른다.
그럼 우리가 프로그래밍언어를 공부하는 것이 헛고생이지 않을까?
No, 그래서 컴파일이 존재한다.
컴파일은 전자언어와 프로그래밍언어 둘다 가능하다. 그래서 우리가 프로그래밍언어로서 프로그램을 작성하면 그것을 전자언어로 해석해서 컴퓨터로 전달해 주는 과정을 컴파일이라고 한다.
컴파일러는?
컴파일(Compile) + 사람(er) 이라고 해서 컴파일러다.
가르치는(Teach) + 사람(er) 이 Teacher인것 처럼.어떤가 참 쉽지 않은가? 프로그래밍언어도 이만큼 쉽다면 얼마나 좋을까, 하하하
하지만 프로그램을 작성하는건 사람이고 사람이 100% 완벽할 수 없다.
복잡한 프로그램을 작성하다 보면 오타나 잘못된 입력이 생길 수 있다.
그럴때는 컴파일러는 언어를 컴파일 하지 못하고 에러를 발생시킨다.
보통 프로그램 작성 프로그램(프로그램을 작성하는 프로그램. 아 뭐야 이상해 이거)에서는 컴파일 결과창에서 어느 부분에서 오류가 생겼는지
상세하게 오류코드와 함께 알려주기 때문에 직접 머리를 쥐어짜서 해결하든 도움말을 열든 인터넷을 검색하든 하여서 모든 오류를 해결하면 비로서
컴파일이 완료된다.
3. 링크
하지만 멍청하기 짝이 없는 컴퓨터는 자기가 할 줄 아는 전자언어로 번역을 해서 같다 바쳐도 실행을 할 능력이 없다.
그래서 어느 컴퓨터든 설치되어 있는 운영체제로 컴파일된 프로그램을 실행파일로 만들어 주는데 이것을 링크라고 한다.
어때요, 참 쉽죠?
그러니까 간략하게 요약하면
프로그래밍의 작성과 실행 까지의 과정
프로그램의 작성 >
컴파일
If) 오류발생 > 오류해결 >다시 컴파일(이 과정을 모든 오류가 해결되어 컴파일이 완료될 때 까지 반복한다)
컴파일 완료
링크
실행파일 실행
이정도면 나름 이해하기 쉽게 프로그램이 만들어지는 과정을 설명한 것 같다.
마지막으로,
위에서도 언급했지만, 집안 사정으로 인해서 잠시 게시글을 올리는건 중단하게 되었다.(늦어도 추석연휴가 끝날때 쯤이면 3편을 올릴 수 있도록 하겠다)
읽판에서 C언어 관련 글을 쓰다보니 생각보다 개드립에 프로그래밍관련 전공을 하는 사람이 많은것 같다.
그런 사람들에 비하면 나는 아직 새발의 발톱때만도 못한 비기너즈겠지만,
나의 글을 보고 응원해주는 몇몇 선배들의 조언과 충고, 지적 정말 고맙다.
앞으로도 잘 부탁한다.
(설마 이걸로 좆목밴을 당하지는 않겠지...?)
세서미스트리트
돋아오른다.
준가르
모르는게 부끄러운게 아니야
모르는걸 배우려고 하지 않는게 부끄러운거지~
암흑 경찰관
잉텔
로컬
너나암?
1233
빵뿡삐