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.
并排对比
| 特性 | Perry | React Native |
|---|---|---|
| Execution | LLVM ahead-of-time machine code | JavaScript through Hermes in most applications |
| UI | Perry UI mapped to platform widgets | React renderer plus host/native components |
| Primary mobile platforms | iOS, iPadOS, visionOS, Android, Wear OS, watchOS, tvOS | Core documentation centers on iOS and Android; additional platforms use ecosystem projects |
| Ecosystem | Pre-1.0 Perry packages and native APIs | Established React Native and Expo ecosystem |
| Compatibility | Practical subset; optional V8 fallback | Hermes/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.