Visual Studio Code
(♥ 0)
통합 개발 환경에 대한 내용은 Visual Studio 문서 참고하십시오.
1. 개요[편집]
Microsoft에서 개발한 텍스트 에디터로, 2015년 4월 29일에 소개되고 2016년 4월 15일에 1.0.0 정식판이 발표되었다.
Electron 프레임워크를 기반으로 만들었다. Visual Studio Team Services(현 Azure DevOps)에 있던 웹 에디터를 발전시켜 Electron 프레임워크를 통해 로컬에서 쓸 수 있게 만든 것에서 출발했다. MS의 개발 툴 중 최초로 크로스 플랫폼을 지원하는 에디터이며 윈도우, macOS, 리눅스를 모두 지원한다.
GitHub에서 배포되는 소스 코드는 MIT 라이선스하에 배포되는 오픈 소스지만, 실제로 공식 사이트에서 배포되는 릴리즈 바이너리는 마이크로소프트의 독자적 라이선스(EULA의 일종)하에 배포되는 것으로 오픈 소스가 아니다. 릴리즈 바이너리는 공개된 소스코드에 MS 자체 추적기 코드를 추가하고 브랜딩을 변경한 뒤[1] 만들어진다.
대부분 사용자들은 개인적으로 소스 코드를 빌드하여 사용하지 않고 릴리즈 바이너리를 다운로드받아 설치하므로 마이크로소프트의 독자적 라이선스 하에 VS Code를 사용하고 있다. 따라서 사실상 이중라이선스가 병존한다고 할 수 있다. MS의 추적기가 걱정이라면 소스코드에서 브랜딩만 변경해 제공하는 VSCodium 프로젝트를 사용할 수 있다.
2. 시스템 요구 사항[편집]
3. 기능[편집]
자체 터미널 기능이나 언어에 따른 신택스 컬러링을 지원한다는 것을 빼면 여타 다른 프로그래머용 에디터와 큰 차이가 없지만 확장 기능이라는 가장 큰 강점을 가지고 있다. 단순 에디터를 넘어 IDE 수준까지 확장할 수 있는 것이 특징으로 Microsoft의 공식 문서에서도 이러한 확장 기능을 사용한 사용 예제를 제공하고 있다. Visual Studio Code - Getting Started
그 예로 Visual Studio Code는 IDE가 아니므로, 빌더가 내장되어 있지 않아 VS Code에서 빌드를 하려면 별도의 컴파일 환경을 구축해야 한다. 예를 들어 Windows에서 C/C++ 코드를 컴파일하고 싶을 경우 C/C++, C/C++ Compile Run[2] 2개의 확장을 깔고 TDM-GCC를 설치하여서[3] 단순 컴파일이 가능한 환경부터, Microsoft에서 공식적으로 제공하는 CMake 플러그인인 CMake Tools와 함께 사용하면 의존성 관리, Intellisense와 같은 자동완성, 디버깅, 테스트, 배포까지 한번에 가능한 IDE로도 사용이 가능하다.
데이터 사이언스 및 머신러닝용 기능에 대한 지원도 강력하다. 아예 Jupyter Notebook 클라이언트를 자체 내장하고 있어[4] 바로 이용할 수 있으며, Variable Explorer 등 편리한 기능을 다수 제공한다. 머신러닝 학습 모니터링 툴인 Tensorboard 또한 확장 프로그램을 통해 지원한다. 이들은 모두 웹 기반 앱인데, VS Code 자체가 웹 기술 기반의 에디터라서 굉장히 매끄럽게 지원되는 것을 볼 수 있다.
이러한 개발 환경 관련 확장 기능은 마이크로소프트에서 직접 개발하고 관리하는 물건들이 많고 위의 C/C++나 Java, PostgreSQL, React, Arduino, K8s, Python-Jupyter, TypeScript등과 같은 개발 환경 확장까지 가능하다. (
publisher:"Microsoft"
)xterm.js 기반의 터미널을 자체 내장하고 있어서 별도로 터미널 창을 열 필요가 없다. 게다가 코드 치는 연습만 한다고 하면 가벼운 이쪽이 더 유리하다. 비주얼 스튜디오와 동일한 인텔리센스를 지원하는 덕분이다. 그 기원답게 Git 연동을 직접 지원하며 TFS 연동은 확장을 설치하면 가능하다. 작업 디렉토리에 git init만 되어 있으면 별도의 설정 없이 자동으로 연동되어 커밋 관리나 알록달록한 diff 등을 편리하게 이용 가능하다.
Windows 버전에서는 왼쪽 하단의 녹색 버튼을 클릭하면 WSL 환경에 접속하여 코드 편집을 할 수 있다.Your development environment
바이너리 파일에 대한 HEX 편집도 공식 플러그인을 통해 지원한다. #
4. 역사[편집]
초기에는 웹과 클라우드 기반 프로그램의 개발 및 디버깅을 주된 타겟으로 만들어졌으며, Sublime Text나 Atom이 있는데 굳이 이걸 왜 쓰겠냐는 우려가 많았다. 그러나 마이크로소프트 제품 중 유례가 없을 정도로 정말 빠르게, 자주, 그리고 많이 업데이트를 하여 플랫폼을 막론하고 호평받는 범용 코드 에디터가 되었다. 해외에서는 마소를 대놓고 싫어하는 사람들도 VS Code만큼은 인정하는 분위기일 정도로 호평이 많다. 급기야 우분투 18.04 버전은 설문조사 결과를 반영하여 기본 에디터를 이걸로 선정하기까지 했다.
확장 기능의 수도 굉장히 많고, 이를 통해 다양한 종류의 언어를 지원하여 사실상 준 IDE급의 위치에 도달했다. IDE의 강점 중 하나인 디버깅 기능도 VS Code는 에디터 차원에서 지원한다. 물론 태생이 텍스트 편집기라서 IDE만큼 편리하지는 않다. 비주얼 스튜디오에 버금가는 방대한 플러그인 생태계 역시 강점이라고 할 수 있다.
2015년 11월 18일 베타 버전으로 격상되었다. 동시에 GitHub에 코드가 오픈 소스로 풀렸다. 소스 자체는 MIT 라이선스로 공개되어 있으나 MS 상표 등이 포함되어 있는 실제 릴리즈(바이너리)는 독점 소프트웨어 겸 프리웨어이다. 크로뮴과 구글 크롬의 관계와 유사하다.[5] 커뮤니티에서 문제가 되는 부분을 제외한 순수 오픈 소스 버전을 VSCodium이라는 이름으로 배포하고 있다.[6][7] 2016년 4월 15일에 1.0으로 버전업됨과 동시에 정식 버전으로 격상되었다. 그리고 한국어, 러시아어, 중국어(간체/번체), 일본어, 프랑스어, 이탈리아어, 독일어, 스페인어 지원이 추가되었다. #
2018년 Stack Overflow 설문조사에서 쟁쟁한 타 개발 도구들을 누르고 인기도 1위를 차지하였다.
마이크로소프트가 GitHub을 인수함에 따라 프로그램의 기반이 되는 Electron 프레임워크까지 MS의 소유가 되었다. 덕분에 똑같이 Electron으로 개발한 Atom의 위치가 대단히 오묘해졌다. 결국 Atom은 2022년 12월 지원 종료.
워낙에 인기 있는 에디터가 되다 보니, 요즘에는 어지간한 리눅스 배포판에서는 전부 snap, flatpak, appimage 등을 통해 쉽게 설치할 수 있도록 해 놨다. 굳이 유명한 배포판이 아니라도 쉽게 설치 가능하게 된 것. 물론, 오픈 소스이므로 배포판 관리자들이 직접 컴파일한 버젼을 패키지 매니저에서 발견할 수도 있다. 이 경우에는 보통 Code로 불린다.
2021년 10월 20일, 웹 버전으로도 나왔다. 서비스 주소는 https://vscode.dev/. Github 홈페이지에서는 아예 웹 버전 vscode 숏컷을 만들어 놓았는데, 로그인한 후 아무 Github 레포지토리 페이지에서 .(마침표) 키를 누르면 해당 레포지토리가 웹 버전 Visual studio code에서 열려 훨씬 편하게 코드를 탐색할 수 있다.
컴퓨터 내에 SSH만 있으면 언제 어디서나 컴퓨터에 접속해서 프로젝트를 할 수 있다.
5. 기타[편집]
- 나무위키의 기본 문서 편집기로 VS Code를 웹에서 구동시킬 수 있게 해주는 Monaco Editor를 사용하고 있다.
- 윈도우용 Git도 기본 텍스트 에디터로 VS Code를 선택할 수 있다. 언리얼 엔진은 4.18 버전부터, 유니티 엔진은 5.5 버전부터 VS Code를 지원한다.
- 캐시가 매우 큰 용량을 차지하는 편이다. 몇번 실행만해도 수백MB, 오래 사용하면 수십GB 용량으로 늘어난걸 볼 수 있다.
- VSC가 MIT 라이선스 하에 있다는 것을 악용하여 이를 노골적으로 표절한 중국 IDE가 존재한다. 관련 Github Issue
이 문서의 내용 중 전체 또는 일부는 2024-08-10 18:31:40에 나무위키 Visual Studio Code 문서에서 가져왔습니다.
[1] Visual Studio 로고나 명칭은 오픈 소스가 아니므로 저장소의 소스코드에는 별도 로고나 명칭이 사용중이다.[2] thread같은 것을 구동하기 위한 옵션을 지정하긴 힘들지만 여러 언어에 범용적으로 사용 가능한 Code Runner라는 플러그인을 대신 써도 된다.[3] Visual Studio의 C/C++ 컴파일러인 Visual C++(cl.exe) 컴파일러를 대신 사용할 수도 있지만 Visual Studio Build Tools는 Visual Studio의 라이센스를 소유하고 있는 사용자에게만 사용이 허가된다. Visual Studio Community의 사용 가능 환경을 초과하는 (상업용도로 5인을 초과하는) 환경에서는 라이센스 위반이 되므로 주의가 필요하다.[4] 기존에는 확장 기능으로 지원하다가 자체 내장으로 변경[5] 오픈소스에서는 이런 일은 흔하다. 소스가 오픈되어 있더라도 상표권 등이 걸리기 때문에 전체를 포크해서 문제되는 부분만 제외한 뒤 재배포하는 것.[6] VS Code와 대부분의 기능은 동일하나, Remote SSH, Remote WSL 등의 MS의 사유 프로그램 확장을 설치 시 정상적으로 작동하지 않는다.[7] 자체적인 확장 리포지토리를 사용하기 때문에 일부 확장이 누락되어 있을 수 있다. VSCodium에서 작동이 불가능한 확장은 제외되어 있기 때문이다. 게다가 비주얼 스튜디오 마켓플레이스의 이용약관에 따르면 마켓플레이스는 자사 제품 (비주얼 스튜디오, 비주얼 스튜디오 코드, 깃허브 코드스페이스 등)에서만 쓸 수 있도록 명시되어있다. 이 약관을 어기고 MS의 마켓플레이스에 접속하려면 이곳을 참고해서 설정을 변경할 수 있다.