返回对比页
跨平台 UI

Perry vs React Native

React Native normally runs JavaScript through Hermes and renders host-platform views through its renderer and native-component system. Perry compiles supported TypeScript through LLVM and statically links its runtime and GC. React Native is much more mature; Perry offers a different AOT and target model.

技术事实和测量说明以英文为准,以避免不同翻译之间出现偏差。

什么是 React Native?

React Native's current documentation says most applications use Hermes, an open-source JavaScript engine optimized for React Native. Fabric and native components connect React code to host-platform views, widgets, and controllers.

什么是 Perry?

Perry parses TypeScript and JavaScript with SWC and compiles supported code ahead of time through LLVM. Native builds do not require an external Node.js installation or JavaScript engine, but they do statically link the Perry runtime and garbage collector. Perry is pre-1.0, implements a practical language and Node.js subset, and offers an optional embedded V8 fallback for code that needs engine semantics.

并排对比

特性PerryReact Native
ExecutionLLVM ahead-of-time machine codeJavaScript through Hermes in most applications
UIPerry UI mapped to platform widgetsReact renderer plus host/native components
Primary mobile platformsiOS, iPadOS, visionOS, Android, Wear OS, watchOS, tvOSCore documentation centers on iOS and Android; additional platforms use ecosystem projects
EcosystemPre-1.0 Perry packages and native APIsEstablished React Native and Expo ecosystem
CompatibilityPractical subset; optional V8 fallbackHermes/React Native JavaScript environment

Perry 胜出之处

  • +AOT native machine code for supported TypeScript
  • +No JavaScript engine in native output by default
  • +Declared wearable, TV, desktop, and Web/WASM target model

React Native 胜出之处

  • +Far larger production ecosystem
  • +Mature React and Expo tooling
  • +Broad library and community support
  • +Deeply developed iOS and Android workflows

何时选择 Perry

Choose Perry when its AOT model, target set, and validated widget/API coverage fit the application.

何时选择 React Native

Choose React Native when ecosystem maturity, Expo, community libraries, and established iOS/Android production workflows are decisive.

结论

Perry's architecture is unusual; React Native's ecosystem is the safer default for many mobile teams today. Validate Perry when its AOT output or target reach solves a specific product constraint.

资料来源

试用 Perry

今天就把你的 TypeScript 编译为原生代码。

开始使用