自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

專訪騰訊Web前端高級(jí)工程師曾健:Node.js還是H5?

原創(chuàng)
移動(dòng)開(kāi)發(fā)
在曾健看來(lái),一個(gè)APP的核心功能應(yīng)該通過(guò)Native的方式去實(shí)現(xiàn),以此保證用戶體驗(yàn)的穩(wěn)定性。而一些非核心功能—需要頻繁更新、優(yōu)化的用H5來(lái)實(shí)現(xiàn),在很大程度上提高了研發(fā)效率。

隨著移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)的不斷豐富,無(wú)論是原有的NativeApp還是傳WebApp都無(wú)法滿足業(yè)當(dāng)下的務(wù)需求,隨之兼具“Native App良好用戶交互體驗(yàn)”和“Web App跨平臺(tái)開(kāi)發(fā)”的雙重優(yōu)勢(shì)的HybridApp成為各大互聯(lián)網(wǎng)公司的新寵。

為什么是Hybrid App

市場(chǎng)上一些主流移動(dòng)應(yīng)用都是基于Hybrid App的方式開(kāi)發(fā),比如工商銀行、百度搜索、東方航空等。

在曾健看來(lái),一個(gè)APP的核心功能應(yīng)該通過(guò)Native的方式去實(shí)現(xiàn),以此保證用戶體驗(yàn)的穩(wěn)定性。而一些非核心功能—需要頻繁更新、優(yōu)化的用H5來(lái)實(shí)現(xiàn),在很大程度上提高了研發(fā)效率。

騰訊應(yīng)用寶作為國(guó)內(nèi)最大的APP分發(fā)平臺(tái)之一,日均分發(fā)量達(dá)到1.2億,其主要的幾個(gè)table—首頁(yè)、發(fā)現(xiàn)、游戲……都是通過(guò)Native來(lái)實(shí)現(xiàn)的。而類似娛樂(lè)、讀書(shū)以及禮包中心等小的功能則通過(guò)H5實(shí)現(xiàn)。

由于上一輪的企業(yè)信息化在PC端大多選擇了B/S架構(gòu),這也和Web App通過(guò)手機(jī)瀏覽器訪問(wèn)的方式無(wú)縫過(guò)渡。然而WebApp在3D特效、頻繁的輸入輸出體驗(yàn)上并不夠優(yōu)秀。曾健告訴記者:“比如下拉刷新、左右滑動(dòng)這些用H5實(shí)現(xiàn)還是比較困難的。所以在需要這種體驗(yàn)時(shí)我們就會(huì)選用更加合理的技術(shù)。

在平面結(jié)構(gòu)布局以及穩(wěn)定性方面,曾健認(rèn)為:“布局是H5天生的優(yōu)勢(shì)。在穩(wěn)定性方面H5的WebView會(huì)導(dǎo)致APPCrash提高,因此我們把Webview做成一個(gè)獨(dú)立的進(jìn)程,就算它Crash也不會(huì)影響AppCrash,然后在這個(gè)基礎(chǔ)上再做一些統(tǒng)計(jì)上報(bào)。另外就是利用QQ瀏覽器X5團(tuán)隊(duì)的內(nèi)核來(lái)做,這樣Crash率會(huì)相對(duì)好一些。

最近兩三年出現(xiàn)了許多開(kāi)源的H5框架,許多框架都被打上“優(yōu)秀”,“不可不錯(cuò)過(guò)”的標(biāo)簽。而曾健告訴筆者:“現(xiàn)在手機(jī)屏幕大小有限,需要展示的東西并不多,要么是一個(gè)列表要么是一兩個(gè)模塊,那種復(fù)雜的框架或者模塊管理,都不是特別好的使用場(chǎng)景,而在拉數(shù)據(jù)展示或者直接取源生js可能更好一些。所以在做純粹H5相關(guān)的時(shí)候未必要使用別人的框架,你只要思考他是怎么實(shí)現(xiàn)的,然后把自己想要的東西這么做就可以了。

Node.js還是H5?

Node.js還是H5這可能是許多前端工程師都難以抉擇的問(wèn)題,有人認(rèn)為Node.js不夠穩(wěn)定,不夠成熟,有人認(rèn)為H5不過(guò)是舊瓶裝新酒而已。在曾健說(shuō):”騰訊的一些團(tuán)隊(duì)在使用Node.js,但是沒(méi)有大規(guī)模使用。而阿里,百度已經(jīng)有一些業(yè)務(wù)已經(jīng)在用了。

node.js給前端開(kāi)發(fā)提供一種新的方向,在一些成功的實(shí)踐中可以看到,它對(duì)于研發(fā)效率的提升的作用是不可磨滅的。但是在做一些線上業(yè)務(wù)時(shí),工程師除了把它做出來(lái)以外,還要關(guān)心一些運(yùn)維上的東西;比如服務(wù)器掛了,硬盤(pán)掛了……這對(duì)于工程師的要求會(huì)大大提高,有很多方面的東西需要進(jìn)行自我補(bǔ)充,才能把線上服務(wù)做起來(lái)。“

他還指出:”雖然Node.js只需要一套js代碼,前后臺(tái)就都可以跑起來(lái),從而提升研發(fā)效率。并且在高并發(fā)服務(wù)時(shí)也有其自身的優(yōu)勢(shì)。但它的在于核心數(shù)據(jù)存儲(chǔ)方面還是需要C++來(lái)做,在大量訪問(wèn)時(shí)還是C++比較優(yōu)秀。”

小結(jié):

無(wú)論是NativeApp還是HybridApp又或者Node.js和H5都是用來(lái)開(kāi)發(fā)的技術(shù)手段??傆腥苏f(shuō)這樣的一句話,技術(shù)沒(méi)有好壞高低,只要能實(shí)現(xiàn)功能就是好的技術(shù)。否則再優(yōu)秀的技術(shù)不再合理的場(chǎng)景下使用都無(wú)法達(dá)到最優(yōu)秀的效果。

責(zé)任編輯:chenqingxiang 來(lái)源: 51CTO
相關(guān)推薦

2022-08-23 08:00:00

高級(jí)工程師軟件工程師代碼庫(kù)

2020-12-18 11:55:27

編程面試

2023-05-29 16:09:22

JavaScript技能瀏覽器

2015-05-11 09:38:42

.NET高級(jí)工程師面試題

2023-08-11 13:25:00

JavaScript

2018-09-20 10:55:38

數(shù)據(jù)庫(kù)順豐高級(jí)工程師

2010-12-24 10:47:48

網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)師

2009-04-10 13:35:38

吳亮《JavaScript

2017-11-06 08:52:13

管理崗位騰訊

2010-12-24 10:50:43

系統(tǒng)架構(gòu)設(shè)計(jì)師

2011-01-04 11:48:04

系統(tǒng)分析師

2015-08-26 14:18:25

Web前端工程師價(jià)值

2021-03-22 15:53:47

程序員IT互聯(lián)網(wǎng)

2011-08-09 09:48:20

JavaScript

2012-04-23 09:21:11

NetflixAmazonQCon

2010-12-29 11:15:51

信息系統(tǒng)項(xiàng)目管理師

2010-01-13 10:10:07

Web前端工程師

2015-03-16 16:01:40

Web前端前端工程師Web

2019-08-29 10:58:02

Web 開(kāi)發(fā)框架

2015-01-28 00:35:00

Coursera大數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)