精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

DHH 談混合移動應用開發

移動開發
Facebook 在2012年發布了他們新的 iOS app,為了獲得更好的用戶體驗,他們放棄了原來的 HTML5 混合開發方式。考慮到2010~2011年的時候,HTML 在移動端的性能確實不盡如人意,這個決定在當時看來也在情理之中。2010年的時候我們覺得 iPhone 3G/3GS 夠眩夠快,但按照現在的標準來看它們就太慢了。因此在為移動應用開發做架構設計時,我們需要考慮新的移動設備的計算能力,而不是那些老的過時的設備。

[[125180]]

David,Ruby on Rails 作者,37signals 合伙人

暢銷書作家、演說家、賽車手、業余攝影師、顧家好男人

37signals 在2013年2月發布了 Basecamp 的 iPhone app,在此之前我們就使用原生開發(native)還是混合開發(hybrid)做了許多嘗試。在2012年項目啟動的時候,大多數人都傾向于原生開發。

Facebook 在2012年發布了他們新的 iOS app,為了獲得更好的用戶體驗,他們放棄了原來的 HTML5 混合開發方式。考慮到2010~2011年的時候,HTML 在移動端的性能確實不盡如人意,這個決定在當時看來也在情理之中。2010年的時候我們覺得 iPhone 3G/3GS 夠眩夠快,但按照現在的標準來看它們就太慢了。因此在為移動應用開發做架構設計時,我們需要考慮新的移動設備的計算能力,而不是那些老的過時的設備。

移動開發架構設計不需要過多考慮設備的性能

我們從一些測試中得出的一個結論是:現在的移動設備計算能力都很強,運行原生應用和 HTML 應用的效果差別不大,而 HTML 開發的成本則要比原生開發小得多。

當然這個結論在某些領域并不太適用。如果你要開發一個 3D 游戲,原生開發方式能夠帶來更好的游戲體驗。但如果你的移動應用象 Basecamp 一樣側重信息處理,為了降低開發成本,你就可以考慮混合開發方式。我們就是如此,下面是我們三代移動產品的發展軌跡:

第一代產品:原生外殼(native shell)+嵌套WebView

[[125181]]

這個版本就是一個簡單的原生外殼負責界面導航,嵌套一個 WebView 來顯示 Basecamp Rail application,顯示的基本上都是我們移動網站頁面,再加上一些特殊的樣式。

在移動網站的頁面上嵌套一個原生的殼,聽起來還是 Web 頁面,但實際帶給用戶的體驗確是非常不同。用戶可以在 Apple App Store 找到我們的 app,他們一旦登錄 app 后可以再也不用重新登錄(移動版本的 Safari 似乎會經常清空 cookie,讓你不得不重新登錄)。我們的 app 大受歡迎,用戶評分在4和5之間。

整個 app 由一名程序員和一名設計師開發,成本不高,因為我們可以在已有的移動網站的基礎上開發。

如果我們當初開發完全原生的 app,用10個人的團隊1年半的時間也未必能完成。

第二代產品:原生外殼+原生導航界面

1543-unnamed

幾個月前發布的 Basecamp Android app 是我們的第二代產品,我們在其中做了大量的改進。

從第一代 iPhone app 中我們感受到了原生導航界面的威力,所以在 Android 版本中,我們由 HTML 頁面導航轉向了原生導航界面。我們從 HTML 頁面生成原生導航界面,用戶體驗更加流暢,原生界面和 HTML 頁面的體驗差別越來越小,甚至很難區分哪些是原生部分,哪些是 HTML 。

Android 版本是由一兩個程序員和一個設計師開發(50%投入)完成的。我們重用了移動站點和 iPhone app 中使用的所有 webview,大大提高了開發效率,同時用戶也很買賬,超過1000名用戶打了4.5~5的高分。

很多公司在抱怨他們的 iOS 移動項目進展緩慢,Android 項目似乎更是如此。或許他們已經習慣了 iOS 項目的開發流程,也許是因為 Android 的屏幕碎片化問題,但是這些對我們來說那都不是事。我們推出的 Android app 表現良好,重用了95%的代碼,開發團隊也一直保持在小規模。

因地制宜地運用原生開發方式

目前我們正在開發第三代產品,發布的平臺暫時保密,不過你應該也不難猜到。在前兩代產品中,我們增加了原生導航界面的使用,同時進一步確定了以 webview 為核心的整體架構。在第三代產品中,我們將因地制宜地選擇需要使用原生開發的功能,好鋼要用在刀刃上。

