Offcanvas

개발자 / 애플리케이션

'VS 코드' vs. '서브라임 텍스트'··· 어떤 편집기를 선택해야 할까

2019.09.25 Martin Heller  |  InfoWorld
자바스크립트 편집기와 자바스크립트 IDE를 비교할 때 필자가 적극 추천하는 것 중에는 (편집기로써) 서브라임 텍스트(Sublime Text)와 (편집기 또는 IDE로써) 비주얼 스튜디오 코드(Visual Studio Code)가 자주 포함된다.

두 제품의 공통점은 자바스크립트는 물론 자바스크립트에 HTML과 CSS를 더한 것도 다룰 수 있다는 것이다. 그 결과 한발 뒤로 물러나 큰 그림을 보면, 복수 언어, 복수 OS 프로그래밍 편집기 중 최고에 속하는 것이 바로 서브라임 텍스트와 비주얼 스튜디오 코드다. 서브라임 텍스트는 편리한 편집 기능 못지않게 속도가 장점이고, 비주얼 스튜디오 코드는 서브라임 텍스트보다 기능은 훨씬 더 낫고 속도도 빠지지 않는다. 두 제품 모두 윈도우, 맥OS, 리눅스에서 사용할 수 있다.

비주얼 스튜디오 코드는 무료로 사용할 수 있으며 대부분 오픈소스다. 서브라임 텍스트는 평가판은 무료이나 코드는 저작권이 있으므로 지속적으로 사용하려면 80달러짜리 사용자 라이선스를 구매해야 한다. 99달러짜리 서브라임 통합 라이선스를 구매해야 할 수도 있다. 서브라임 텍스트(또는 통합) 라이선스를 구매하지 않고 사용하면 이따금 귀찮은 화면이 뜬다(보유한 컴퓨터마다 굳이 라이선스를 입력하지 않는 서브라임 텍스트 사용자는 필자만이 아니다. 귀찮은 화면은 쉽게 무시할 수 있다).

비주얼 스튜디오 코드의 특징
비주얼 스튜디오 코드(줄여서 VS 코드)는 가볍지만 강력한 소스 코드 편집기다. 데스크톱 컴퓨터에서 실행되며 윈도우, 맥OS, 리눅스에서 사용할 수 있다. 자바스크립트, 타입스크립트, Node.js 등의 지원 기능이 내장돼 있으며 닷넷, 유니티 등 런타임과 C++, C#, 자바, 파이썬, PHP, Go 등 다른 언어를 위한 확장프로그램 생태계가 풍부하다.

VS 코드는 변수, 메소드, 중요 모듈을 위한 인텔리센스 코드 완성 기능을 비롯해 그래픽 디버깅, 린팅, 멀티 커서 편집, 매개변수 힌트 등 강력한 편집 기능과 세련된 코드 탐색 및 리팩토링 기능, 깃 지원 등 내장 소스 코드 통제 기능 등을 갖추고 있다. 이 중 많은 부분은 VS에서 가져와 수정한 것이다.

엄밀한 의미에서 VS 코드는 일렉트론 셸, Node.js, 타입스크립트, 언어 서버 프로토콜을 이용해 구축되며 매달 업데이트 된다. 확장프로그램은 필요할 때마다 업데이트된다. 간단한 구문 강조에서부터 괄호 일치와 디버깅, 리팩토링에 이르기까지 지원의 풍부함은 다양한 프로그래밍 언어와 그 확장프로그램에 따라 달라진다. 사용할 수 있는 언어 서버가 없는 경우에는 텍스트메이트 컬러라이저를 통해 원하는 언어에 대한 기본 지원 기능을 추가할 수 있다.

VS 코드 저장소에 있는 코드는 MIT 라이선스의 오픈 소스이다. VS 코드 제품 자체는 표준 마이크로소프트 제품 라이선스로 출고된다. 일부 마이크로소프트만의 주문 제작 내용이 포함돼 있기 때문이다. 결과적으로 상용 라이선스가 됐지만 무료다.
 
비주얼 스튜디오 코드의 소스 코드를 비주얼 스튜디오 코드에서 열어본 화면. 함수의 개발자와 가장 최근의 개선사항을 볼 수 있다.

서브라임 텍스트의 특징
서브라임 텍스트는 유연하고 강력하며 확장 가능한 프로그래밍 텍스트 편집기로 속도가 매우 빠르다. 코드 확인과 디버깅, 배치 등을 위해 다른 창으로 전환하는 것을 개의치 않는 사람이라면 서브라임 텍스트를 즐겨 사용할 것이 틀림없다.

