React Native 是什麼?
- 2013 年夏天 Facebook 內部駭客松的 project
- 2015 年 1 月 React.js Conf 發表, 2015 年 5 月正式發佈,當時只有 IOS 版本,2015 年 9 月 Android 才正式支援
- Learn once, write anywhere: Build mobile apps with React
- iOS
- Apple TV
- Android
- 用 JavaScript 撰寫真正的原生 App,不是所謂的 mobile web app、HTML5 app、 hybrid app
特色
- 使用同一套專案 Code Base 即可達成跨平台 App 開發建置與維護。
- 效能與使用體驗接近原生開發。
- 採用與 Web 前端相同的 REST API / JWT 存取後端資料服務。
- 維護人員進入門檻低(熟悉 JavaScript 語言之開發人員)。
- 可同步使用 iOS 與 Android 雙平台裝置進行測試與調校。
- 開發時可以快速的更新 UI,不用重新編譯
- 免送審更新程式之機制,Microsoft CodePush。
- 更新週期快速,每個月 release 一個版本,v0.40 以前每兩週 release 一個版本
- Product Pains - 活躍的社群,讓社群投票表決 feature
- 完整的文件
缺點
- 開發環境對於電腦硬體需求較高。
- 需熟悉了解 React
其他類似的框架
- Ionic - Codova, AngularJS, Sass
- 骨子裡還是網頁
- 官方 market 有賣 theme、pulgin
- 適合有網頁開發底子,要簡單 MVP 的產品
- NativeScript - Angular, TypeScript, JavaScript.
- 適合熟悉 Angular 的開發者
- 底層也是使用 Native API
- 也有官方的 Market
- 可擴展現有 APP
- Vue 版本 preview 中
- Xamarin - C#
- 適合熟悉物件導向的程式語言開發者的垮平台解決方案
- 分為社區版、專業版、企業版
- PhoneGap- Html, CSS, JavaScript
showcase