Rust 언어는 성능, 안전성 및 동시성 기능으로 유명하며 표준 라이브러리에 직접적인 그래픽 사용자 인터페이스(GUI) 도구가 포함되어 있지 않지만 커뮤니티에서는 개발을 지원하기 위해 여러 가지 고품질 타사 라이브러리를 개발했습니다. GUI 애플리케이션을 만듭니다. 다음은 널리 사용되는 Rust GUI 프레임워크 및 도구입니다.
타우리:
Tauri는 백엔드 로직에 Rust를 사용하는 동시에 프런트엔드 기술(예: React, Vue, Angular 등)을 사용하여 사용자 인터페이스를 구축할 수 있는 더 작고, 빠르고, 안전한 데스크톱 애플리케이션을 구축하기 위한 프레임워크입니다.
웹 기술을 기반으로 하지만 애플리케이션을 기본 애플리케이션으로 패키징하여 기본 애플리케이션에 가까운 성능과 사용자 경험을 제공합니다.
친애하는 ImGui:
이는 특히 게임 개발, 데이터 시각화, 실시간 제어 및 기타 시나리오에 적합한 실시간 모드 그래픽 사용자 인터페이스를 생성하기 위한 라이브러리입니다.
C로 작성되었지만 Rust 커뮤니티에서는 이미 좋은 바인딩(예: imgui-rs), Rust 프로젝트에서 Dear ImGui를 사용하는 것이 매우 편리해졌습니다.
플러터(데스크톱 지원):
Flutter는 주로 모바일 및 웹 앱 구축을 위한 프레임워크이지만 이제는 데스크톱 앱도 지원합니다.
Flutter는 Dart 언어를 사용하지만 Rust 커뮤니티에는 실험적인 바인딩과 도구(예: flutter-rs), 공식적으로 지원되는 다른 언어만큼 성숙하지 않을 수도 있습니다.
에귀:
Egui는 Dear ImGui에서 영감을 받아 즉시 모드 GUI용으로 설계된 간단하고 사용하기 쉬운 Rust GUI 라이브러리입니다.
신속한 프로토타이핑과 소규모 프로젝트에 적합한 명확하고 간결한 API를 제공하는 데 중점을 둡니다.
지오/Gtk-rs:
Gtk-rs는 널리 사용되는 크로스 플랫폼 GUI 툴킷인 GTK용 Rust 바인딩입니다.
Gtk-rs를 사용하면 Rust 개발자는 GTK의 풍부한 기능과 생태계를 활용하여 복잡한 데스크탑 애플리케이션을 구축할 수 있습니다.
Linux, Windows 및 macOS를 지원합니다.
드루이드:
Druid는 선언적 데이터 기반 인터페이스 제공을 목표로 하는 Rust로 작성된 크로스 플랫폼 GUI 프레임워크입니다.
단순성과 성능을 강조하여 고성능 인터페이스가 필요한 애플리케이션에 이상적입니다.
위닛:
Winit은 창 생성, 이벤트 처리(예: 키보드 및 마우스 이벤트) 및 창 수명 주기를 위한 기본 기능을 제공하는 하위 수준 창 생성 및 처리 라이브러리입니다.
Egui와 같은 더 높은 수준의 GUI 프레임워크의 기초로 자주 사용됩니다.
선택할 Rust GUI 프레임워크 또는 도구는 프로젝트 유형(게임, 데이터 시각화, 일반 데스크톱 애플리케이션 등), 대상 플랫폼(Windows, macOS, Linux 또는 크로스 플랫폼)과 같은 특정 요구 사항에 따라 다릅니다. 귀하의 성능 요구 사항. 각 프레임워크에는 고유한 장점과 제한 사항이 있으므로 선택하기 전에 각 옵션에 대한 문서와 예제를 주의 깊게 연구하는 것이 좋습니다.