什麼是APP???APP的開發類型又分哪幾種???

來源:互聯網
上載者:User

標籤:布局   book   營銷   移動開發   tab   DApp   baidu   cti   即時   

開發人員們都知道在高端智能手機系統中有兩種應用程式:

  1. 一種是基於本地(作業系統)啟動並執行APP —-Native App;
  2. 一種是基於高端機的瀏覽器啟動並執行App —-WebApp
    因為這些高端智能手機(Iphone、Android)的內建瀏覽器都是基於webkit核心的,所以在開發WEBAPP時,多數都是使用HTML5和CSS3技術做UI布局。當使用HTML5和CSS3l做UI時,若還是遵循著一般web開發中使用HTML4和CSS2那樣的開發方式的話,這也就失去了WEBAPP的本質意義了
  3. 一種是基於上兩種發展出來的產物 —-Hybrid App
    Hybrid App(混合模式行動裝置 App)是指介於web-app、native-app這兩者之間的app,兼具“Native App良好使用者互動體驗的優勢”和“Web App跨平台開發的優勢”。

移動產品的實現方式主要有三種:

  1. Native App;
  2. Web App;
  3. Hybrid App

目前移動互連網基本採用了NativeAppWebAppHybridApp三種開發模式,很難說這三種模式那種更優越,目前的情況可以說是三分天下吧,不同的開發人員可以根據自己的實際情況選擇不同的開發模式。談論那種模式最好實際上事非常無聊的事情。

NativeApp指的是本地化應用,就是我們從市集下載安裝的獨立應用
  1. 開發成本非常大。
    一般使用的開發語言為JAVA、C++、Objective-C。
  2. 更新體驗較差、同時也比較麻煩
    每一次發布新的版本,都需要做版本打包,且需要使用者手動更新(有些應用程式即使不需要使用者手動更新,但是也需要有一個噁心的提示)。
  3. 非常酷
    因為native app可以調用IOS中的UI控制項以UI方法,它可以實現WebApp無法實現的一些非常酷的互動效果
  4. Native app是被Apple認可的
    Native app可以被Apple認可為一款可信任的獨立軟體,可以放在Apple Stroe出售,但是Web app卻不行。

開發成本過高跨平台性不好是開發人員們選擇放棄這種開發模式的重要原因。開發語音主要採用Object-C、Java等語言。由於我不是做Native端開發的,這裡不多說了。

WebApp通常是指觸屏站,就是我們通過手機瀏覽器訪問的Html5網站,Html5支援一些新標籤和指令碼,可以做出類原生應用的效果和動畫
  1. 開發成本較低
    使用web開發技術就可以輕鬆的完成web app的開發
  2. 升級較簡單
    升級不需要通知使用者,在服務端更新檔案即可,使用者完全沒有感覺
  3. 維護比較輕鬆
    和一般的web一樣,維護比較簡單,它其實就是一個網站

Webapp說白了就是一個針對Iphone、Android最佳化後的web網站,它使用的技術無非就是HTML或HTML5、CSS3、JavaScript,服務端技術JAVA、PHP、ASP。

HTML5技術的興起給Web App注入了新的生機。
Web App具有開發成本低周期短使用方便維護簡單等特點。
隨著HTML5被過度熱炒和實際開發中遇到的效能以及體驗問題,WebApp逐漸勢弱。
同樣,以AppStore為首的App分發平台當然是不希望webapp破壞自己建立的生態系統的。html5遲遲沒有得不到一個公認的標準,也阻礙著webapp的發展。但是這些都不足以阻礙webapp的發展。現在APP的數量已經達到數以百萬計,實際上使用者根本不需要這麼多的App,很多App被使用者下載後,一個月都不會被開啟一次。
而webapp使用者根本不需要安裝,只需要開啟手機瀏覽器,輸入網址或搜尋目標,點擊即可到達想要的網頁,基本和PC互連網的思路是一致的,這也說明百度同樣在移動入口上有這很大的優勢。在NativeApp上使用者只有安裝了App,才能瀏覽,而webapp是直接通過手機瀏覽器為入口,或者推送的資訊為入口,這麼看webapp在流量上是有很大的優勢的。

