Rust는 프로그래밍의 미래인가?
Rust는 빠르게 성장하는 프로그래밍 언어로서 현대 소프트웨어 개발의 규칙을 다시 쓰고 있습니다. Rust는 탁월한 성능, 가비지 컬렉션이 없는 메모리 안전성, 동시성 기능으로 전 세계 개발자들의 주목을 받고 있습니다. 당사 데이터에 따르면 지난 12개월 동안 2,267,000명의 개발자가 Rust를 사용했으며 그 중 709,000명은 이를 기본 언어로 사용한다고 답하는 등 프로그래밍 업계에서 Rust의 입지가 빠르게 확대되고 있습니다. 이러한 상승세의 배경은 무엇일까요? 과연 C++를 대체하게 될까요?
최근 개발자 에코시스템에 관한 설문조사에서는 몇 가지 흥미로운 추세를 확인할 수 있습니다. Rust는 새로운 사용량 기록을 세운 유일한 언어이고 Go 개발자 6명 중 1명이 전환을 고려하고 있습니다. 이 글에서 이러한 인사이트를 자세히 살펴보고, Rust의 미래를 진단하며, 개발자들이 오늘날 가장 어려운 소프트웨어 과제를 해결하기 위해 이 언어를 채택하는 이유를 알아보겠습니다.
Rust를 어떤 용도로 사용하시나요?
2024년 여전히 개인적 및 사이드 프로젝트가 사용 사례의 주류를 이루고 있지만 점차 많은 개발자들이 업무 관련 솔루션 및 기업 솔루션에서 Rust의 가치를 발견하고 있습니다.
“개인적으로 가장 큰 변화는 업무에서 Rust의 사용이 크게 증가했다는 것입니다. 2021년부터 2024까지 Rust를 상업적으로 사용하는 Rust 개발자의 비율은 68.75% 올랐습니다. Rust 개발자의 수 자체가 늘어나면서 업계 전반에 복합적인 영향이 나타나고 있습니다.
Rust가 업계에서 빠르게 채택되고 있는 모습이 저에게는 특히 흥미롭습니다. 2018년 JetBrains 개발자 설문조사에 따르면 그해 개발자 중 단 2%만이 Rust를 사용했습니다. 2018년이면 불과 6년 전입니다.
지금은 모든 Python 및 JavaScript 개발자들이 uv 및 turbopack 등 중요한 프로젝트를 통해 Rust를 접하면서 생산성을 높이고 있습니다.
업계에서 Rust의 채택이 확산되면서 취미용 프로젝트에 사용하는 사례는 자연스럽게 줄어들 것입니다. 일할 때 사용하는 언어를 여가 시간에도 사용하고 싶지는 않을 테니까요.”

Rust를 얼마나 오랫동안 사용하셨나요?
새로운 개발자가 꾸준히 유입되어 커뮤니티가 확장되면서 Rust 커뮤니티는 역동성을 유지하고 있습니다. 신규 사용자와 숙련된 사용자가 균형을 이루면 장기적으로 에코시스템이 건강해질 수 있습니다.
“Rust를 접하면서 정말 좋았던 점 중 하나는 전문가들이 친절하게 도움을 주려고 한 것입니다. 우리도 전문가가 되어 똑같이 도와줍시다!”

Rust를 업무에 사용하는 개발자의 코딩 경험
대다수의 전문가들은 이미 상당한 경력과 다양한 코딩 배경을 가지고 있기 때문에 Rust가 개발자의 첫 프로그래밍 언어인 경우는 드뭅니다. Rust를 채택하는 노련한 개발자의 수가 늘고 있다는 것은 복잡한 시스템에서 이 언어의 신뢰성과 견고성을 보여주며, Rust가 다른 언어에서 전환하려는 숙련된 전문가들에게 매력적인 선택이 되고 있음을 말해줍니다.
“Rust는 점점 더 쉬워지고 있으며 수명을 신경 쓰지 않고 계속 사용할 수 있습니다. 대다수의 사람에게 ‘생애 첫’ 언어로 추천하고 싶지는 않지만 C와 C++의 첫 언어 수업을 대체할 수는 있을 것 같습니다.
Rust 구문을 처음 접할 때는 여전히 거부감이 들 수 있지만, “와, 이건 진짜 다르네”라는 단계를 지나 계속 사용해 본 사람들은 대부분 이 언어를 좋아하더군요.
Rust의 가장 큰 장점 중 하나는 멀티 패러다임으로, 누구나 편하게 사용할 수 있다는 것입니다.”

