如何看待《HTML5 定稿:手機 App 三年內將徹底消失?》

全文如下(轉自梧桐會)

梧桐會


明明說好三年,三年之後又三年,三年之後又三年,都快十年了老大。


作為一名前端,我還是得勸勸一些人,醒來看看這個世界吧,並不是只有前端在飛速發展的…


從當年PC上大吹特吹B/S會替代C/S導致桌面應用消失來看,在手機上繼續吹一遍Web會代替Native我感覺是一個灰常大的騙局。

Web本身的缺點是處理能力弱,一個處理能力弱的方式能去替代處理能力強的方式唯一的原因就是:用戶只需要Web這個級別的處理方式就夠了。理性思考的結果都會是這個吧?當需求不存在的時候,自然強處理能力的Native就沒有存在的必要了。這是理解Web和Native關係最為關鍵的地方。

明白了這個關鍵點之後,再來看看用戶群的劃分。我們簡單地把對完成一項任務或需求一個功能的用戶分為輕度和重度兩類。那麼對App的Web化要求會有兩種情況:

A.所有用戶都只需要Web這個級別的處理方式;

B.輕度用戶只需要Web這個級別的處理方式,重度用戶不滿足於這個級別的處理方式。

舉一個輕度用戶和重度用戶區別的例子:當你只需要隨便聽聽歌、看看視頻、記筆記的時候當然是用瀏覽器就夠了。但對有一定要求的用戶他一定會去用有端版的東西:聽歌我會用Foobar2000,因為很多無損格式瀏覽器是處理不了的(APE、FLAC等);看視頻我會用完美解碼,因為喜歡看1080p的片子需要GPU硬解,還需要輸出5.1的杜比音效,這些是瀏覽器提供不了的功能;記筆記我會用Evernote,但不會用它的瀏覽器版本而是客戶端版本,是因為只有客戶端版本才能方便地管理各種標籤,搜索內容也更快。

然後除了這些之外,很多小如螞蟻的工具性軟體提供的功能瀏覽器在可見的未來都是無法滿足的,電腦里的都能隨便列一堆:遠程電腦控制TeamViewer、遊戲內錄製視頻Fraps、虛擬光碟機DAEMON Tools、顯卡超頻MSI Afterburner、語音通信YY、即時聊天QQ(這貨也有web版,但功能和體驗被完爆)、簡化操作 按鍵精靈、下載 迅雷、視頻轉碼MediaCoder、圖片查看管理ACD See。

那麼我們回想一下已經Web化的App,再結合上面兩點也可以判斷出即將Web化的App了。但這同時會推導出一個很明顯的結論:總是有一些任務或功能是Web這個級別的處理方式不能滿足的,所以Web不可能完全替代Native,兩者會和PC平台那樣和諧共生。做輕應用的完全可以改用HTML5了,但也別因此就偏執地把一切東西都HTML5化,那樣只會弄得自己遍體鱗傷。


雖然預感大家會噴。。。但是這種鬼東西之前還是騙到了不少人的。。。比如扎克伯格


如果我沒記錯的話,三年前html5剛剛出來的時候也是這麼說的。


這句話20年前就在說了,只是當時不叫HTML5,敵人也不叫App。


對比一下 html 和 微軟的 Xaml,再看看谷歌的Dart,是不是有技術最終都殊途同歸的感覺?

瀏覽器最終就是變成一個虛擬機。那麼Html 當前的歷史地位是什麼?就是,各虛擬機(瀏覽器)能夠標準化的一部分的實現。但是它是犧牲了性能而達到的統一標準。離我們的終極目標:不犧牲性能的唯一標準,路還很遠。即使到了那時候,也無所謂瀏覽器或者app了。兩者其實就是同一個玩意。現在只是在逐漸互相靠攏,不存在一個淘汰另一個的說法。


HTML5不會取代native app,但地位會逐步發展至與native APP相等甚至大於APP的地位。

互聯網的極致是任何信息之間都是互聯的(此處單說信息),web的特性使得信息與信息之間的鏈接暢通無阻。而PC上的客戶端也好,手機上的APP也好,本質上是將部分信息封閉,阻斷了鏈接。只要HTML5技術發展到體驗能讓用戶滿意,由於其在很多方面成本更低的優勢,一定會有越來越多的服務提供者將陣地轉到HTML5。

PC端當年也是這個進化歷程,從很亂很爛的網站排版體驗,到後來大家慢慢的覺得web體驗已經很好不輸於同樣的服務部署成客戶端,再到後來性能和體驗能支撐頁游火爆發展。大家可以看看自己現在電腦上,除了生產工具和遊戲視頻等對專業性或者性能依賴很高的軟體,還會下載多少其他軟體呢?假如知乎推出PC客戶端,你會下載使用嗎?再進一步,在手機上,假如銀行客戶端、外賣、醫院、快遞查詢等都有服務良好的微信公眾號,你還會在手機上保留那些可能一個月才用一次的app嗎?沒錯,後面說的這個應該很熟悉,因為就在發生。手機上沉默的app越來越多,大多數人常用8-10個app已經慢慢成為大家的共識,已經有創業者們趨於理性,並不是非要做出個app才算是一家像樣的公司。越來越多的服務商或個人選擇開微信公眾號提供服務或創業已經是這個發展趨勢的很好例子。