서브라임 텍스트에는 주목할 만한 장점이 많다. 자바스크립트, HTML, CSS 등을 비롯해 70가지가 넘는 파일 종류를 지원하고, 열 선택(파일의 직각 부분 선택)을 비롯한 복수 선택(여러 가지를 한꺼번에 변경), 복수 창(가진 모니터 전부 사용)과 분리 창(화면 면적 활용), 간단한 JSON 파일을 이용한 완벽한 사용자 정의, 파이썬 기반의 플러그인 API, 검색 가능한 통합 명령 팔레트, 강력한 깃 지원 등의 특징이 있다. 다른 편집기를 써 온 프로그래머를 위해 텍스트메이트 번들(명령어 제외)과 Vi/Vim 에뮬레이션을 지원한다.

서브라임 텍스트는 거의 모든 것을 사용자 정의할 수 있다. 색상 조합, 텍스트 글꼴, 전체 키 설정, 탭 정지, 파일별 키 설정과 정보는 물론 심지어 구문 강조 표시 규칙까지 직접 설정할 수 있다. 환경설정은 JSON 파일로 인코딩된다. 언어별 정의는 XML 환경설정 파일이다. 개발자 커뮤니티에서 활발하게 서브라임 텍스트 패키지와 플러그인을 만들고 관리한다. 처음에는 서브라임 텍스트에 부족하다고 생각했던 많은 기능이 있었다. 예를 들면, JSLint, JSHint 인터페이스, JsFormat, JsMinify, PrettyJSON 같은 것이다. 그러나 커뮤니티를 통해 패키지 인스톨러를 활용해 이를 보완할 수 있다.

서브라임 텍스트 장점 중 가장 두드러지는 것은 속도다. 탐색과 프로젝트 전환이 거의 즉각적으로 이루어진다. 다른 툴을 사용할 때는 일반적인 표현을 필요로 했던 성가신 편집 작업이 복수 선택과 열 선택 기능 덕분에 빨라졌다. 또한, 서브라임 텍스트의 반응 속도는 필자의 타자 속도를 늘 따라잡는다. 브리프(Brief)와 케디트(Kedit)와 같은 DOS 편집기 수준으로 즉각 반응한다.

서브라임 텍스트의 성능이 훌륭한 이유 중 하나는 야무지게 코딩이 되어 있기 때문이다. 또 다른 이유는 서브라임 텍스트는 IDE가 아니어서 IDE의 북키핑 오버헤드가 필요하지 않기다. 이런 점은 개발자 관점에서 봤을 때 단점이기도 하다. “레드, 그린, 리팩터”가 반복되는 테스트 위주의 빠듯한 개발 환경에서는 코드 커버리지를 추적하고 편집, 테스트, 리팩토링하도록 설정된 IDE가 가장 도움이 되기 때문이다. 반면, 코드 검토나 중요한 편집 작업을 하는 경우라면 최대한 빠르고 효율적인 편집기가 필요하다. 서브라임 텍스트가 딱 이런 필요에 맞는 편집기이다.
 
서브라인 텍스트는 자유롭게 설정할 수 있고 확장성이 뛰어난 텍스트 에디터다. 자바스크립트를 포함해 50개 이상의 문법을 지원한다.

어떤 것을 선택해야 할까?
비주얼 스튜디오 코드와 서브라임 텍스트 중 하나를 선택하는 것은 좋은 IDE와 좋은 편집기 중 하나를 선택하는 것처럼 간단하리라 생각할지 모르지만 사실은 약간 더 복잡하다. 왜냐하면, 원하는 수만큼의 IDE 기능을 갖도록 VS 코드를 구성할 수 있기 때문이다.

필자가 추천하는 방법은 비주얼 스튜디오 코드와 서브라임 텍스트를 둘 다 설치하고 둘 다의 명령행 유틸리티(code, subl)를 경로에 추가하는 것이다. 두 제품을 다 설치한다고 해서 실질적으로 불리한 점도 없다. 그렇게 한 달 정도 시간을 두고 프로그래밍 프로젝트를 열 때 2가지 제품을 번갈아 가면서 사용해 본 후 2가지 프로그램의 특성을 이해하고 나면 향후 계획에 따라 양자택일을 할 수 있을 것이다. 또한, 사용하는 프로그래밍 언어에 필요한 플러그인도 추가할 수 있다. 플러그인 설치를 미루는 것에는 최대한 늑장을 부린다.

필자 개인적으로는 디버깅이나 리팩토링이 필요하거나 10분 이상 걸리는 세션에서는 거의 비주얼 스튜디오 코드를 사용했다. 빨리 끝날 것 같은 편집 작업에는 서브라임 텍스트를 선택했다. 물론 사람마다 사용 방식이 다를 수 있고 선호도 역시 시간이 지남에 따라 달라질 수 있다. ciokr@idg.co.kr
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.