업무에 Rust를 가장 많이 사용하는 상위 10개 산업
Rust는 클라우드 컴퓨팅, 데이터 분석, AI, 임베디드 시스템 등 수요가 많고 혁신을 주도하는 여러 분야에서 많이 활용되고 있습니다. 고성능과 시스템 신뢰성이 요구되는 분야에서 채택되고 있다는 사실은 이 언어가 가진 강점을 잘 보여줍니다.
“Rust는 AI 경쟁에서 다크호스입니다. 연구자와 데이터 과학자만 선택하는 언어가 아니라 더 큰 규모의 모델을 트레이닝하는 데 필요한 많은 인프라에 사용됩니다.

전문가들이 Rust와 함께 사용하는 언어
데이터에 따르면 Rust가 단독으로 사용되는 경우는 거의 없으며, Rust만 사용하여 작업하는 개발자의 비중은 2024년에 급격히 감소했습니다. Rust는 점차 다중 언어 환경에 통합되는 추세이며 2024년에 가장 많이 함께 사용된 언어는 Python 및 JavaScript/TypeScript입니다. 개발자들이 풀스택 또는 인프라 중심의 프로젝트를 관리하면서 Shell 스크립팅 언어와 SQL도 꾸준히 Rust와 함께 사용되고 있습니다.
흥미롭게도 C++ 및 C와 같은 저수준의 언어도 Rust와 함께 많이 사용되고 있으며, 이는 시스템 수준 프로그래밍 영역에서 중첩되기 때문인 것으로 보입니다. 하지만 Python 및 JavaScript/TypeScript의 사용이 늘어난 것은 지금까지의 시스템 니치를 벗어나 Rust의 응용 범위가 더욱 폭 넓어졌음을 시사합니다.
“저는 ‘C 또는 C++ 사용자에게 Rust’를 가르치면서 ‘수년간 사용하던 C를 버리고 전부 다시 작성하는’ 프로젝트가 성공하는 것을 본 적이 없습니다. 타깃 언어가 아무리 훌륭해도 완전히 갈아엎는 식의 업그레이드는 끔찍하죠. 이 둘은 오랫동안 공존할 것으로 예상됩니다. “문제가 없으면 바꾸지 말라”라는 태도는 나쁘지 않습니다. 하지만 유서 있는 코드를 이식하는 것보다 성능이 더 좋은 새로운 코드를 사용하는 것이 더 효과적입니다!”

어떤 언어에서 마이그레이션하셨나요?
대부분의 개발자는 다른 프로그래밍 언어를 Rust로 완전히 바꾸지 않습니다. 즉, 완전한 대체물이 아닌 보완 기술로서 이 언어를 채택하고 있다는 의미입니다.
2024년에 특정 언어에서 이전해 온 경우를 보면 C++가 가장 많이 대체된 언어였습니다. 이는 Rust가 기존 시스템 수준의 도구를 대체할 더 안전한 현대적 도구로 인정받고 있음을 보여줍니다. 이와 함께 Python, C 및 Go도 언급된 것을 보면 스크립팅부터 시스템 프로그래밍까지 Rust가 여러 영역에 걸쳐 경쟁할 수 있는 가능성이 엿보입니다.
“Rust가 점차 독립적인 위치를 차지하고 있습니다. 얼마나 많은 사람들이 첫 프로그래밍 언어로 Rust를 접하고 있을까요?”