腦洞再開大,假設穿戴式設備,如glass watch之類成為下一個大入口,在如此小的屏幕上,你能想像把眼睛眨來眨去,或者手指滑動撥動滾輪來選擇APP再進入服務門檻有多高嗎?在手機和手錶這種對即時性和精準性要求極高的場景,最大入口必然是Siri或微信之類的,所有的服務和信息都是高度整合一體化的,以純信息流的方式展現。那個時候,肯定是一個泛HTML的標準做為主流,native application作為補充。比如一個場景:你說餓了,穿戴式設備一定是按照你的喜好直接給你推薦餐館,確認後直接訂餐導航,如果不滿意直接幫你看外賣等。而不會是現在手機上這樣,要你先打開大眾點評選,然後跳到支付寶付個款,最後發現大眾點評導航不好用,切到百度或高德導航,甚至大眾點評沒想要的,你又切到餓了么。。。看著剛出的Apple watch那麼小屏幕上的眾多APP已經夠難受了,如果大家還是在上面搶著做APP,體驗絕對是災難性的。我覺得最後發展趨勢,一定是大多數服務和信息會以依附於操作系統或者超級APP的形式存在。

任何一個行業從野蠻發展跑馬圈地到成熟細分,肯定都是一個標準逐漸統一的過程。之所以現在native app地位遠高於HTML5,1是因為現在web技術確實離native app性能和體驗差距太大,2是因為現在跑馬圈地還處於尾聲,雖然大局已定,但很多垂直和細分領域仍充滿變數,很多人依然存著做入口的心,發著做平台的夢,3是因為整個創業投資收購的遊戲規則核心就是dau,你的商業模式不那麼靠譜都沒關係,只要能把用戶做起來,投資者或者接盤俠都會買單。

我想等上面三個條件不滿足後,創業和投資者更趨於理性,HTML5的地位一定會逐步提升的。而隨著HTML5的定稿和移動格局(特指手機)逐步明朗,這個三個條件兩三年內可能就會失效,再經過一段時間的市場發展,HTML5應該會在大部分創業者和企業的戰略地位越來越高而且高過native APP。

但這些都談不上取代或者消亡,是一個此消彼長的過程,而我,看好HTML5。

以下插一些我個人的吐槽:

我相信互聯網從業者,尤其是開發、產品、運營、數據等,對於native app這種服務提供方式應該會有很多共同的抱怨:

1.native app 開發成本高:ios和android工程師成本要高於web開發。

2.維護成本和迭代成本高:線上代碼有問題,web只需要修改上線即可,但APP改完,ios送蘋果審核至少一周,黃花菜都涼了,上架後還得重新攢評論沖榜,android要快些,不過你不花錢人家不給你上好位置;另外,隨著app的版本迭代,尤其是有重大框架調整時,你還需要花很大精力去維護以前老版本。

3.app的推廣也要花大筆的錢,當然web站照樣要花錢,但是導流選擇更多,議價能力也要好些。

4.數據監測、統計:因為我是做數據的,對此深有感觸。APP里統計的埋點或者SDK開發,尤其是不同的版本框架發生變化,統計規則發生調整時,都會帶來大量額外的工作,而且如果某個版本有疏漏,直接很長一段時間數據不準確無法使用,這對於要快速從數據中洞察而言,簡直是大大的障礙。另外從大數據的概念、角度來說,封閉的app生態,也不利於數據整合。

站在企業的角度,如果HTML或泛HTML技術達到在大多數情況下足夠讓用戶滿意的程度,我們何不去擁抱呢?


說 「徹底取代」 未免太武斷了。

就像 @vczh 說的,幾十年前就嚷嚷著 Web (B/S 模式) 要取代 Native (C/S 模式),無非就是什麼 「跨平台」、「方便部署」、「成本低」 云云。但是你看現在 PC 客戶端消亡了么?

Web App 本身所依賴的所謂超級入口(ChromeOS、瀏覽器、微信)不也是 Native 的么?像文中提到的 Intel 開源的 crosswalk 項目本身也是屬於 Native 範疇的。

況且由於 API 限制,Web App 有很多事也幹不了,比如像優化大師這種偏系統底層的應用。

所以甭管你是前端、後端,還是Android / iOS / WinPhone,這些 Native 的東西(C/C++)永遠都是不能丟的。

前段時間微信上看過一篇相關文章,個人感覺比較理性客觀:Web App 和 Native App 其實並不存在誰取代誰的問題,最終應該會達到某種平衡,因為各有所長。就像 PC 時代的 B/S 和 C/S 一樣。(本來想把文章鏈接貼出來的,但是在微信裡面沒搜到 ╮(╯▽╰)╭)

你們吶,不要總想搞個大新聞。

當初 NodeJS 之流出來,覺得自己終於可以做 「全端工程師」。現在 HTML5 標準出來,又 YY 統治全世界。。


