Skip to content

Latest commit

 

History

History
68 lines (54 loc) · 2.62 KB

index.md

File metadata and controls

68 lines (54 loc) · 2.62 KB

React Native 是什麼?

  • 開發跨平台原生應用的 JavaScript 框架
    • 用 JavaScript 開發 多個平台的原生應用
  • 2013 年夏天 Facebook 內部駭客松的 project
  • 2015 年 1 月 React.js Conf 發表, 2015 年 5 月正式發佈,當時只有 IOS 版本,2015 年 9 月 Android 才正式支援
  • React 精神: Learn once, write anywhere:
  • Build mobile apps with React
    • iOS
    • Android
    • Apple TV
    • Android TV
  • 用 JavaScript 撰寫真正的原生 App,不是所謂的 mobile web app、HTML5 app、 hybrid app

開發方案比較

WebView -> Hybrid -> Convert to Native -> Totally Native

  • Ionic: https://ionicframework.com/ - Cordova, AngularJS, Sass
    • 骨子裡還是網頁
    • 官方 market 有賣 theme、plugin
    • 適合有網頁開發底子,要簡單 MVP 的產品
  • NativeScript: https://www.nativescript.org/ - Angular, TypeScript, JavaScript.
    • 適合熟悉 Angular 的開發者
    • 底層也是使用 Native API
    • 也有官方的 Market
    • 可擴展現有 APP
    • Vue 版本 preview 中
  • Xamarin: https://www.xamarin.com/ - C#
    • 適合熟悉物件導向的程式語言開發者的垮平台解決方案
    • 分為社區版、專業版、企業版
  • PhoneGap: https://phonegap.com/- Html, CSS, JavaScript

特色

優點

  • 使用同一套專案 Code Base 即可達成跨平台 App 開發建置與維護。
  • 模組化及重用性 ( facebook 團隊程式碼重用率 85% )
  • 效能與使用體驗接近原生開發。
  • 和 Web 開發方法相似,前端開發者容易入門
  • 採用與 Web 前端相同的 REST API / JWT 存取後端資料服務。
  • 維護人員進入門檻低(熟悉 JavaScript 語言之開發人員)。
  • 可同步使用 iOS 與 Android 雙平台裝置進行測試與調校。
  • Hot Reloading 帶來良好開發體驗
  • Hot Deploy 可以免送審更新上架的 App,Microsoft CodePush。
  • 具備 Native Module 擴充性
  • 更新週期快速,每個月 release 一個版本,v0.40 以前每兩週 release 一個版本
  • 完整的教學文件
  • React 社群生態圈的豐富資源

缺點

  • 開發環境對於電腦硬體需求較高。
  • 需熟悉了解 React

適用場景

  • 熟悉 React 或 Web 前端技術,想要嘗試手機應用開發
  • 跨平台開發需求
  • MVP 最小可行性產品試驗

線上案例 Showcase