Rust 개발에 어떤 IDE 또는 에디터를 사용하시나요?
Rust 커뮤니티는 확실히 가볍고 현대적인 IDE와 에디터를 선호하며 그 중에서도 Visual Studio Code가 최고의 선택지로 입지를 지키고 있습니다. 이는 Visual Studio Code가 여러 업계에서 폭넓게 사용되고 있고, rust-analyzer와 같은 확장 프로그램으로 Rust를 지원하는 것과 맥락이 닿아 있습니다.
흥미롭게도 Rust를 위해 특별히 설계된 JetBrains IDE인 RustRover는 2024년에 출시되어 즉시 커뮤니티의 주목을 받았는데, 이는 전문화된 도구에 대한 요구가 커지고 있음을 반영합니다. 사용자 지정 가능하거나 모든 기능을 갖춘 IDE를 선호하는 사용자에게는 Vim 및 IntelliJ IDEA Ultimate과 같은 기존 옵션이 여전히 선호됩니다.
이에 반해 Eclipse 및 Sublime Text와 같은 도구의 채택이 미미한 것을 보면 Rust용 기능에 중점을 둔 에디터와 IDE로 전환하는 추세를 재차 확인할 수 있습니다.
“수명 주기 시각화 같은 기능은 정말 큰 도움이 됩니다. 저는 다른 JetBrains 환경에 익숙하기 때문에 Rust Rover를 바로 설치했지만 VS Code도 괜찮은 선택입니다. rust-analyzer는 매우 탁월한 언어 서버니까요.”

Rust 코드는 다른 코드와 어떻게 상호 운용되나요?
Rust는 강력한 상호 운용성 덕분에 다른 언어로 작성된 코드 베이스와 통합하기에 좋습니다. 가장 일반적인 통합 방법으로 REST API가 가장 많이 사용되며, 이는 웹 개발과 백엔드 서비스에서 Rust가 얼마나 사용되고 있는지 보여줍니다. 언어의 상호 운용성(외부 함수를 통한)이 탁월하다는 것은 Rust가 C 및 C++와 같은 시스템 프로그래밍 언어와도 함께 자주 사용된다는 것을 의미합니다.
WebAssembly/WASI와 같은 부상하는 기술은 Rust가 이식 가능한 현대적 컴퓨팅 요구 사항을 어떻게 충족하는지 보여줍니다. 한편, RPC에서도 특히 고성능 통신이 필요한 분산 시스템에 도입하고 있습니다.
“다른 언어와의 상호 운용성은 특히 브라운필드 프로젝트에서 Rust가 업계에 도입되는 데 매우 중요한 요소입니다. 네트워크, FFI, WASM 등 사용 사례에 맞다면 무엇이든 선택할 수 있어 마찰이 최소화됩니다.”

일반적으로 Rust 코드를 어떻게 디버그하시나요?
Rust 개발자들은 단순하고 실용적인 디버그 도구를 많이 사용합니다. 특히 개발 초기 단계에 프로그램의 동작을 추적하는 가볍고 직접적인 접근 방법으로 println!
과 dbg!
매크로 사용을 많이들 선호합니다. IDE에서 UI 디버그도 널리 사용되며, 이는 Rust에 맞춤화된 개발 도구가 성숙해지고 있음을 보여줍니다.
gdb
또는 lldb
와 같이 다소 전통적인 콘솔 기반 디버거는 저수준 시스템 프로젝트로 작업하는 개발자들이 사용하는 경향이 있습니다. 디버그를 아예 하지 않는다고 답한 응답자는 4%에 불과하며, 이는 Rust의 엄격한 컴파일 타임 보장을 처리하기 위해 대부분의 개발자가 강력한 디버그 방식을 적극적으로 사용하고 있음을 시사합니다.
“저는 println!으로 디버그하고 정말 방법이 없을 때만 IDE 디버거를 사용합니다.”

Rust에 사용하는 프로파일링 도구가 있다면 무엇인가요?
개발자의 70%가 어떤 프로파일링 도구도 사용하지 않는다고 보고할 만큼 프로파일링은 Rust 에코시스템에서 사용이 미미한 영역으로 남아 있습니다. 프로파일링을 수행하는 개발자 중에서는 IDE에 번들로 포함된 프로파일러를 가장 많이 사용하며, 이는 개발 환경과 긴밀하게 통합된 도구가 선호된다는 사실을 보여줍니다. perf, gprof 및 Callgrind/Cachegrind와 같은 저수준 프로파일러는 채택률이 저조하며 대부분 성능이 중요한 시스템 프로젝트에 참여하는 개발자들이 사용합니다.
“Rust를 일상적으로 사용하면서도 프로파일링은 여전히 고민스러운 부분입니다. 기존 프로파일링 도구의 사용자 환경은 최적화와 거리가 멀기 때문에 IDE가 이러한 간극을 점차 메워줘서 참 좋습니다.”

