본문 바로가기
[POLF] : 코딩

통합개발환경, IDE(Integrated Development Environment) 개념 및 중요 요소

by POLF 2023. 1. 10.

IDE에 대한 정의와 중요 요소에 대해서 알아보겠습니다.

 

사람이 쓴 글은 문법이나 맞춤법이 조금 틀려도 맥락에 따라 이해가 가능합니다. 하지만 코딩은 철자 하나, 문법 하나 잘못되면 프로그램이 실행되지 않습니다. 그래서 이런 문제를 해결하기 위해 개발자들이 프로그래밍을 위한 도구를 개발한 것이 바로 통합개발환경(IDE, Integrated Development Environment)입니다. 

 

그럼 이번 포스팅에서는 통합개발환경에 대한 정의와 중요 요소들에 대해서 공부한 내용을 적어보도록 하겠습니다. 


통합개발환경(IDE)의 정의

 

 

통합개발환경에 대한 정의는 말 그대로 통합적으로 개발할 수 있는 환경이라는 의미입니다. 조금 더 전문적으로 이야기 하면 개발과 관련된 모든 작업을 하나의 애플리케이션을 통해서 할 수 있다는 의미가 됩니다. 문서 편집, 컴파일, 디버그, 원격 서버 액세스 등을 하나의 애플리케이션을 통해서 처리할 수 있도록 해주기 때문에 개발자의 입장에서는 아주 소중한 애플리케이션인 것이죠. 

 

통합개발환경은 일반적으로 소스 코드 편집기, 로컬 빌드 자동화, 디버거 등의 요소로 구성이 되어 있습니다. 

 

 

 

1) 소스 코드 편집

 

개발자가 소스 코드를 편집하기 위해서 마련된 프로그램이라고 생각하시면 됩니다. 독립적으로 활용이 가능한 프로그램도 있고, 통합개발환경이나 웹 브라우저에 통합되어 제공되는 경우도 있습니다. 

 

이런 소스 코드 편집기는 구문 강조, 들여쓰기, 자동 완성, 괄호 맞추기 등의 기능과 같이 단순하지만 빠뜨리기 쉬운 작업들을 만들어주도록 설계되어 있습니다. 코드 편집을 강화, 자동화가 쉽게 이루어지지 않는 프로그램의 경우에는 소스 코드 편집기라고 하지 않고 문서 편집기라고 이야기합니다. 

 

이미지_코딩
복잡한 코딩의 세계

 

 

 

2) 로컬 빌드 자동화

 

여기도 먼저 개념에 대해서 잡고 넘어가야 할 것 같습니다. 개발자가 작성한 코드를 컴퓨터 언어로 바꿔주는 작업을 컴파일이라고 한다는 것을 지난 포스팅에서 공부했습니다. 이렇게 컴파일된 파일을 실행시킬 수 있는 파일로 만들어줘야 하는데 이것을 '빌드'라고 합니다. 

 

이것을 로컬환경에서 빌드와 자동화 테스트를 실행해 줌으로서 개발자가 귀찮은 작업을 간편하게 해주는 기능이라고 이해가 됩니다. 더 공부를 해봐야겠지만, 대부분의 자료들이 전문적 용어로 작성되어 있다 보니 쉽게 이해하는데 한계가 있습니다. 항상 자료는 사용자 입장에서 접근성이 좋아야 자료로서 가치가 있는데 이럴 때는 참 늦게 공부하려니 힘이 드네요ㅜㅜ

 

 

 

3) 디버거

 

말 그대로 코드에 있는 버그 위치를 표시해주는 프로그램을 테스트하는 프로그램입니다. 

 

 

통합개발환경(IDE)의 유형

 

지원하는 애플리케이션 개발과 작동 방식에 따라 유형을 크게 두 가지 정도로 구분지을 수 있습니다. 첫 번째는 로컬 IDE, 두 번째는 클라우드 IDE입니다. 용어에서도 벌써 알아차리시는 분들이 많을 것 같습니다. 

 

 

 

로컬 IDE

 

개발자가 직접 컴퓨터에 IDE를 설치하고 실행하는 형태를 이야기합니다. 개발자는 추가 라이브러리를 다운로드해서 설치해야 하고, 개발환경에 있어서 시스템 성능 저하나 소프트웨어 오류를 일으킬 수 있다고 합니다. 

 

 

로컬 작업 환경

 

 

 

클라우드 IDE

클라우드 IDE는 인터넷 브라우저에서 직접 코드를 작성하고 편집할 수 있고, 컴파일까지 하기 때문에 사용하는 컴퓨터에 직접 IDE를 다운로드 할 필요가 없다는 장점이 있습니다.

 

 

 

통합개발환경(IDE) 선택의 중요한 요소

 

많은 IDE가 무료로 사용할 수 있습니다. 제가 사용할 Visual Studio 역시 무료 IDE 중에 하나입니다. 이런 IDE를 고르는데 고려해야 할 요소가 있습니다. 

 

 

 

1) 프로그래밍 언어

 

IDE 선택은 코딩에 사용하는 프로그래밍 언어를 기반으로 결정하는 것이 맞습니다. 특정 언어에 사용하기 적합한 자동화 기능이 전용 IDE에 포함되어 있기 때문에 언어에 따라 IDE를 선택하게 됩니다. 

 

 

 

2) 운영체제

 

Linux, Window 등 운영체제 플랫폼에 따라 적합한 IDE가 있습니다. 어떤 IDE들은 특정 운영체제와는 잘 맞지만, 다른 운영체제에서는 속도가 느려진다거나 사용하기 어려울 수도 있습니다. 

 

 

 

3) 자동화 기능

 

보통 IDE에 포함되어 있는 주요 기능은 위에서 언급한 세 가지, 소스 코드 편집기, 빌드 자동화, 디버깅입니다. 추가로 IDE에 따라 여러 언어를 지원한다거 개발자의 요구에 맞춰 기능의 확장이 되기도 합니다. 

 

 

그럼 개발자들의 사용 경험이 많았던 IDE는 무엇일까요? IDE로는 Visual Studio, Notepad++, InteliJ 라는 IDE라고 합니다. 

또 열심히 공부해서 오겠습니다. 

 

By. POLF

 

댓글