도찐개찐

개발툴 비교 VSCode VS JetBrains 본문

프로그래밍

개발툴 비교 VSCode VS JetBrains

도개진 2024. 2. 21. 17:13
 

VSCode vs Jetbrains – Revisited (Updated 2024) | Shade

It’s been about a year and a half since I’ve switched from the VSCode ecosystem. A lot of the stuff that is written below was indeed from the last year or so, so there have been some improvements.

www.shade.inc

전체 면책조항: 저는 JetBrains나 VSCode의 후원을 받지 않습니다. 이는 저의 솔직한 의견이며, 저희 팀의 정서를 바탕으로 한 것입니다.

 

필요하다면 나를 미쳤다고 불러주세요. 하나의 IDE에서 5년 동안 코딩을 하고 나면 VSCode를 떠날 생각이 없을 것이라고 생각할 것입니다 . 물론, JetBrains 생태계를 사용해보기 전에는 전적으로 동의했을 것입니다. VS Code가 (M1 Pro Mac과 마찬가지로) 시중의 다른 IDE보다 우수하다는 사실을 위해 싸우면서 왼쪽 신장도 바쳤을 것입니다. 일일 스탠드업 회의 중 하나에서 제 동료인 Emerson은 JetBrains 생태계에 대해 단호했고 우리 중 한 명이 한번 시도해 보도록 설득하기 위해 회의를 연장했습니다. 그리고… 나는 그것이 하나의 일이 될 것이라고 생각하면서 마지 못해 동의했습니다. 하지만 여러분도 모르시겠습니까? 저는 처음부터 제 곁에 있었던 IDE를 마침내 포기하게 된 이유에 대해 이 글을 쓰면서 지금 여기에 있습니다.

 

이제 2023년 9월로 넘어갑니다. VSCode 생태계에서 전환한 지 약 1년 반이 지났습니다. 아래에 적힌 내용 중 상당수는 실제로 작년 쯤에 나온 내용이므로 약간의 개선이 있었습니다. 그러나 대부분의 내 의견은 변함이 없습니다(몇 가지 눈에 띄는 좌절감을 제외하면).

편집자를 바꾸고 싶지만 JetBrains를 사용해 보는 것조차 주저하는 경우(VS Code는 무료이고 학생이 아닌 사용자를 위한 JetBrains는 그렇지 않기 때문입니다) 또는 그 이유만 관심이 있는 경우 내가 왜 그런 배신을 저질렀는지 읽어보세요! 이 기사는 VS Code와 JetBrains를 솔직하게 비교하고 JetBrains로 전환하는 것이 어떤 사람들에게 좋은 이유를 설명합니다.

 

1. 코드 검사 및 리팩토링

VS Code – 빠르고 쉬운 다국어 지원

VS Code는 이유 때문에 "편집기"로 간주될 수 있습니다. 거의 모든 프로그래밍 언어를 빠르고 쉽게 시작하고 실행할 수 있습니다. 그리고 저와 같은 풀스택 개발자에게는 이것이 큰 의미가 있습니다. API용 Python이나 프런트엔드용 javascript 사이를 전환하든, NextJS 반응 앱을 추가하든, Ruby on Rails 시스템을 설정하든 VS Code는 이러한 언어를 지원하고 Linting 등을 제공할 수 있습니다. 상자. 그리고 혹시라도 그럴 수 없나요? 글쎄, 그냥 확장 프로그램을 찾으세요!

 

또한 VS Code는 Github Copilot, AI 기반 린팅, 자동 가져오기 등과 같은 많은 새로운 확장 덕분에 뛰어난 린팅 기능을 제공합니다. 이제 원하는 것을 원할 때 원하는 것을 얻는 것이 그 어느 때보다 쉬워졌습니다. 마침표를 추가하기만 하면 *대부분의 경우* 내용이 팝업됩니다. 하지만 때로는 갑자기 그렇지 않을 때 매우 답답할 때가 있습니다. 사실, 나는 특정 linter가 왜 작동 하지 않는지 알아내려고 애쓰느라 수렁에 빠진  경우가 많습니다 . Anaconda를 통해 설치된 여러 Python 환경 때문인지, 설치되지 않은 패키지 누락 때문인지(대부분의 경우) 전혀 알 수 없습니다. 게다가 JavaScript 린팅도 일종의 멍청한 일입니다. VS Code는 Javascript 유형을 추론하려고 시도하지도 않습니다. 그러나 운 좋게도(그리고 기업 환경에서 개발하는 경우에도) TypeScript는 이러한 문제를 해결하므로 이러한 문제가 실제로 발생하지 않습니다.

 