Rust로 어떤 종류의 프로젝트를 개발하시나요?
Rust는 시스템 및 네트워크 프로그래밍과 같은 전통적 분야에서 많이 활용되고 있지만 웹, 데스크톱 애플리케이션을 비롯해 임베디드 시스템, 머신러닝, 블록체인과 같은 새로운 분야로도 점차 확대되고 있습니다.
“Rust에 주목하는 이유는 에코시스템마다 다릅니다. 클라우드 네이티브 환경에서는 인프라 비용 절감과 정확성 때문에 Rust를 채택하려고 하고, CLI에서는 이식성 때문에, 시스템 프로그래밍에서는 메모리 안전성 때문에 이 도구를 사용합니다.
진정한 범용 프로그래밍 언어라고 할 수 있죠.”

Rust를 사용하기 시작한 이유는 무엇인가요?
안전성, 성능 및 현대적 언어를 배운다는 도전이 개발자들을 Rust로 끌어들이는 매력인 것 같습니다. 점차 업계 핵심 언어로 인식되고 있다는 점 또한 경력을 위해 채택하는 이유입니다.
“제대로 풀리지 않는 C++ 프로젝트 때문에 골치를 앓고 나니 잘 나가는 젊은 친구들은 어떤 작업을 하고 있는지 알고 싶더군요.”

Rust를 배우기 위해 어떤 자료를 이용하셨나요?
Rust는 복잡하기 때문에 이 언어를 배우는 기초로 공식 문서를 이용하고 서적과 다른 온라인 리소스를 참고하는 경우가 많습니다. 공식적이거나 회사에서 제공하는 교육이 많지 않기 때문에 Rust를 대부분 독학이나 커뮤니티를 통해 배우는 것 같습니다.
처음 시작하는 분들은 Rust 학습 방법에 관한 블로그 글을 읽어보세요.
“Rust를 시작할 때 학습 자료가 부족하지는 않다는 것만큼은 확실합니다!
중급 및 고급 주제를 다루는 자료는 아직 부족하지만 매년 나아지고 있습니다.”

2024년 Rust의 성장은 최신 소프트웨어 개발의 기초 언어로서의 위상이 커지고 있음을 보여줍니다. 업무 환경에서 채택이 늘어나고 있을 뿐만 아니라 시스템 프로그램, 웹 개발, 임베디드 시스템 같은 다양한 산업에서 승승장구하면서 Rust는 더 이상 단순한 시스템 언어가 아니라 다재다능한 커뮤니티 주도형 언어로 자리 잡았습니다. 개발자들은 안전성, 성능 및 현대적 기능에 끌려 Rust를 선택하고, 신규 개발자와 숙련된 전문가 모두에게 환영받고 있습니다.
부족한 도구나 가파른 학습 곡선 등의 문제는 여전히 풀어야 할 숙제로 남아 있지만 활기 넘치는 Rust 커뮤니티와 강력한 에코시스템이 이 언어의 발전을 힘차게 견인하고 있습니다. 열정적 개발자와 성장하는 채택률을 원동력으로 삼아 Rust는 소프트웨어 엔지니어링의 미래를 그리고 더 안전하고 빠르며 확장 가능한 솔루션을 만들 수 있는 길을 열어주고 있습니다. Rust의 미래는 밝으며 그 상승세는 꺾일 기미가 보이지 않습니다.
게시물 원문 작성자
Subscribe to Rust Blog updates
- Rust를 어떤 용도로 사용하시나요?
- Rust를 얼마나 오랫동안 사용하셨나요?
- Rust를 업무에 사용하는 개발자의 코딩 경험
- 업무에 Rust를 가장 많이 사용하는 상위 10개 산업
- 전문가들이 Rust와 함께 사용하는 언어
- 어떤 언어에서 마이그레이션하셨나요?
- Rust 개발에 어떤 IDE 또는 에디터를 사용하시나요?
- Rust 코드는 다른 코드와 어떻게 상호 운용되나요?
- 일반적으로 Rust 코드를 어떻게 디버그하시나요?
- Rust에 사용하는 프로파일링 도구가 있다면 무엇인가요?
- Rust로 어떤 종류의 프로젝트를 개발하시나요?
- Rust를 사용하기 시작한 이유는 무엇인가요?
- Rust를 배우기 위해 어떤 자료를 이용하셨나요?