JetBrains는 특화된 통합 개발 환경(IDE) 분야에서 명성이 높습니다. 최근 선보인 RustRover는 바로 Rust 프로그래밍 언어에 특화된 IDE입니다.
Rust 언어 자체는 물론 Cargo, 웹 기술, TOML, 데이터베이스 등 광범위한 기술을 지원합니다.
현재 공개 프리뷰 버전으로 제공되는 이 기능 풍부한 IDE는 상용 버전 출시를 앞두고 있습니다. Rust 프로젝트 관리에 필요한 코드 편집기, 컴파일러, 디버거, 테스트 도구, 디버깅 및 배포 기능 일체를 제공합니다.
이제 RustRover의 세계로 함께 들어가 볼까요?
전용 IDE란 무엇이며, JetBrains는 왜 만들었을까요?
전용 IDE는 특정 언어에 최적화된 기능들을 제공합니다. RustRover의 경우, Rust 프로그래밍 언어만을 위한 기능이 제공됩니다. 이는 여러 프로그래밍 언어를 지원하는 Visual Studio Code와 같은 다중 언어 IDE와 차별됩니다.
JetBrains는 특정 언어에 특화된 IDE를 만드는 것으로 유명하며, RustRover는 그 연장선상에 있습니다. Rust 언어가 점차 인기를 얻고 있으며, 버그 없는 프로그래밍을 위한 강력한 모델을 제공하는 고급 언어라는 점은 분명합니다.
기존의 Rust 오픈 소스 플러그인은 어떻게 될까요? JetBrains의 공식 블로그에 따르면, 플러그인은 계속 유지됩니다. CLion에서 플러그인을 사용 중이라면 상용 RustRover IDE를 설치하지 않고도 계속 사용할 수 있습니다.
참고 자료: Rust 학습을 위한 최적의 자료
RustRover: 핵심 기능 살펴보기
현재 RustRover는 얼리 액세스 프로그램(EAP)으로 제공되어 누구나 다운로드하여 사용해 볼 수 있습니다. 지금부터 RustRover를 설치하는 방법과 초기 사용 경험에 대해 이야기해 보겠습니다.
RustRover 미리보기 버전 설치하기
RustRover를 설치하려면 먼저 공식 웹사이트에서 최신 프리뷰 버전을 다운로드해야 합니다. RustRover: JetBrains의 Rust IDE에서 다운로드하세요. 다운로드가 완료되면 화면에 나타나는 지침에 따라 설치를 완료하면 됩니다. Windows 사용자의 경우, 설치 마법사가 상세하게 안내해 줄 것입니다.
설치 과정에서 사용자의 필요에 맞게 설정을 구성할 수 있습니다. PATH 변수를 업데이트하여 명령줄에서 Rust를 쉽게 실행할 수 있으며, .rs 파일 연결 생성, 상황에 맞는 메뉴 업데이트(프로젝트로 폴더 열기), 바탕 화면 바로 가기 생성 등의 기능도 제공됩니다.
그 다음, 몇 번의 “다음” 클릭과 약간의 시간을 투자하면 설치가 완료됩니다.
참고: 사용 전에 JetBrains 개인정보 처리방침에 동의해야 합니다.
깔끔한 인터페이스와 뛰어난 사용자 정의 기능
RustRover는 꼭 필요한 기능만 갖춘 깔끔한 인터페이스를 제공합니다. 기본 인터페이스에서 새 프로젝트를 만들거나 기존 프로젝트를 열고, Git, Mercurial, Subversion과 같은 버전 관리 시스템(VCS)에서 프로젝트를 가져올 수 있습니다.
이 깔끔한 인터페이스는 JetBrains의 새로운 UI에서 영감을 받아 방해 요소를 최소화하고 생산성을 높입니다. 도구에 쉽게 접근하는 동시에 코드 작업에 집중할 수 있도록 설계되었습니다. 또한 새로운 UI는 매우 사용자 정의가 가능합니다.
GitHub, GitHub Enterprise, JetBrains Space 계정을 추가할 수도 있습니다.
또한, 다양한 옵션을 제공하는 멋진 사이드 메뉴도 있습니다. 예를 들어, 현재 작업 중인 프로젝트 목록을 볼 수 있습니다. 또한, 원격 개발(현재 베타 버전)에 액세스할 수 있는 전용 공간도 마련되어 있습니다.
SSH, JetBrains Space, WSL을 포함한 원격 개발 옵션에 접근할 수 있습니다.
플러그인을 사용자 정의하고 학습할 수 있는 옵션도 제공됩니다.
여기서는 “Customize” 옵션에 주목할 필요가 있습니다. RustRover는 기본적으로 제한된 색상 테마를 제공합니다(고급 설정을 통해 마켓플레이스에서 더 많은 테마를 이용할 수 있습니다). 다크 모드나 “Dracula”라는 유사한 색상 모드를 설정할 수 있습니다.
“OS와 동기화” 기능을 사용하면 모든 설정을 일괄적으로 동기화할 수 있습니다. 예를 들어, OS에서 밝은 테마를 사용 중이라면 RustRover도 자동으로 밝은 테마로 변경됩니다.
접근성 옵션을 통해 글꼴 크기를 조정하거나 적록색맹에 대한 색상 설정을 조정할 수 있습니다. 또한, Windows, Emacs, NetBeans, Visual Studio Code와 같은 사전 설정을 활용하여 키맵을 원하는 대로 설정하여 처음부터 설정할 필요 없이 RustRover를 빠르게 시작할 수 있습니다.
RustRover의 고급 설정
RustRover의 설정 옵션이 제한적이라고 생각하기 전에 “모든 설정”을 확인해 보세요. 여기에서 RustRover를 상세하게 맞춤 설정할 수 있는 다양한 옵션을 찾을 수 있습니다. 모양과 동작을 변경할 수 있는 섬세한 옵션들이 제공됩니다.
Rust 고급 설정에서 할 수 있는 다양한 작업은 다음과 같습니다.
- UI 옵션 활성화/비활성화
- 새로운 UI 활성화/비활성화
- 메뉴 및 도구 모음 사용자 정의
- 파일 색상 설정
- 영역 설정
- 알림, 빠른 목록, 경로 변수 설정
- 키맵 사용자 정의
- 마켓플레이스에서 직접 테마 설치
- 프로젝트 기반 버전 관리 설정
- 빌드, 실행, 배포 설정 변경
- 언어 및 프레임워크 구성
타사 통합을 위한 도구도 제공됩니다. Rsync, Code With Me, 터미널, 데이터베이스, SSH 터미널 등이 있습니다.
JetBrains 계정에 모든 설정을 저장하는 설정 동기화 기능도 있습니다. 여기에는 UI, 시스템 및 코드 설정, 플러그인, 키맵 및 도구 백업 등이 포함됩니다.
RustRover 주요 기능
이제 RustRover의 주요 기능을 자세히 살펴보겠습니다.
#1. 더 빠른 코딩
Rust 코드를 작성하려면 신중한 사고 과정이 필요합니다. Rust는 소유권 모델을 따르기 때문에 코드를 작성할 때 주의해야 합니다. RustRover는 코드를 더 빠르게 작성할 수 있는 탁월한 기능을 제공하여 작업 속도를 향상시켜 줍니다. 이러한 기능은 다음과 같습니다.
- 라이브 템플릿
- 코드 자동 완성
- 스마트 리팩토링
- 즉각적인 빠른 수정 및 분석
- 코드 생성
이러한 기능들은 복잡한 프로젝트를 작업할 때 매우 유용합니다. 예를 들어, 가져오기 및 누락된 필드와 같은 세부 정보를 추가하거나 코드 전체에서 관련 이름을 자동 완성하여 코딩 속도를 높일 수 있습니다.
RustRover는 또한 코드에 일련의 검사를 적용하여 빠른 수정 방법을 제안합니다. 이러한 빠른 수정은 문제를 자동으로 해결하는 효과적인 방법입니다.
#2. 구문 강조, 코드 검색 및 탐색
훌륭한 구문 강조 기능을 통해 코드를 쉽게 읽고 이해할 수 있습니다. 구문 강조 표시를 사용하면 변수, 함수, 블록, 유형, 매크로 등 코드의 다양한 부분을 식별할 수 있습니다. 또한 인라인 힌트를 통해 완벽한 유형 정보를 얻을 수 있으므로 코드를 쉽게 탐색할 수 있습니다.
RustRover는 또한 코드베이스 전체에서 원활한 탐색 기능을 제공합니다. 빠른 강조 표식을 통해 코드 검색을 수행할 수 있습니다.
#3. 빠른 문서 접근
RustRover에서 Rust로 코딩할 때 문서에 빠르게 액세스하여 많은 시간을 절약할 수 있습니다. 또한 코드베이스를 더 잘 이해하는 데 도움이 됩니다. 문서 접근이 빈번해야 하는 광범위한 코드베이스에서 특히 유용합니다.
#4. 플러그인 마켓플레이스
현대적인 IDE는 훌륭한 마켓플레이스를 제공합니다. RustRover 또한 수천 개의 플러그인 중에서 선택할 수 있는 플러그인 마켓플레이스를 제공합니다. 이러한 플러그인은 사용자 정의 기능을 추가하고 통합 옵션을 제공합니다.
예를 들어, RustRover에서 직접 Kubernetes 작업을 하려면 Kubernetes 플러그인을 설치해야 하며, Vim을 선호한다면 Vim 엔진에 액세스할 수 있는 IdeaVim을 설치하여 RustRover가 Vim처럼 작동하도록 만들 수 있습니다.
#5. 뛰어난 VCS 지원/팀 협업
RustRover는 팀 협업을 염두에 두고 설계되었습니다. VCS를 완벽하게 지원하여 팀 협업을 설정할 수 있습니다. Git/GitHub, Mercurial, Subversion을 연결할 수 있습니다. 또한 팀과 실시간으로 작업할 수 있는 협업 JetBrains 기능인 Code With Me를 사용할 수도 있습니다.
프로젝트 구성을 공유하여 다른 사람이 협업을 시작하기 전에 프로젝트 환경을 설정하는 데 도움을 줄 수도 있습니다.
#6. 프로젝트 및 종속성 관리
RustRover를 사용하면 프로젝트 및 관련 종속성을 쉽게 관리할 수 있습니다. Cargo, Cargo.toml 및 빌드 스크립트를 완벽하게 지원합니다.
IDE에서 직접 버전을 업데이트하고 더 나은 프로젝트 관리를 위해 외부 도구에 쉽게 액세스할 수 있습니다. 또한 문서에 빠르게 액세스하여 종속성을 관리할 수 있습니다.
#7. 웹 지원
RustRover를 사용하면 Rust로 웹 애플리케이션을 만들 수 있습니다. 여기에서 HTTP 클라이언트, Docker, 데이터베이스 및 기타 프런트엔드 기술에 액세스할 수 있습니다. 이러한 지원을 통해 웹 프로젝트를 쉽게 설정할 수 있습니다.
HTTP 클라이언트를 사용하면 HTTP 요청을 보내고 응답을 분석할 수 있으며, Docker를 사용하면 프로젝트 및 구성 요소를 손쉽게 관리할 수 있습니다.
#8. 테스트 및 디버깅
RustRover는 완벽한 테스트 및 디버깅 옵션을 제공하여 환경을 떠나지 않고도 작업을 완료할 수 있도록 해줍니다. 여기에서 테스트 실행을 쉽게 수행할 수 있으며, 다양한 플랫폼을 대상으로 벤치마킹을 실행할 수도 있습니다.
테스트를 간편하게 할 수 있도록 전체 CLI 앱 개발 지원과 함께 설정을 실행할 수도 있습니다.
결론 – RustRover는 이상적인 Rust IDE일까요?
RustRover는 뛰어난 Rust IDE입니다. 공개 프리뷰 버전을 통해 제공되는 기능만 봐도 이 IDE의 잠재력을 엿볼 수 있습니다. 따라서 지금이 RustRover가 상용화되기 전에(2024년 9월 예정) 미리 사용해 볼 수 있는 좋은 기회입니다. RustRover는 다른 JetBrains 제품과 마찬가지로 구독 모델로 제공될 예정입니다.
하지만 Rust 지원 기능을 제공하는 오픈 소스 플러그인은 계속 사용할 수 있으며, 앞으로는 상업용 RustRover 릴리스에 집중할 것으로 예상됩니다.
참고 자료: 최고의 Rust 서버 호스팅 공급업체