這個人肯定沒認真做過移動平台應用。在移動平台上,native APP的形態,和web差別很大,比桌面上的差別更大。光HTML5現在那些規範,根本不夠,還可以發展好多年,都不一定能滿足。

hybrid可以滿足一部分需求,但絕對達不到完全替代。這當中的坑,雖然有第三方軟體幫你填,但還是或多或少要自己填。而且開發工具也有差距,生產力和開發native有差距。

對於複雜點的需求,你有空琢磨web和hybrid,估計native已經開發出來了,反正你只要支持2個平台。


巨頭們為什麼要推進web的發展?

想鞏固自己的地位靠自成一格行嗎?在自己的平台上提供更好的體驗,就可以橫行天下嗎?

對標準做更好的支持,讓更多的需求得到更快的滿足,這恐怕是無法迴避的選擇。


消失應該不會。

因為web只對用戶有好處,對開發商的好處很有限。

web需要適應各種瀏覽器,native只需要適應幾個平台。平台的數量是有限的,瀏覽器的種類跟行為卻是無限的,甚至同一個瀏覽器在不同平台下的行為都不同,雖然web只需要一個團隊而native需要三個團隊,但web的調試工作量與適配工作量遠遠大於nativeapp。所以最終 web 開發成本方面比native並不佔優勢。但web不方便竊取用戶隱私,不方便常駐後台統計用戶行為,不方便上傳用戶數據,不方便彈窗,不方面掃描用戶設備,不方便給用戶推廣告,不方便經常跳出來刷存在感等等,對互聯網提供商來說缺點很大。

但是用戶能得到的好處是:不需要經常下載app不需要經常更新app打開瀏覽器立等可用。在網速越來越快得4G甚至5G時代,這是個巨大的方便,還別說web不會在本機隨意的製造垃圾隨意寫sd卡根目錄,隨意常駐後台,隨意喚醒,字體可縮放等等。

對用戶來說,web端好處無疑很多。但對產商來說好處幾乎沒有。所以產商並沒有動力把應用寫成web,不但如此,產商通常還會刻意的誘導web用戶安裝native應用。

很少有開發商敢把web端做得跟原生一樣好用,他們害怕一旦用戶習慣了這個,就再也沒有動力下載他們的nativeapp了,所以其實大家都在刻意的簡化以及劣化web端體驗,以避免用戶對web端形成依賴,在這個主觀行為下,現在比較web跟native的用戶體驗沒有意義。只有產商真心實意的想把業務放到web上作主,才有動力大幅度改善web版本的用戶體驗。

目前來說,多數互聯網產商寫web端的動力僅僅是推廣自己的nativeapp,而不是希望你愉快的使用web,這就可以理解為什麼很多互聯網服務的web版都用醒目的方式強推自己的nativeapp了。


這個預判和兩年前人們問:如何看待三年內微信如何取代微博?是一個問法,根本就沒弄明白這兩個東西是怎麼回事,或者是帶有某種特殊目的的炒作,僅此而已!


題主,這裡有個網站你可以體驗一下,用手機瀏覽器打開。 https://flipboard.com/@flipboard/flipboard-picks-8a1uu7ngz

有點耗流量,建議在WIFI環境下瀏覽。這是前不久flipboard做的一次嘗試,用HTML5的canvas模擬原生APP效果,responsive的兼容多種尺寸設備。


三年後還有手機?不是都用手錶了么


我覺得新浪微博的 iPhone timeline 一定是 web view ,不然為什麼總是卡


...怎麼搞前端搞web的,每次出來個啥子玩意,就覺得要取代後端,一統天下,啥啥啥的.- -看的好累.


個人見解,很多年前在移動終端還沒現在這麼多普及的的時候,到處都能看到有人說桌面應用會消失,以後電腦只用裝一個瀏覽器就可以了。這麼多年了,PC上你或許是可以只用裝一個瀏覽器就足夠,但是誰會這麼做。

HTML5剛開始出現應用的時候,又吵著說以後native app以後會被替代。沉靜幾年後,現在HTML 5定稿,又有人開始這麼吵。看一下說這話的人有幾個是正真做技術的。每次出來一個新東西,總是一驚一乍的,還分析的頭頭是道。

一個事物能不能被替代不是看這個事物本身有多厲害,能提供多少功能,它還受制於其他很多因素。它的生態鏈至關重要,就像大家都說Java爛,可它仍然很活躍。


這明顯是在刷存在感。

就像小米說十年能替代蘋果,董明珠說我要跟小米對賭十億,還有台灣說要反攻大陸。。。


這是在給web開發者打雞血啊,強心劑,快不行了


推薦閱讀:

開源HTML5拓撲圖繪製工具?
為什麼視頻網站在桌面端依然採用Flash而不是HTML5?
如何看待 HTML5 開源遊戲引擎 Egret,HTML5 遊戲開發的前景如何?
知乎回答問題編輯框用 Ctrl+V 粘貼圖片是如何實現的?
HTML靜態頁面與CSS該如何審查代碼?

TAG:互聯網 | 移動互聯網 | 移動應用 | HTML5 |