본문 바로가기
개발이야기/C와 컴퓨터 공학 기초

통합 개발 환경이란? (IDE)

by oddsilk 2024. 6. 3.

컴퓨터 산업 초장기에는 프로그래밍이라는 개념 자체가 지금과는 달랐다.아~~~주 어려웠다

 

반면에 최근에는 IDE라고하는 통합 개발환경이 있기때문에, 프로그래머의 개발환경이 매우 효율적으로 변했다.

그리고 그로 인해서 관련 산업들이 아주 빠르게 발전하고 있다.

 

이렇게 수 있었던 데에는 여러가지 이유가 있겠지만 여기서는 프로그램을 개발하는 할때 사용하는 소프트웨어인 통합 개발 한경이 많이 좋아졌기 때문이라는 것도 무시할 수 없다. 

그런 측면에서 몇가지 살펴보자 

 

1. 프로그래머가 할 일 (개발환경 안에서)

위 사진을 보면, 프로그래머가 해야할 일이 굉장히 간편해진 것을 알 수 있다. 소스코드를 입력하고 프로그램을 실행한다.

원하는 프로그램을 동작하면 사용하면되고 아니면 소스코드를 수정하면된다.
그 외에 작업들은 전부 컴퓨터에서 대신 해주기 때문이다

 

통합 개발 환경이 만들어지지 않았을때는 컴퓨터가 해주는 수많은 작업들을... 한단계한단계 해줘야만 했다
통합 개발 환경이라는 것은 그만큼 편리하게 알아서 해주기 때문에 사실 프로그래머는 우리눈에 안보이는 것들이 숨어있다는 것을 상기하는 것이 중요하다.

 

특히, 소스코드라는 것은 프로그래밍 언어로 어떤 문서를 입력하는 것을 말한다
작가가 소설을 쓰는 것과 비슷하다. 소설은 읽는 사람이 어떤 느낌이나 생각을 가지도록 교묘하게 유도한다.
프로그램도 비슷하다. 소스코드를 작성하는 것은 컴퓨터가 이러한 기능을 수행하도록 문서를 만드는 작업과 같다

 

2. 컴퓨터가 제공하는 것 (개발환경)

1. 문서편집기

문서작업을 진행하는 것과 같기 때문에 문서편집기로서의 기능도 굉장히 중요하다

IDE는 이런 문서 편집의 기능을 제공하여 프로그래머가 코드를 편리하게 작성을 할 수 있도록 돕는다

 

2. 소스코드 파일

우리가 작성한 문서(소스코드)는 파일의 형태로 저장된다.
파일의 이름이 cpp 아니면 C로 끝나는 경우를 봤을것이다.
확장자를 살펴보면 어떤 용도로 만들어진 것인지 엿볼 수 있다 .
cpp 라면 c++문법으로 만들어진 소스코드라는 뜻이고 .C라면 C문법으로 만들어진 소스코드라는 뜻이다

 

나중에 이 소스코드는 컴파일러에 의해 obj(오브젝트)파일이라고하는 바이너리 덩어리를 만드는 기준이된다

 

3. 컴파일러

소스코드를 컴퓨터가 이해할 수 있는 언어로 바꾸는 것이 컴파일러(소프트웨어)다

왜 번역가인 Translator가 아닌가?
전통적인 이유가 있는데, 컴파일러는 편집자라는 뜻이다.

이걸 편집을 해서 컴퓨터가 이해할 수 있는 형태로 바꿔준다는 뉘앙스로 이해를 해주면 좋다

4. 링커

컴파일러의 목적은 실행파일을 만드는 것이다
컴파일러의 내부적으로는 사실 링커라는 소프트위어가 하나 더 있다.

이 내용은 추후에 보충을 해주겠다.

 

실행파일

컴퓨터 입장에서는 실행 코드이다. 실행 코드이다 Excutable
실행파일의 확장자는 exe 파일이다
exe가 붙어있다면 실행할 수 있는 프로그램이다라고 알 수 있다. 

 

 

IDE (Interagrated Development Environment)

통합 개발 환경은 딱 한가지만 존재하지 않는다. 운영체제도 여러개가 있는 것과 마찬가지다
윈도우에서는 VS( Visual Studio)가 가장 유명하다,
맥에선 XCode가 유명하고 Java 쪽에선s Eclipse도 사용할 수 있다.

다양한 IDE의 로고들



보통 VS가 초보자떄 공부하기 좋기때문에 VS로 공부하는 것을 많이들 추천하곤 한다