從之前的100% HTML,到現在的90% HTML +10%原生,我們會選擇最值得做原生開發的那10%的部分,最終目的是讓 app 原生部分和 HTML 部分的體驗沒有太大區別。

混合開發模式使用的技術

混合開發模式在技術很簡單,主要是處理 webview 的集成、Web 頁面的加載,以及原生內容和 HTML 內容之間的交叉鏈接,其實可能比你想像的還要簡單得多。

HTML 方面,我們的 Rails Web 應用支持 Web 和移動兩大平臺,其中 Rails 4.1 feature of variants 起了很大的作用。

這也很大程度上有助于我們發布新功能。設想一下如果我們每次需要更新這么多平臺:Rails desktop app, a Rails API app, a client-side MVC app, a mobile web wrapper app, an Android app, and an iPhone app,像我們這樣只有10個程序員和7個設計師的公司根本無力承擔如此巨大的工作量。

除了工作量的減輕,bug 修復效率也提高了,因為大部分的代碼邏輯是在 Web 服務器端,我們可以隨時修改代碼并發布,不用通過 Apple App Store 的審批流程。所以我們的移動 app 和 Web 應用一樣,也是持續部署。

就如我之前提到的,混合模式開發并不適用于所有情況。在2010年以前,那時手機的處理能力都不強,所以 HTML/JS 的體驗并不好,用戶也不喜歡。但是時過境遷,現在手機的處理能力大大提高了,HTML/JS 的性能也不再是一個問題。

混合開發模式對原生開發模式的挑戰

混合開發模式在降低開發復雜度方面有它的優勢,如果你的產品是以顯示和處理信息為主,我認為都可以不同程度地采用這個模式。

對于小型團隊和公司而言,并不一定需要采用 iOS 原生 app 先行的模式。使用混合模式,不需要你重頭開發一個 app,這樣可以降低維護成本,將來擴展到其他平臺也更為方便。

當然我知道會有很多人質疑這個模式,或許因為他們的 app 中有很多地方需要原生開發(也許僅僅是他們自己這樣認為罷了)。又或許他們已經花了很多時間讓 app 里的 UITableView 看起來非常漂亮,以致如果其他地方不這樣的話顯得不是太完美。再或許大公司就是喜歡耗時耗力的原生開發,有錢就是這么任性。

無論怎樣,混合開發當下應該能夠成為我們移動開發策略的一個選擇。如果你認為這是一個好的選擇,那么恭喜你,盡情愉快地玩耍吧!

原文鏈接:Hybrid sweet spot: Native navigation, web content

下面補充一些 David 答讀者問:

Mike Waite @ 2014-05-08:我很好奇你是如何決定哪些功能要用原生開發?

David @ 2014-05-08:主要靠感覺,這畢竟不是一門科學。如果你感覺你app的某一部分如果用原生開發會更好些,可以嘗試做快速原型(spike)。很多 時候我們通過這種方式證明我們的想法其實是錯的。當然如果你需要使用到手機上的功能如:攝像和其他設備時,HTML目前還不太適用,不過永遠也不要把話說 死。

Mike Parsons @ 2014-05-08:好文。很好奇你們是否使用 PhoneGap 或者 Cordova 這樣的框架,或者你們自己開發了一個?

David @ 2014-05-08:我們沒有使用任何框架。(此處省去xxx字)

Derick @ 2014-05-08:你怎樣解決 Android 瀏覽器渲染速度慢的問題?這也是 Android 平臺上更多人傾向開發原生app得原因。

David @ 2014-05-08:不知道你這個結論是近期的還是以前的?Basecamp 的 Android app 在我的 Nexus 5 和 HTC One 上面運行得非常流暢。

Derick @ 2014-05-08:就是最近。我猜測可能和你使用JavaScript的多少有關系。因為以我個人的經驗,Android 上 JavaScript 的運行速度非常慢。如果你感興趣可以看看下面的文章:https://www.timroes.de/2013/11/23/old-webview-vs-chromium-webview/

David @ 2014-05-08:我們使用了很多JavaScript,當然沒有 Web MVC 客戶端用得那樣多。另外我們使用了 Turbolinks :)

責任編輯:閆佳明 來源: coolshell.cn
相關推薦

2014-12-17 10:29:59

混合應用Hybrid App開發實戰

2013-01-24 09:16:23

移動開發者移動應用開發

2017-02-15 10:22:23

移動應用開發

2013-09-13 13:16:05

