게임 개발자를 향해

통합 개발 환경(IDE)과 컴파일의 개념 본문

프로그래밍/C++

통합 개발 환경(IDE)과 컴파일의 개념

뿌단이 2023. 4. 4. 20:31

1. 통합 개발 환경 (Integrated Development Environment ;IDE)

 통합 개발 환경 즉 IDE란, 컴파일, 디버그, 코딩 등 개발자가 프로그램을 만드는데 필요한 작업을 한곳에서 할 수 있게 해주는 고마운 소프트웨어 입니다.

 

 제가 사용해본 IDE는  VisualStudio, VSCode,  Eclips등이 있고, C/C++로 간단한 코드를 짜기 좋은 DevC++ 등이 있습니다. 이 이외에도 수많은 컴파일러가 존재합니다.

 

VisualStudio

 VisualStudio는 제가 가장 많이 사용한 IDE 입니다. MS에서 만들었기 때문에 윈도우에서만 사용이 가능하고, 여러 언어들과 언어에 최적화된 기능들이 지원되기 때문에 많이 사용되는 컴파일러 입니다. 많은 기능을 지원하기 때문에 무겁다는 느낌을 받았습니다.

 

VSCode

 VSCode는 VS와 마찬가지로 Windows에서 사용이 가능하고, VSCode는 좀 더 개발자가 직접 원하는 언어의 환경을 구성해야하고, 환경을 꾸밀 수도 있어서 VisualStudio에 비해 자유도가 높고 가벼운 편입니다. 하지만 언어에 맞는 환경을 만들기 위해 몇가지 환경구성을 해 줄 필요가 있습니다.

 

Eclips

 EclipsJAVA로 만들어졌으며, 대학에서 Java를 배울 때 한번 사용해 봤었습니다. 많이 다루어 보지 않아서 잘 모르겠지만 JAVA를 사용하면 보통 Eclips를 사용하는 것 같습니다.

 

DevC++ 

 DevC++은 대학에서 C를 배울 때 많이 사용했습니다. VS에서 컴파일 환경이 살짝 달라서 입력과 출력을 할 때 조금 다른 방식으로 했던 걸로 기억합니다. VisualStudio에 비해 매우 가벼운 느낌이고 빠릅니다. 하지만 비교적 기능이 VS보다 부족하기 때문에 C를 사용하거나 간단히 코딩을 할 때 자주 사용했었습니다.

 

2. 컴파일 (Compile)

 컴파일이란 .exe 파일을 만드는 것입니다. 컴파일은 IDE 환경에 코딩을 하고 링커를 사용하여 .exe 파일을 만들 수 있습니다.

 

컴파일 과정은 아래와 같습니다.

 

전처리기  ->  컴파일러  ->  어셈블러  ->  링커  ->  .exe파일 제작

 

전처리기

 전처리란 말 그대로 컴파일 전에 코드를 정리해주는 과정입니다. 코드에 주석을 제거하고 참조하는 헤더파일의 실제 코드를 불러오는 등의 #과 같은 전처리문을 처리하는 기능을 담당합니다. ('#'이 붙으면 웬만하면 전처리문이다.)

 

컴파일러

 전처리 후의 코드를 컴파일러가 받습니다. 컴파일러는 고급언어로 코딩된 해당 코드를 저급언어인 어셈블리어로 바꿔줍니다.

 

어셈블러

 어셈블러는 컴파일러에게 받은 어셈블리어오브젝트 코드로 바꾸게 됩니다. ('010101110' 과 같은 기계어)

 

링커

 마지막으로 링커가 어셈블러가 만든 오브젝트 코드로 실행파일 즉 .exe 파일을 만들게 됩니다.

 

 

'프로그래밍 > C++' 카테고리의 다른 글

프로그램의 개념 및 실행되는 과정  (0) 2023.04.04