UniFFI 란?

CharlieMoon·2026년 5월 11일
post-thumbnail

개요

UniFFI 는 Mozilla에서 Rust 라이브러리를 대상으로 하는 외부 언어에 대한 바인딩을 자동으로 생성해주는 도구이다. 이 도구는 여러 플랫폼을 대상으로 하면서도 비즈니스 로직을 단일 Rust 라이브러리에서 통합하는 방식을 지지한다. 크로스 플랫폼 코드베이스의 개발 및 유지보수를 간소화 할 수 있다. 이걸 사용한다고 해서 해당 플랫폼에 Rust 라이브러리를 배포할 수 있는건 아니지만 바인딩 코드를 직접 작성하는 수고를 덜어준다.

목적

Rust 언어로 한번만 작성하고 다양한 플랫폼과 언어에서 쉽게 재사용 할 수 있도록 하기 위함.

아키텍쳐

UniFFI 프로스저 매크로 또는 UDL(WebIDL) 파일을 통해서 인터페이스를 정의하도록하고 이 정의는 대상 언어에서 사용할 수 있는 메서드와 데이터 구조를 설명하며 Rust 스캐폴딩코드와 외부언어 바인딩을 생성하는데 사용된다.

지원언어

공식지원 언어

  • Kotlin
  • Swift
  • Python
  • Ruby

서드파티 지원

  • C#
  • Golang
  • Dart
  • Java
  • JavaScript
profile
산만한 개발자의 노트

0개의 댓글