但是目前webapp得不到很好的發展主要有以下幾個方面的原因:

  1. 無有效且廣泛的webapp發行渠道(NativeApp有AppStore等);
  2. webapp表現和體驗不佳(這點算硬傷吧);
  3. 適配難度(一套web很難相容所有的手機,特別是國內某些自以為很牛B的手機,大可樂算一個吧,哈哈);
  4. 配套的標準尚未成熟(主要指html5吧)。

網站移動化是必然的,目前知道webapp比較好的解決方案有如下幾個:

  1. 雲適配 號稱引入一段神奇的代碼就能將PC網站移動化。陳本峰老師也是我學習的榜樣,html5佈道官。瞭解更多資訊可以連結到http://www.yunshipei.com/
  2. 百度site App 網址:http://siteapp.baidu.com/
  3. 還知道個做微站的網站,號稱把、微博入口都已打通,企業使用者營銷很好的平台:http://www.weizhan360.com/
HybridApp是指混合模式應用,同時使用網頁語言與程式語言編寫,包含原生視圖和Web視圖兩種方式,使用方式和Native App一致,而又繼承了Web App即時更新開發成本低等優點。

汽車有混合動力Hybrid,行動裝置 App同樣也有混合模式。Hybrid App兼具“Native App良好使用者互動體驗的優勢”和“Web App跨平台開發的優勢”。很多人不知道市場上一些主流行動裝置 App都是基於Hybrid App的方式開發,比如國外有Facebook、國內有百度搜尋等。但究竟什麼是Hybrid App?如何定義?

  • mobile application:Hybrid App就是一個行動裝置 App
  • both browser-supported language and computer language:同時使用網頁語言與程式語言編寫
  • available through application distribution platforms:通過市集進行分發
  • a target device:區分目標平台
  • install to run:使用者需要安裝使用

綜合一下就是:“Hybrid App同時使用網頁語言與程式語言開發,通過市集區分移動作業系統分發,使用者需要安裝使用的行動裝置 App”。總體特性更接近Native App但是和Web App區別較大。只是因為同時使用了網頁語言編碼,所以開發成本和難度比Native App要小很多。因此說,Hybrid App兼具了Native App的所有優勢,也兼具了Web App使用HTML5跨平台開發低成本的優勢。

Hybrid App的興起是現階段移動互連網產業的一種偶然。移動互連網的熱潮颳起後,眾多公司前赴後繼的進入。但是很快發現行動裝置 App的開發人員太少,所以導致瘋狂的人才爭奪。市場機制下行動裝置 App開發人才的待遇扶搖直上,最終變成眾多企業無法負擔養一個具備跨平台開發能力的專業行動裝置 AppTeam Dev。而HTML5的出現讓Web App露出曙光,HTML5開發行動裝置 App的跨平台和廉價優勢讓眾多想進入移動互連網領域的公司開始心動。可是當下基於HTML5的Web App更是霧裡看花,在使用者入口習慣、分發渠道和應用體驗這三個核心問題沒解決之前,Web App也很難得以爆發。正是在這樣是機緣巧合下,基於HTML5低成本跨平台開發優勢又兼具Native App特質的Hybrid App技術殺入混戰,並且很快吸引了眾人的目光。大幅的降低了行動裝置 App的開發成本,可以通過現有市集模式發行,在使用者案頭形成獨立入口等等這些,讓Hybrid App成為解決行動裝置 App開發困境不錯的選擇,也成為現階段Web App的代言人。Hybrid App像刺客一樣,在Native App和Web App混戰之時,偶然間的在行動裝置 App開發領域佔有了一席之地。

