iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 1
1
Modern Web

使用 Modern Web 技術來打造 Native App系列 第 1

Day 01:使用 Modern Web 技術來打造 Native App

前言

React Native 是由 Facebook 所開發的行動應用程式開發框架,雖然也是使用 JSX、CSS in JS 等 Web 技術來開發,但開發的卻是 Native App,比起以往眾所熟知的 Hybrid App 開發框架 PhoneGapCordova,還有建在之上曾與 Angular 一起紅極一時的 Ionic Framework,有著更好的效能與使用者體驗。

React Native 建構在 React 的抽象層之上,其標榜「learn once, write anywhere」的開發哲學,讓對 React 有一定了解程度的人都能同時寫起 iOS、Android (但你還是得先買個 Mac),對以往試圖「write once, run anywhere」的開發方式發起新的挑戰。除了 Facebook,Instagram、Airbnb 等許多的知名公司,都已經使用它來開發,減少以往跨平台的難度,這對於熟悉 JavaScript 的開發者來說簡直是如虎添翼。

React Native 開源只有近兩年時間,但已經有 8000 多個 Commit、140 幾次的 Release、破千的 Contributor,有著難以想像的巨大影響力。

筆者是一個在前線追逐新技術的 React 開發者,從 2015 年一月的 React Conference 發佈 React Native iOS 以來,直到今日它即將邁入 v0.40.0 了,都只是在一個淺嚐即止的觀望階段,雖然研究過一些功能、寫過些許的範例,伴隨著它走過相容 ES6 Component、支援 Android、跟 React 整合、支援 Hot Reload 的幾個瞬間,但從沒有探索過整體的應用。

另外,跟 Objective-C、Swift、Java 都算是有個幾面之緣,卻也還沒有靜下心來開發過任何實際的 App,如今 React Native 的一股熱朝已經在世界蔓延,除了趁此機會摸熟一番,讓自己的 App 在 App Store 跟 Google Play 上架,自然也成為這次的重要目標之一 (雖然說上架還要過審核就是了)。

那至於後台呢?

GraphQL 是另一個我想要闡述的主題,這是個 Facebook 使用了四年的 API 查詢語言,一天為他們處理上百億次的 API 請求。對我們這些曾經把 RESTful 當作教條的開發者來說,或許是一次跳出框架 Rethinking Best Practices 的機會。

最近創立了 GraphQL Taiwan,也希望能在台灣做一些 GraphQL 的技術推廣跟帶來一些新思潮。

Github 最近提供了新的 GraphQL API,算是 Facebook 之外第一個大舉採用的大公司,我想這是一個好的起點。

筆者是一個還算活躍的 Github 使用者,做一個給自己使用的 Github App 也是相當划算,希望大家三十天不會空手而回而我也是 (希望能撐得到三十天...)。之後如果對這三十天所要做出的 App 有些使用上的意見或是推薦的功能,都歡迎發 IssueRepo,或是能有 PR 會更好!

至於這到底能不能算是 Modern Web 的主題呢?使用 Modern Web 的技術來打造 Native App,我想是再適合不過了,本系列也適合對 Modern Web 熟悉並抱持著興趣的讀者。

以下是本系列的目錄:


下一篇
Day 02:快速學會 React 基礎
系列文
使用 Modern Web 技術來打造 Native App30

尚未有邦友留言

立即登入留言