2016-05-13 15:39:34

混合開發移動

2014-05-30 17:53:43

移動互聯網

2016-01-13 09:37:00

IDC混合開發react nativ

2011-04-06 15:22:00

虛擬引擎移動游戲開發

2016-01-29 16:47:12

2015-02-05 09:56:53

2016-05-04 10:00:04

混合開發移動博客

2011-03-14 13:40:02

移動Web架構人人網

2013-07-29 12:45:19

iOS開發經驗iOS提高應用開發效率

2015-01-12 09:52:08

移動應用原生混合

2015-01-12 12:11:10

移動應用原生混合

2013-07-19 09:12:54

2015-02-01 09:37:27

移動應用移動開發

2012-12-13 09:47:50

2011-01-13 14:52:47

移動應用開發趨勢2011年

2014-04-09 14:02:21

混合云應用混合云
點贊
收藏

51CTO技術棧公眾號

国产精品无码一区二区桃花视频 | 亚洲国产精品字幕| 国产精品久久亚洲7777| 一级片视频免费看| 成人涩涩视频| 一区二区三区四区不卡在线| 欧美人与物videos另类| 91福利免费视频| 欧美日韩播放| 91精品国产欧美日韩| 日本在线一区| 亚洲一卡二卡在线| 激情91久久| 影音先锋日韩有码| 图片区偷拍区小说区| 日韩新的三级电影| 一区二区三区免费看视频| 久久综合久久久| 精品国产无码一区二区三区| 午夜av一区| 国产手机视频精品| 欧美一级在线看| 欧美精品电影| 91啪九色porn原创视频在线观看| 国产美女久久久| 欧美激情亚洲综合| 亚洲欧美偷拍自拍| 国产午夜精品美女视频明星a级| 人妻换人妻仑乱| 婷婷av在线| 国产欧美日韩视频一区二区| 国产日韩欧美综合精品| 91极品身材尤物theporn| 国产精品视频| 国模精品视频一区二区| 日韩精品123区| 福利一区三区| 欧美日韩精品一区二区三区四区 | 美女性感视频久久| 日韩av三级在线观看| 国产性70yerg老太| 午夜精品一区二区三区国产 | 亚洲激情一区二区三区| 亚洲色图另类小说| 国产日韩综合| 久久久久久国产精品美女| 老熟妻内射精品一区| 外国成人在线视频| 亚洲丁香久久久| 丰满少妇中文字幕| 国产精品视频首页| 在线观看91精品国产麻豆| 天天干天天综合| 国产91欧美| 欧美日韩视频在线第一区| 激情五月开心婷婷| 超碰一区二区| 日韩欧美aaa| 老太脱裤让老头玩ⅹxxxx| 欧美黄色视屏| 亚洲1区2区3区视频| 极品粉嫩国产18尤物| 日本小视频在线免费观看| 亚洲精品国产一区二区三区四区在线 | 六月婷婷在线视频| 678在线观看视频| 午夜亚洲福利老司机| 精品视频在线观看一区| 久草在线资源福利站| 一本一道波多野结衣一区二区| 日本黄网站免费| 韩日精品一区| 欧美一区二区在线播放| wwwww在线观看| 欧美a一欧美| 欧美日韩日日摸| jizzzz日本| 免费精品一区二区三区在线观看| 日韩视频在线一区二区| 久久久久久久久久久免费视频| 亚洲私拍视频| 欧美蜜桃一区二区三区| 九九热精品国产| 高潮按摩久久久久久av免费| 日韩www在线| 国产成人在线网址| 影视一区二区| 欧美在线视频网| 中文字幕在线日亚洲9| 国产乱码精品一品二品| 精品一卡二卡三卡四卡日本乱码 | 亚洲人成网站影音先锋播放| 国产精品va在线观看无码| 国产裸舞福利在线视频合集| 国产精品美女久久久久久2018 | 欧美视频一二三区| 久久久久无码精品| 美女主播精品视频一二三四| 亚洲最大在线视频| 久草国产在线视频| 久久国产精品久久久久久电车 | 亚洲免费观看在线观看| 成 年 人 黄 色 大 片大 全| yw.尤物在线精品视频| 日韩欧美中文一区二区| 国产一级久久久久毛片精品| 精品少妇一区| 最近中文字幕日韩精品| 精品无码m3u8在线观看| 奇米888四色在线精品| 99国产超薄肉色丝袜交足的后果| 欧美视频综合| 亚洲一区自拍偷拍| 超碰在线播放91| 国产一级成人av| 久久精品视频亚洲| 国产伦精品一区二区三区视频我| 国产精品一区二区你懂的| 欧美在线激情| 国模私拍一区二区国模曼安| 欧美人牲a欧美精品| 精品人妻一区二区三区视频| 欧美日韩国产综合网| 国产精品视频免费在线| 中文天堂在线资源| 99久久精品免费看国产免费软件| 国产传媒一区二区| 9191在线| 亚洲三级在线观看| 久草青青在线观看| 成人精品毛片| 欧美老肥婆性猛交视频| 中文字幕在线观看欧美| 久久综合久久久久88| 欧美日韩系列| 国内老司机av在线| 午夜精品福利视频网站| 三级网站免费看| 91麻豆国产自产在线观看亚洲| 日韩美女福利视频| 亚洲欧美综合一区二区| 亚洲国产精品精华液网站| 黑人巨大猛交丰满少妇| 久久久久久美女精品 | 久久久精品国产网站| 国产三级理论片| 中文字幕精品—区二区四季| 麻豆传传媒久久久爱| 美女亚洲一区| 青草青草久热精品视频在线网站 | 中文字幕一区日韩电影| 国产一区二区视频免费| 久久网站最新地址| 人妻精品无码一区二区三区 | 亚洲男人第一av网站| 国产成人精品片| 91社区在线播放| 欧美黄网站在线观看| 亚洲影院天堂中文av色| 日韩免费在线免费观看| 国产午夜在线视频| 欧美色男人天堂| 国产午夜精品理论片在线| 国产一区二区三区在线观看免费| 国内自拍中文字幕| 亚洲日本va| 97成人在线视频| 黑人与亚洲人色ⅹvideos| 欧美性受xxxx黑人xyx性爽| 影音先锋男人看片资源| 精品一区二区成人精品| 国产av第一区| 欧美性生活一级片| 日韩av免费在线| 国产在线观看91| 富二代精品短视频| 97伦伦午夜电影理伦片| 日韩电影免费在线| 天天干天天操天天干天天操| 亚洲一二av| 欧美最近摘花xxxx摘花| av在线天堂播放| 日韩亚洲欧美一区二区三区| 日干夜干天天干| 国产乱理伦片在线观看夜一区| 日本男女交配视频| 亚洲品质自拍| 91情侣偷在线精品国产| 国产美女高潮在线观看| 中文字幕久热精品视频在线| www.久久精品.com| 日韩欧美亚洲国产一区| 精品无码一区二区三区蜜臀| 成人免费高清视频| 欧美另类videosbestsex日本| 黄色网一区二区| 国产日韩欧美黄色| 丁香花高清在线观看完整版| 永久555www成人免费| 二区三区在线视频| 欧美无砖砖区免费| 日韩成人高清视频| 1000部国产精品成人观看| 黄色三级视频片| 欧美日韩视频一区二区三区| 久久婷婷开心| 欧美成人精品午夜一区二区| 国产精品99免视看9| 懂色av一区| 久久综合免费视频影院| 男人天堂亚洲二区| 日韩精品一区二区三区四区视频| 亚洲色婷婷一区二区三区| 久久一二三国产| 性猛交╳xxx乱大交| 美女一区二区三区在线观看| 亚欧无线一线二线三线区别| 911久久香蕉国产线看观看| 欧美一区二区三区四区在线观看地址 | 蜜桃av免费观看| 99久久免费精品| 香蕉久久久久久av成人| 久久av资源网| 九色91popny| 美女国产一区| 可以在线看的av网站| 中文字幕日韩一区二区不卡 | 国产精品麻豆免费版| 9999精品| 91久久精品日日躁夜夜躁国产| 日韩成人av电影| 欧美一级电影免费在线观看| heyzo在线播放| 欧美高清视频一区二区| 成人午夜在线影视| 久久精品国产欧美激情| 成年网站在线| 在线成人免费网站| 黄色在线小视频| 亚洲欧美www| 暖暖视频在线免费观看| 精品视频在线播放免| 亚洲日本中文字幕在线| 亚洲精品97久久| 亚洲成人第一区| 精品久久人人做人人爱| 亚洲国产精品二区| 日韩精品一区二区三区在线观看 | 日本一区二区三区中文字幕| 国产精品一区二区久久久久| 国产精品99| 成人精品久久av网站| 日韩欧国产精品一区综合无码| 国产免费亚洲高清| 日韩专区视频网站| 亚洲iv一区二区三区| 亚洲开心激情| 精品国产第一页| 婷婷五月色综合香五月| 欧美日韩一区综合| 波多野结衣一区| 一区二区三区四区五区视频| 久久野战av| 国产精品大片wwwwww| 精品三区视频| 成人妇女淫片aaaa视频| 日本免费一区二区视频| 情事1991在线| 成人涩涩视频| 4444kk亚洲人成电影在线| 999久久久精品一区二区| 国产亚洲情侣一区二区无| 夜夜春成人影院| 亚洲一区三区在线观看| 欧美日韩三级电影在线| 国产精品宾馆在线精品酒店| 日本美女视频一区二区| 国产精品19p| 成人性视频免费网站| 亚洲最大成人网站| www.久久久久久久久| 女尊高h男高潮呻吟| 国产精品美女久久久久久2018 | 国产高清精品一区二区三区| 久久精品福利| 在线观看日本一区| 影音先锋中文字幕一区二区| 好男人www社区| 国产精品1区2区| 一区二区三区伦理片| 一区二区视频在线| 最新中文字幕一区| 欧美电影在线免费观看| 五月婷婷丁香花| 久久久精品中文字幕| 偷拍自拍在线看| 亚洲xxx自由成熟| 日本道不卡免费一区| 日韩免费在线观看av| 日本vs亚洲vs韩国一区三区| zjzjzjzjzj亚洲女人| 国产精品色噜噜| 日本亚洲色大成网站www久久| 欧美色综合天天久久综合精品| 亚洲男女视频在线观看| 中文字幕国产亚洲2019| 成人黄色动漫| 91色琪琪电影亚洲精品久久| 欧美精选一区二区三区| 国产成a人亚洲精v品在线观看| 美女视频免费一区| 天天插天天射天天干| 亚洲乱码日产精品bd| 国产情侣免费视频| 亚洲娇小xxxx欧美娇小| 免费在线中文字幕| 成人av在线亚洲| 久久不见久久见免费视频7| 国产精品日韩三级| 精品一区二区三区在线观看| 日韩中文字幕有码| 亚洲国产成人高清精品| 国产一区二区麻豆| 国产亚洲精品美女久久久| 韩国成人二区| 国产精品亚洲一区| 欧美黄色一区二区| 不用播放器的免费av| 中文av一区特黄| 中文字幕av第一页| 欧美私模裸体表演在线观看| 香蕉久久一区二区三区| 欧美二区乱c黑人| 日韩精品一区国产| 秋霞在线一区二区| 久久se精品一区精品二区| 欧美激情久久久久久久| 日本久久一区二区| 九色网友自拍视频手机在线| 欧美性资源免费| 青青操综合网| 丰满人妻中伦妇伦精品app| www.亚洲精品| 一级成人黄色片| 亚洲男女性事视频| av高清不卡| 日本精品一区| 日韩**一区毛片| 亚洲a∨无码无在线观看| 欧美日韩午夜在线| 免费黄色在线网站| 2019国产精品视频| 午夜国产精品视频| 东京热av一区| 欧美色视频日本高清在线观看| 飘雪影院手机免费高清版在线观看 | 精品在线欧美视频| 不卡一二三区| 亚洲 国产 日韩 综合一区| 麻豆中文一区二区| 黄色a级片在线观看| 精品国精品国产| 精品丝袜在线| 欧洲一区二区在线| 久久精品国产久精国产| 午夜爽爽爽男女免费观看| 日韩欧美色综合网站| 啊啊啊久久久| 日韩av一级大片| 黄色小说综合网站| 麻豆一区二区三区精品视频| 日韩av在线网站| 福利一区二区| 久久久久福利视频| 99热国产精品| 中文字幕+乱码+中文| 欧美乱妇高清无乱码| 亚洲丝袜啪啪| 中文字幕剧情在线观看| 亚洲成a人片在线不卡一二三区 | 亚洲精品不卡在线观看| 亚洲 欧美 日韩 国产综合 在线| 国产亚洲人成网站| 99草在线视频| 欧美有码在线视频| 亚洲成人99| 可以直接看的无码av| 欧美日本在线看| 韩国成人二区| ijzzijzzij亚洲大全| av综合在线播放| 在线播放一级片| 97久久国产精品| 日韩精品诱惑一区?区三区| 中国男女全黄大片| 欧美三级资源在线| av午夜在线观看| 欧美爱爱视频网站| 久久伊99综合婷婷久久伊| 国产丰满美女做爰|