2023년 9월 신규 참고 : 우리 팀은 최근 SQLite 백엔드로 전환했으며 특정 SQL 문을 개발해야 했습니다. 그럼에도 불구하고 SQL은 복잡한 언어가 아니며 정교한 Linting이 필요하지 않으며 VSCode의 SQL 지원(및 해당 플러그인)은 훌륭하지 않으며 입력 및 유효성 검사도 매우 열악합니다. 정교한 SQL 개발에는 이것을 권장하지 않습니다.

 

열악한 환경 일치로 인해 린팅이 깨졌습니다.

'pip install'을 사용해도 패키지가 기존 것으로 인식되지 않아 린팅이 깨졌습니다. 알고 보니 우리가 Python 환경을 변경하는 것을 잊어버렸기 때문이었습니다.

 

2023년 9월 업데이트: VSCode를 사용하면 환경의 변화를 좀 더 쉽게 감지할 수 있지만 시 환경 이나 쉬운venv생성

 

마지막으로 리팩토링에 대해 이야기해 보겠습니다. 내 생각에 VS Code는 편집자로서 리팩토링이라는 놀라운 작업을 수행한다고 생각합니다. 여기서 핵심 단어는 편집자입니다. 변수 이름 변경을 리팩토링하거나 파일을 이동하고 가져오기를 리팩토링할 수 있는 것은 훌륭합니다. 그러나 함수 이동, 명명된 매개변수 집합 변경, 추상 코드 출력 등의 작업을 수행하려는 경우 VS Code의 기능은 제한되어 있습니다. 운 좋게도 기본 리팩토링은 많은 사용 사례를 만족시켰으며 지난 5년 동안 학생으로서의 사용 사례 대부분을 충족시켰습니다.

 

JetBrains – 전문적이고 구체적이며 강력한 지원

JetBrains의 경우 이것은 불합리한 양의 설정을 갖춘 강력한 IDE입니다. 이 IDE를 처음 열었을 때 코드가 제대로 표시되도록 설정을 변경하는 데 한 시간 이상을 소비했습니다 . 그러나 익숙해지는 데 약간의 시간이 걸렸던 것은 다양한 사용 사례에 대해 서로 다른 IDE 간에 전환해야 한다는 것이었습니다. 갑자기 POST 요청이 작동을 멈추면 PyCharm을 열어 문제가 백엔드에 있는지 확인해야 합니다. 또는 갑자기 OPTTSP 출장 판매원 수업 프로젝트에 대한 더 나은 최적화가 생각난 경우 CLion도 로드해야 합니다. .

 

둘째, JetBrains 엔진의 성능은 일단 전환한 후에 놀라울 정도로 눈에 띄었습니다. Linting이 무작위로 나타나는 시대는 지나갔고 OCD를 유발하는 빨간색 선 중 일부가 사라지거나 실제로 유용한 것을 알려주기를 바라면서 `command+p -> reload windows`를 스팸으로 보내려고 했습니다. 대신, 일관되고 빠르게 반응하는 린팅을 갖는 것만으로도 완전히 신선한 공기를 마실 수 있게 되었습니다.

 

