개발자는 코드 에디터(code editor)에서 가장 많은 시간을 보냅니다.
코드 에디터는 크게 통합 개발 환경(IDE)과 경량 에디터로 나뉘는데, 많은 개발자가 둘 중 하나를 택해 작업합니다.
통합 개발 환경
통합 개발 환경 (Integrated Development Environment, IDE)은 강력한 에디터입니다. 보통 '프로젝트 전체’를 관장하는 다양한 기능을 제공합니다. 이름에서 알 수 있듯이 IDE는 단순한 에디터가 아닙니다. '개발 환경’을 쾌적하게 해주는 통합 환경을 제공합니다.
IDE를 이용하면 수많은 파일로 구성된 프로젝트를 불러오고, 파일 간의 탐색 작업이 수월해집니다. 단순히 열려있는 파일뿐만 아니라 전체 프로젝트에 기반한 자동 완성 기능도 사용할 수 있습니다. 여기에 더하여 git과 같은 버전 관리 시스템, 테스팅 환경 등, '프로젝트 수준’의 작업도 IDE에서 할 수 있습니다.
아직 어떤 IDE를 사용할지 결정하지 못했다면, 아래 두 옵션을 고려해 보시길 바랍니다.
- Visual Studio Code (크로스 플랫폼, 무료)
- WebStorm (크로스 플랫폼, 유료)
Windows 사용자라면 'Visual Studio’라는 IDE를 들어보셨을 겁니다. Visual Studio는 'Visual Studio Code’와는 다릅니다. 'Visual Studio’는 .NET 플랫폼 개발에 쓰이는 유료 에디터로, Windows에서만 사용할 수 있습니다. 자바스크립트도 지원합니다. Visual Studio의 무료 버전인 Visual Studio Community도 있으니 참고하시기 바랍니다.
상당수의 IDE가 유료이긴 하지만 개발자 연봉 대비 무시할 만한 수준입니다. 체험 기간을 이용해 자신에게 맞는 IDE를 찾아 구매하는 것을 권유 드립니다.
경량 에디터
'경량 에디터(lightweight editor)'는 IDE만큼 많은 기능을 제공하진 않지만, 속도가 빠르고 단순하다는 장점이 있습니다.
경량 에디터는 파일을 열고 바로 수정하고자 할 때 주로 사용됩니다.
'경량 에디터’와 'IDE’의 가장 큰 차이점은 IDE는 프로젝트 레벨에서 작동한다는 점입니다. IDE는 구동 시 불러와야 할 데이터가 많고, 필요하다면 구동 시 프로젝트 구조를 분석하는 일 등도 합니다. 파일 하나만 수정하고 싶다면 경량 에디터를 사용하는 게 훨씬 빠릅니다.
경량 에디터는 다양한 플러그인을 지원합니다. 디렉터리 레벨 문법 분석기나 자동완성기능 등을 플러그인을 설치해 사용할 수 있습니다. 플러그인을 사용하면 경량 에디터에서도 IDE 못지않게 다양한 기능을 사용할 수 있죠. 요즘엔 경량 에디터와 IDE 사이의 엄격한 구분이 사라져가는 추세입니다.
추천하는 에디터는 다음과 같습니다.
- Atom (크로스 플랫폼, 무료)
- Visual Studio Code (크로스 플랫폼, 무료)
- Sublime Text (크로스 플랫폼, 셰어웨어)
- Notepad++ (Windows, 무료)
- Vim이나 Emacs도 에디터로 사용법만 잘 숙지하면 충분히 에디터 역할을 잘합니다.
논쟁하지 맙시다
위에 나열한 에디터는 저나 제가 훌륭하다고 생각하는 개발자들이 오랫동안 만족하며 사용하고 있는 것들을 추린 것입니다.
이 외에도 제가 모르는 훌륭한 에디터가 있을 수 있으니 여러분이 가장 좋아하는 것 하나를 택하시면 됩니다.
여타 툴과 마찬가지로 에디터를 선택하는 것은 프로젝트의 종류, 개발 습관, 개인 성향에 따라 다르므로 이에 관한 논쟁은 지양하도록 합시다.