Hybrid App,這種既有跨平台開發週期短成本低的基因,又能發揮Native App體驗和效能的優勢,HybridApp混合式行動裝置 App開發逐漸成為企業移動開發的首選。
Hybrid App通常是基於第三方跨平台行動裝置 App引擎架構進行開發,
在國內開發人員中比較知名的有PhoneGap、Titanium和AppCan這些引擎架構一般使用HTML5和Javascript作為程式設計語言,調用引擎封裝的底層功能如照相機、感應器、通訊錄、二維碼等。HTML5和Javascript只是作為一種解析語言,真正調用的都是NativeApp一樣封裝的底層功能,這是和Web App的最大區別和不同。因為使用了瀏覽器技術,所以Hybrid App通常具有跨平台的特性,並且開發成本和WebApp接近,開發效率也遠高於Native App

說實在的,從表面上看的話,很難區分一個App到底是Native App還是Hybrid App,但實際上我們更多的是把Hybrid App當做是Webapp的一部分,因為他是一部分Native(比較少),絕大部分的web頁面(html5頁面)。

Hybrid App和Native App一樣都是需要使用者在各種App分發渠道上下載並安裝到手機上才能用的。Hybrid App的體驗當然是沒話說,比較棒的,有這Native App的全部優點。html5很好的解決了跨平台性的問題,也解決了開發成本過高的問題。

One Web more native 可以很好的形容Hybrid App這種開發模式。

Hybrid App是如何?網頁語言與程式語言的混合?誰佔主體?

Hybrid App通常分為三種類型:多View混合型,單View混合型,Web主體型

從分析可見,Hybrid App中的Web主體型只要能夠解決使用者體驗差的問題,就可以變成最佳Hybrid App解決方案類型。

Hybrid App的瓶頸與未來

國內外Hybrid App的開發架構眾多。如何選擇又成為一個難題。下面對開發人員比較關心的集中知名跨平台開發行動裝置 App中介軟體進行列表和對比,以便選擇最適合您的行動裝置 App中介軟體。

PhoneGap是相對比較早進入公眾視線的一種選擇。但是,開發人員簡單的基於PhoneGap來開發行動裝置 App肯定會發現結果和Web App比較差的使用者體驗類似。這也是為什麼基於PhoneGap有實用性的行動裝置 App主要集中在iOS上。可是PhoneGap這種現狀弱化了HTML5的跨平台價值。

AppCan在技術架構上和PhoneGap類似是Web主體型中介軟體,但是通過結合了一些原生互動效果能夠達到iOS、Android平台都比較一致的使用者體驗。但是相比PhoneGap的開源,AppCan相對封閉的路線顯得過于謹慎。

Titanium是一種基於翻譯機制的跨平台中介軟體,能夠開發出具有Native體驗的行動裝置 App,但是因為翻譯機制的限制導致行動裝置 App開發不能像真正的HTML5開發一樣靈活。哪怕一個按鈕也不能像普通HTML一樣來編寫,而必須按照Titanium約定的特定格式。

Hybrid App這個領域雖然還處於比較初期的階段,但是已經有很多優秀的公司和技術團隊在致力於跨平台開發行動裝置 App中介軟體技術的研究,給了開發人員眾多選擇。開發人員可以根據實際的項目需求來選擇中介軟體。Web App雖被瀏覽器廠商和搜尋引擎公司所推崇,但存在使用者體驗差、盈利模式不明確等現階段無法解決的問題,或最終夭折。Hybrid App正在被越來越多的公司和開發人員所認同,勢必會成為新世界的王。

Web App、Hybrid App、Native APP對比

—- Web App(網頁應用) Hybrid App(混合應用) Native App(原生應用)
開發成本
維護更新 簡單 簡單 複雜
體驗
Store或market認可 不認可 認可 認可
安裝 不需要 需要 需要
跨平台
HybridApp開發,現階段主流的平台包括PhoneGap(Cordova),AppCan,appMobi,Titanium等,它們基於webkit開源核心,使用HTML5 標準開發,適配機型簡單,支援開發人員自訂外掛程式,並能很好的應用於商業,教育,娛樂等行業,成為移動開發人員的首選開發平台。

什麼是APP???APP的開發類型又分哪幾種???

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.