마지막으로 JetBrains에서 정말 눈에 띄는 점은 리팩토링 리팩토링 기능이었습니다. 지난주에 저는 비공개 베타 플랫폼 출시를 마무리하는 작업을 하고 있었습니다. 그 과정에서 향후 개발을 위해 확장성을 높일 수 있도록 새로운 구성 요소를 재구성하고 생성했습니다. 제 생각에는 전체적으로 200개가 넘는 구성 요소를 이동하고 분해했지만 중요한 문이나 유효하지 않거나 정의되지 않은 구성 요소로 인해 단일 컴파일 오류가 발생한 적이 한 번도 없었습니다. 대조적으로, 내 데이터 구조 클래스에 대한 내 프로젝트 중 하나에서 두 개의 파일을 재구성하면 전체 cpp 코드가 손상되어 일부 가져오기 및 기능을 수동으로 변경해야 했습니다. 또한 안전 삭제, 전역 이름 변경 등과 같은 JetBrain의 광범위한 리팩토링 도구 덕분에 제가 사용할 수 있는 것보다 더 많은 도구를 갖게 되었습니다.

 

2023년 9월 이후 업데이트 : 저는 이것이 JetBrains의 가장 중요한 부분이라고 계속해서 말합니다. 리팩토링, git 병합 충돌 및 거의 모든 종류의 대규모 검색 기능이 완벽합니다. JetBrains의 향상된 검색 기능과 자동 이름 변경을 사용하여 상당한 양의 문제를 해결했습니다.

훌륭한 리팩토링 뷰

 

9월의 추가 업데이트: 하지만 이에 대한 주의 사항이 있다는 점을 말씀드리고 싶습니다. 첫째, JetBrains의 경우 대규모 저장소를 인덱싱하는 데 시간이 상당히 깁니다. 실제로 완전히 인덱싱된 항목(Python 및 전자 프런트엔드 모두)을 얻으려면 10~15분이 걸립니다. 이번에는 IDE를 완전히 사용하는 데 매우 실망스럽습니다. 특히 캐시와 .idea폴더가 삭제된 경우.

 

비교

전반적으로 이 두 환경은 특징과 기능면에서 비슷하다고 말하고 싶습니다. 둘 다 견고한 자동 린팅 및 서식 지정 기능을 갖추고 있으며 사용자 정의 가능한 다양한 색상과 흔들기를 추가하여 코드를 디버깅하고 더 효과적으로 시각화하는 데 도움을 줍니다. 그러나 JetBrains의 완벽하게 일관된 린팅 엔진과 깨지지 않는 리팩토링 프로세스가 결합되어 있으므로 코드 팩터링과 리팩토링이 귀하와 귀하의 워크플로에 중요하다면 JetBrains를 반드시 추천할 것입니다.

 

2. 디버깅

VS Code – 거의 모든 것을 디버그합니다.

