11.4 來認識App吧!

講到App,你第一個想到的一定是從Google Play或是從App Store下載的應用程式,沒錯!App就是應用程式(application)的縮寫,廣義上來說包含電腦上的各種軟體都可以說是App,但由於電腦以外的行動裝置普及,現今提到的App多半是指行動裝置(手機、平板等)應用程式(Mobile App)。

App的分類

  • 原生型:Native App,目前最常見的應用程式,就像是在電腦上安裝使用的軟體一樣( Word、Excel 等),原生App是專為特定作業系統(手機目前以 iOS、Android為主)所開發的應用程式,換句話說它無法跨平台操作(比如同樣的Facebook App,Android版本無法在 iOS上使用),必須針對不同的作業系統開發相應的App,因此開發與維護都比較麻煩。可以最直接、高效地發揮硬體效能(包含手機的拍照、錄音、定位等功能),有的App不必連上網路也能使用。

  • 網頁型:(Mobile) Web App,與電腦上的網頁並沒有太大的區別,只不過到了行動裝置上多了響應式設計(RWD,在第11.3章有相關介紹)。由於是透過瀏覽器開啟應用程式,因此具備跨平台操作的特性,也不需要在意更新問題,但因為要透過瀏覽器連上網路才能使用,運行速度與整體效能比較受限。

原生型(左)與網頁型(右)Facebook App畫面比較(Android版本),若撇除使用體驗與運行速度來看,兩者最大的差異在於原生App不依賴瀏覽器運作,所以最上面不會出現網址列。

  • 混合型:Hybrid App,前兩者的綜合發展體,降低了原生App的開發成本,利用Web App的跨平台開發特性也方便維護,運行流暢度與成本則介於Native App和Web App之間。

三者的比較

補充:開發原生App的特定語言:
Android版本使用Java,iOS版本則使用Objective-C或者Swift。
在這兩大作業系統為主流的手機世界中,一款App多半都會有這兩種版本,
分別由熟悉不同語言的工程師開發與維護,因此才會說開發原生App的成本比較高,也無法跨平台使用。
補充:HTML5技術
開發網頁型或混合型App有時會說使用HTML5技術,其實是廣義稱HTML、CSS以及JavaScript
三者的技術組合。

小結

混合型App的出現主要是為了結合原生App與網頁App的優點,可以用HTML5技術方便開發,又不用依賴瀏覽器使用。開發者能以較低的成本進行開發,又能透過審核上架至App商店,觀察使用者下載情形與偏好,可以說是同時也具備方便開發與商業考量的意義。 其實不單是App,越來越多技術都希望有整合多方優點的發展,達到以最少的資源完成最多事的最高效益,畢竟科技最終的目的還是使生活更便利,不管是對使用者還是開發者皆然。 延伸閱讀:開發 App 用 Native 語言還是 Hybrid 好?Coder 你怎麼看?

Last updated