VS Code 디버깅의 장점은 확장성이 뛰어나다는 것입니다. 왼쪽 표시줄의 실행 버튼을 누를 때마다 VS 코드는 디버깅 속성이 포함된 'settings.json'이 포함된 '.vscode' 디렉터리를 생성합니다. Python 또는 JavaScript 디버깅과 같은 대부분의 언어의 경우 VS Code가 디버깅을 모두 처리하고 환경이 올바르게 설정되었다고 가정하면 디버깅은 해당 버튼을 클릭하는 것만 큼 쉽습니다. 또한 `settings.json` 파일로 이동하여 디버깅 중인 내용을 변경하는 것도 매우 쉽습니다. 이제 ` 및 `clang`을 설정하면 복잡성이 높아지는 C++ 또는 C와 같은 빌드 특정 언어 또는 플랫폼 특정 언어를 사용할 때 더 복잡해집니다. 이러한 파일을 디버깅하는 기능을 설정하는 것은 매우 귀찮고 시간이 많이 걸립니다. 나는 현재 프로젝트가 작동하도록 하기 위해 이전 `settings.json`을 복사하는 데 많은 시간을 보냈습니다. 하지만 디버깅을 처리하기 위해 이 'settings.json'을 터치해야 한다는 사실 자체가 약간 실망스럽습니다.

 

VSCode의 settings.json

 

이제 실제 디버깅, 중단점 배치, 변수 식별, 감시자 추가와 관련하여 VS Code는 디버그 콘솔에서 아름답게 처리됩니다. 하지만 측면 패널이 아닌 코드 오버레이에서 직접 변수 값을 볼 수 있으면 좋을 것 같습니다.

 

운 좋게도 VS Code의 아름다운 점은 광범위한 언어에 대한 확장 및 지원을 통해 모든 사람이 일반적으로 몇 분은 아니더라도 몇 초 안에 디버깅을 설정할 수 있다는 것입니다. 디버깅은 사소한 디버깅 및 소규모 사례에 대해 훌륭한 작업을 수행하지만 특정 언어의 경우 VS Code 디버깅이 중단됩니다. 그러나 나는 또한 더 큰 힙 크기(즉, 재귀 또는 단순히 큰 함수 호출)가 필요하다는 사실을 알아차리는 경향이 있었고, 디버거는 런타임에 더 많은 어려움을 겪고 충돌하는 것 같습니다.

 

JetBrains – 디버깅 괴물

반면, Jetbrain의 모든 IDE는 구성 기반 실행을 기반으로 구축되었으므로 `debug` 버튼을 누르면 디버그 세션을 시작할 수 있습니다. 줄 번호 옆의 공백을 누르기만 하면 IDE에서 전역적으로 중단점을 설정할 수 있습니다. 모든 디버깅 프로세스에 대한 이러한 즉각적인 설정은 설정 경험 자체를 놀랍게 만듭니다. IDE는 실제 디버깅 중에도 빛을 발합니다. 디버깅 세션에서는 범위에 정의된 모든 변수가 해당 정의에 의해 표시됩니다. 이를 통해 클릭만으로 값을 매우 쉽게 볼 수 있습니다. 며칠 전 Pycharm에서 디버그를 실행하고 데이터프레임의 값을 보려고 시도했을 때 깊은 인상을 받았습니다. 데이터프레임 변수를 클릭하고 '데이터프레임으로 보기'를 누르면 Pycharm은 SciView에서 데이터프레임을 열고 모든 데이터프레임 값과 열 헤더를 표시했습니다.

 

위 스크린샷에서 범위의 모든 로컬 값은 하단 창에서 볼 수 있습니다. 'history_and_returns' 옆의 드롭다운에는 사전의 모든 속성 값과 해당 사전에 중첩된 데이터프레임이 표시됩니다. 오른쪽에는 Pycharm이 이미 'SciView'로 사전에 중첩된 동일한 데이터프레임을 표시하고 있습니다. 인쇄 문이나 스택 추적을 설정하지 않고도 코드에 대한 이러한 수준의 통찰력을 얻는 것은 매우 유용합니다. 모든 값이 편집기의 할당 옆에 바로 투영되면 루프에서 결함이 있는 논리를 찾고, 인덱싱 오류를 수정하거나, 기타 전통적으로 추상적인 추론을 수정하는 것이 얼마나 쉬운지 상상할 수 있습니다.

 

다른 많은 디버거와 마찬가지로 JetBrains도 코드를 단계별로 실행하는 기능을 제공합니다. 여기에는 다음 줄로 이동하는 고전적인 단계나 추가로 조사하려는 기능으로 들어가는 단계가 포함됩니다. 매우 유용한 기능은 'Run to Cursor'로, 추가로 조사하려는 줄에 커서를 놓는 것만으로 또 다른 중단점처럼 느껴지는 것을 설정할 수 있습니다. JetBrains 디버거가 즉시 설정되고 통합된 경험을 제공하는 기능은 제가 코딩하는 방식을 완전히 바꾸고 개발 속도를 가속화했습니다.

 

9월 이후 업데이트: Jetbrains 디버깅을 통해 특히 여러 스레드 디버깅, 잘못된 입력 디버깅, 단계별 실행 및 콘솔 항목 실행과 관련된 시간을 절약할 수 있었습니다. 이는 매우 귀중한 도구였으며 VSCode와 비교하면 완전히 다른 수준에 있습니다.

 

비교

디버깅은 개발자로서 우리가 매일 수행하는 가장 일반적인(그리고 분노를 불러일으키는) 일 중 하나이기 때문에 이것이 많은 개발자에게 필수적인 기능은 아니지만 중요하다고 말해야 합니다. 두 IDE 환경 모두 매우 견고한 디버깅 환경을 제공하지만 여기서는 JetBrains가 VS Code를 약간 앞지른다고 말씀드리고 싶습니다. 특히, JetBrains가 선언된 변수 바로 옆에 변수 데이터를 표시하면 수많은 변수가 있는 곳에서 변수 내부 값을 추적하기가 훨씬 더 쉬워집니다. 더욱이 VS Code에서 'settings.json'(때때로 대신 'cout' 또는 'printf' 문을 사용하게 됨)과 같은 복잡한 설정이 필요하지 않은 JetBrains의 더욱 강력하고 안정적인 디버거는 최고의 선택이었습니다. 맨 위. 이러한 요소들이 합쳐져 하루 중 약간의 추가 시간을 절약하고 JetBrains를 더욱 매력적으로 만드는 데 도움이 됩니다.

 

3. Git Integration

VS Code – 강력한 소스 제어 내장

팀으로 작업하거나 코드를 안전한 곳에 저장하는 데 관심이 있는 사람(코드가 실행되지 않을 때 컴퓨터를 창 밖으로 던질 경우를 대비해)은 작업 흐름에서 git이 얼마나 중요한지 알고 있습니다. Git 버전 제어는 이제 모든 최신 코드 편집기에서 거의 필수적입니다. VS Code는 이를 잘 수행합니다. VS Code는 초기 git 저장소를 자동으로 감지하고 푸시, 풀, 커밋 등 사용 가능한 많은 고유 git 명령을 즉시 제공합니다.

 

VS Code의 git 패널에서 변경 사항을 쉽게 동기화하고 어떤 변경 사항이 적용되었는지 확인할 수 있습니다. 또한 브랜치를 생성하고 저장소를 복제할 수도 있습니다(이 중 일부는 더 많은 곳에 숨겨져 있지만). VS Code에서 제가 가장 좋아하는 점은 무엇을 해야 할지 알려준다는 것입니다. 변경 사항을 커밋하라는 메시지를 즉시 알려주고 변경된 모든 파일을 감지하여 메시지를 커밋할 수 있습니다. 또한 진행하면서 변경 사항을 확인하고 동기화합니다. 로컬 분기와 원격 분기를 감지하고 견고한 리베이스 기능을 갖추고 있습니다.

 

병합 충돌이 인라인으로 발생하는 위치를 쉽게 확인

 

VS Code를 눈에 띄게 만드는 것 중 하나는 병합 충돌을 처리하는 기능입니다. VS Code 편집기에 내장된 병합 충돌 해결 기능을 사용하면 버튼을 눌러 현재 변경 사항을 유지하거나 들어오는 변경 사항을 처리할 수 있습니다. 그리고 저를 믿으세요. 덕분에 시간이 너무 많이 절약되었습니다.

 

9월 업데이트: 불행하게도 VSCode보다 JetBrains를 더 많이 사용해 본 후에는 VSCode의 git 연결이 JetBrains에 비해 강력하지 않다는 점을 말씀드리고 싶습니다. 더 중요한 것은 JetBrains가 제공하는 가장 유용한 도구는 라인별 도구로 git blame, 이를 통해 우리 팀의 디버깅, 커밋 간 변경 사항 식별 등의 작업이 많이 절약되었습니다. VSCode Git은 통과 가능하지만 확실히 완전한 솔루션은 아닙니다.

 

JetBrains – 다시는 터미널을 사용하지 마세요

전환한 이후로 터미널을 거의 만지지 않았습니다. JetBrains는 끌어오기 요청 병합, 충돌 해결, 브랜치 전환 및 비교의 완전한 통합을 제공하므로 소스 제어는 VS Code에서 경험한 것보다 훨씬 더 좋습니다. 다음과 같은 일반적인 작업 중 일부를 수행한 경험을 살펴보세요.

Nice 병합 충돌 및 해결
분기 및 체크아웃 내장, 뛰어난 동기화 기능
Git 역사와 Git 비난

 

비교

Git 통합 기능 측면에서 이러한 환경은 기본적으로 기능 측면에서 동일합니다. 나는 그들이 기본적으로 동일한 기능을 제공하며 어느 쪽이든 잘못될 수 없다는 것을 발견했습니다. 나는 이것이 단지 개인적인 취향에 달려 있다고 말하고 싶습니다. 예를 들어, 저는 인터페이스가 서로 겹쳐 쌓이는 대신 나란히 배치되어 병합 충돌이 해결되는 방식으로 JetBrains 방법을 선호합니다. 결국 결정적인 요소는 아닙니다.

 

4. 확장성

VS Code - 다양한 확장 기능

Visual Studio Code는 가장 확장 가능한 편집기 중 하나입니다. 통합 및 확장은 VS Code 편집기의 핵심입니다. 최고의 선택에는 Python 확장, 원격 개발 확장 및 기타 여러 IntelliSense 기반 확장이 포함됩니다. VS Code에는 Prettier를 통한 코드 서식 지정, 아이콘을 통한 테마 지정, 코드 편집기 테마 등 멋진 기능도 있습니다. VS Code가 제공하는 거의 모든 단일 항목/기능은 완전히 확장 가능하며 프로세스를 강화할 수 있는 확장 기능이 많이 있을 수 있습니다.

 

제가 가장 좋아하는 것 중 하나는 원격 도커 컨테이너 지원입니다. 이를 통해 사용자는 VS Code를 사용하여 Docker 컨테이너 자체에서 원격으로 프로그래밍할 수 있습니다. Docker가 로컬 또는 원격으로 설치되어 있는 경우 코드를 쉽게 실행하고 Docker에서 수행해야 하는 모든 작업을 간단히 vscode에서 수행할 수 있습니다. 좀 더 흥미로운 내용을 원하시나요? SSH를 통한 원격 개발을 확인해 보세요. Microsoft를 사용하면 평소와 마찬가지로 서버의 개발 환경 및 프로그램에 원격으로 SSH를 연결할 수 있습니다. 여기에 있는 이러한 모든 기능 덕분에 VS Code는 단 한 번의 클릭만으로 완전히 작동할 수 있기 때문에 틀림없이 최고의 편집기 중 하나가 됩니다.

 

JetBrains – 심층적인 통합 생태계 …그러나 아마도 필요하지 않을 것입니다

확장성은 JetBrains IDE가 반드시 빛을 발할 필요는 없는 영역입니다. 이는 주로 필요한 모든 것이 IDE와 함께 제공되는 경우가 많기 때문입니다. 귀하의 언어에 맞는 강력한 기능을 갖춘 특정 IDE를 설치할 수 있다는 이점을 통해 VS Code에 설치하는 데 사용할 수 있는 통합이 소프트웨어와 함께 제공된다는 것을 발견했습니다.

 

예를 들어 JetBrains에는 docker와의 강력한 내장 통합이 있습니다. 'Dockerfile'과 같은 구성 유형만 지정하면 모든 JetBrains IDE는 사용하기 쉬운 구성 GUI에서 모든 인수, 이름, 태그, 포트, 환경 변수를 완벽하게 제어할 수 있습니다. 실행 시 IDE는 Docker 통합과 통합되어 빌드 로그, 실행 로그, 환경 변수, 읽기 쉬운 통합 구성 설정을 제공합니다.

 

FastAPI, Flask, 쉘 스크립트 등과 같은 다른 많은 일반 서비스에서도 마찬가지입니다.

 

JetBrains IDE에는 풍부한 플러그인 생태계도 있습니다. 예를 들어 Verilog에 대한 전체 언어 지원을 제공하는 플러그인과 Matlab에 대한 전체 지원을 제공하는 다른 플러그인을 설치할 수 있었습니다. 아이러니하게도 이러한 경량 JetBrains 플러그인은 기본 Matlab 또는 Quartus(Verilog) 환경보다 더 나은 코딩 경험을 제공했습니다.

 

9월 업데이트: 저는 Jetbrains용 플러그인 몇 개만 사용합니다. 1. GitHub Copilot, 2. VSCode Keybindings(VSCode 배경에서 왔기 때문에) 그게 전부입니다! JetBrains가 이미 갖고 있는 모든 것.

 

비교

의심할 바 없이 두 가지 모두 광범위한 커뮤니티와 마켓플레이스를 보유하고 있어 안정적이고 맞춤 제작된 확장/플러그인을 다양하게 얻을 수 있습니다. 각각의 IDE가 처리할 수 없는 기능은 대부분 핵심 기능에 추가할 수 있을 것입니다. 그러나 VS Code(및 Microsoft의 지원)에 대한 약간 더 큰 커뮤니티 기반을 통해 더 많은 확장과 삶을 변화시키는 Remote-Containers 확장(적어도 저에게는)을 통해 훨씬 더 빠르게 반복할 수 있었습니다. Docker와 같은 사용자 지정 확장이 필요할 수 있는 매우 사용자 지정 코드로 작업하는 경우 VS Code가 확실히 IDE입니다.

 

5. 협업

VS Code – 확장을 통한 실시간 공유

VS Code 자체에는 라이브 공유가 내장되어 있지 않지만 Microsoft는 거의 즉각적인 라이브 공유를 허용하는 라이브 공유 확장 기능을 만들었습니다. 이 기능이 뛰어난 이유는 누구에게나 필요한 것은 VS Code뿐이라는 점입니다. 실제로 이제 vscode.dev를 사용하여 브라우저에서 직접 실시간 공유도 가능합니다. 인터넷 연결이 양호하다면 실제 라이브 공유 프로세스 자체는 정말 훌륭합니다. 사용자는 서로를 팔로우하고 함께 코드를 편집할 수 있습니다. VS Code는 소스 제어에 대한 커밋 작성을 도운 사람도 추적합니다. 이 모든 것을 염두에 두고 실시간 공유를 설정하는 것이 얼마나 간단한지 살펴보겠습니다. VS Code는 이 분야의 거의 모든 IDE 및 편집기보다 뛰어납니다.

 

몇 가지 주의 사항이 있습니다. 한 가지 예는 Vue.js 실시간 공유입니다. Vue를 실시간 공유할 때 Vue 시각화에 중요한 Vetur를 포함하여 일부 확장 기능이 전파되지 않습니다. 이것은 때때로 매우 어렵고 틀림없이 짜증나게 만들지만, 이것은 특정 청중에게 매우 특정한 것이라고 생각합니다(따라서 Vue 사용자는 주의하세요). 또한 실행 취소 기능이 사용자가 아닌 컴퓨터에 연결되는 방식이 정말 싫습니다. 방해만 하고 혼란을 야기할 뿐입니다.

 

JetBrains – 보안 및 분산

모든 JetBrains IDE는 코드를 다른 사람과 공유하고 실시간으로 협업할 수 있는 다양한 옵션을 제공합니다. 이러한 옵션은 제공되는 보안 수준에 따라 다릅니다. 최근에 제가 발견한 인상적인 기능은 프로젝터를 사용하여 Docker 컨테이너 내에서 JetBrains IDE를 실행하는 것이었습니다. 이를 통해 클라우드와 같은 서버에서 호스팅되는 JetBrains IDE에 연결한 다음 웹 브라우저 내에서 전체 JetBrains 기능을 사용하여 코딩할 수 있습니다. 이제 비밀번호만 있으면 헤드리스 서버 어디에서나 안전하게 코딩할 수 있습니다. 이는 많은 공유 옵션 중 하나일 뿐입니다.

 

JetBrains IDE를 공유하는 보다 일반적인 방법은 Code With Me를 사용하는 것입니다. 이를 통해 다른 사람의 프로젝트를 귀하의 IDE에서 직접 볼 수 있고 그들의 개발 환경을 마치 귀하의 컴퓨터에 있는 것처럼 사용할 수 있습니다. 제가 인상깊었던 점 중 하나는 팀원이 Python 문제를 겪고 있어 Code With Me 세션을 쉽게 시작했다는 것입니다. 기본적으로 구성을 실행할 수 있었고, 위에서 보여준 것과 동일한 통찰력으로 디버거를 사용한 다음 문제를 쉽게 해결할 수 있었습니다.

 

IDE를 공유하는 다양하고 잘 통합된 방법은 보안, 협업 또는 분산된 팀과의 작업 방식을 최적화하려는 사람들에게 놀라운 것입니다.

 

2023년 9월 업데이트: 나와 함께 코딩하는 것은 단연코 함께 코딩하는 최악의 방법 중 하나입니다. VSCode는 장기적으로 JetBrains를 파괴합니다. 다른 개발자와 원격으로 적극적으로 협력하려는 경우 LiveShare에만 VSCode를 사용하는 것이 좋습니다. 왜? JetBrains CodeWithMe에는 참여하는 사람에 대한 일관된 입력이나 Linting이 없기 때문입니다. 실제로 저는 Python이나 TypeScript Linting이 없는 곳에서 수없이 개발을 했기 때문에 개발이 거의 불가능했습니다.

 

비교

2023년 9월 업데이트: 이전 결론은 여기에 남겨 두겠습니다. 그러나 여기서는 VSCode가 JetBrains를 크게 파괴한다는 점을 말씀드리고 싶습니다. 애초에 라이브 공유 코딩을 권장하지는 않지만 개발 및 공유가 쉽고 VS Code 작업 시간이 JetBrains에 비해 훨씬 빠르다는 점을 말씀드리고 싶습니다. CodeWithMe 클라이언트 및 자주 실패하는 작업에 사용됩니다.

 

2023년 9월 – Jetbrains에 대한 가장 큰 좌절

이 기사를 마무리하기 전에 JetBrains를 30% 정도 진지하게 다시 생각해보고 싶게 만드는 한 가지 문제를 언급하고 싶습니다. 바로 메모리 소비입니다.

 

Jetbrains는 엄청난 양의 메모리를 차지합니다. 특히 프런트엔드와 백엔드를 모두 실행하는 경우 JetBrains에 의해 지속적으로 8GB 이상의 RAM이 필요하며 때로는 최대 16GB에서 20GB에 이르기도 합니다. 이전에는 JetBrains가 파일을 캐시하고 GB의 저장소(때로는 Docker 컨테이너보다 더 많은 용량)를 차지하는 7월 버그도 있었습니다. 다행히 패치가 되었습니다. 

 

반면에 VSCode는 200-400MB만 차지합니다. 이는 속도와 컴퓨터 사양에 있어서 중요한 차이입니다. 저처럼 32BG RAM이 장착된 M1 또는 M2 Mac을 사용하고 있다면 이는 그다지 큰 문제가 아닐 수도 있지만, 컴퓨터를 항상 빠르게 유지하는 것을 강조한다면 말이죠. JetBrains는 귀하에게 적합하지 않을 수도 있습니다. 이로 인해 컴퓨터 속도가 몇 번 느려졌습니다. 

 

이것이 JetBrains IDE에서 겪는 가장 큰 문제입니다. JetBrains IDE는 메모리 효율성이 낮고 엄청난 양의 메모리를 잡아먹습니다. JetBrains가 앞으로 몇 달, 몇 년 동안 이 문제를 개선할 수 있기를 바랍니다.

 

 

이제 이러한 요소 외에도 저는 VS Code 무료 IDE 반면 JetBrains 상당히 높은 가격표를 제공하므로 여러분  일부를 외면할 수도 있다는 것을 알고 있습니다(학생에게는 무료입니다). 하지만 저에게는 지난   동안 JetBrains 생태계의 일부에 합류하는 것이 정말 즐거웠으며 계속해서 JetBrains 생태계와 협력하고 싶습니다입장료가 다소 비싸더라도   시도해 보시길 바랍니다.

728x90
Comments