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

jQuery已“死”?為清除技術(shù)債,我們刪掉了前端所有jQuery依賴

開發(fā) 新聞
Matt 在推特上分享了幾組數(shù)據(jù),說明了在刪除 jQuery 后一些關(guān)鍵指標(biāo)得到了優(yōu)化。

近期,英國(guó)公共部門信息網(wǎng)站 GOV.UK 前端開發(fā)主管 Matt Hobbs 宣布該公司刪除了 jQuery 作為所有前端應(yīng)用程序的依賴項(xiàng),這意味著“在所有 13 個(gè) FE 應(yīng)用程序中,JS 大小減少了 32 KB(31% ~49% 之間)”。

一些關(guān)鍵指標(biāo)得到優(yōu)化

Matt 也在推特上分享了幾組數(shù)據(jù),說明了在刪除 jQuery 后一些關(guān)鍵指標(biāo)得到了優(yōu)化。

  • 移除頁(yè)面標(biāo)簽限制并查看所有頁(yè)面 RUM 數(shù)據(jù), 75% 用戶的頁(yè)面都有類似的下降:

  • 在 75% 的頁(yè)面中僅檢查 Android 用戶,可以看到 JS 長(zhǎng)任務(wù)改進(jìn)了 7%:

  • 50% 用戶的移動(dòng)設(shè)備上的 JS Long Tasks 有 10% 的改進(jìn):

  • 而對(duì)于 95% 用戶,阻塞時(shí)間則減少了 10% :

“這些用戶會(huì)遇到嚴(yán)重不利的網(wǎng)絡(luò)和設(shè)備條件,每一次性能提升對(duì)他們來說尤其重要?!盡att 說道。

根據(jù) Matt 說法,刪除 jQuery 的本意是清理技術(shù)債?!八畛跏菫榱酥С譃g覽器而存在的,但隨著時(shí)間的推移,情況發(fā)生了變化,所以 bits 可以被刪除。我想在這之后會(huì)重新評(píng)估,看看還有什么是不再需要的?!?Matt 表示。

“大多數(shù)事情都不再需要 jQuery 了”

jQuery 是一套跨瀏覽器的 JavaScript 庫(kù),可以簡(jiǎn)化 HTML 與 JavaScript 之間的操作。截至 2021 年,有將近 84% 的移動(dòng)頁(yè)面使用 jQuery。jQuery 是最受歡迎的 JavaScript 庫(kù)之一,它的一些操作已經(jīng)反映在標(biāo)準(zhǔn) Web API 中。

JQuery 創(chuàng)建于 2006 年,主要是為了幫助開發(fā)者處理當(dāng)時(shí)瀏覽器的不足。當(dāng)時(shí)谷歌瀏覽器還未流行,人們飽受 Internet Explorer 之苦。而 JQuery 開發(fā)者可以使用 CSS 選擇器和函數(shù)可以輕松地遍歷和操作 DOM,

此外,JQuery 還提供了一些開箱即用的函數(shù)來做動(dòng)畫 DOM 元素,而無需弄亂 CSS。在沒有 jQuery 之前發(fā)出 AJAX 請(qǐng)求很麻煩,但使用 JQuery 只需幾行代碼即可完成。JQuery 提供了一個(gè)可以在大多數(shù)瀏覽器上工作的 API,這在當(dāng)時(shí)使用 JavaScript 是很難實(shí)現(xiàn)的。

但在過去的幾年里,JavaScript 已經(jīng)成熟了很多,它支持很多新的 API,其社區(qū)也構(gòu)建了很多庫(kù)來填補(bǔ) jQuery 可能留下的任何空白。

現(xiàn)在,開發(fā)者幾乎可以在原生 JavaScript 中做任何 jQuery 可以做的事情。例如,可以使用帶有 querySelector 和 querySelectorAll 的 CSS 選擇器語法來選擇元素,使用 classList API 在元素上添加、刪除和切換類,使用 addEventListener 將事件處理程序附加到 DOM 元素和窗口等等。

同時(shí)隨著 Angular、Vue 和 React 等框架的出現(xiàn)和流行,一直未有特別創(chuàng)新的 jQuery 更顯“老態(tài)”?!皩?duì)我來說,他們 (jQuery ) 就像是那個(gè)隨著時(shí)代變遷沒有更新知識(shí)的老灰胡子。”有網(wǎng)友直言。

“現(xiàn)在,大多數(shù)事情都不再需要 jQuery 了?!庇芯W(wǎng)友評(píng)論道,“我個(gè)人發(fā)現(xiàn)普通的 JS API 和 fetch 甚至比 jQuery 的東西更干凈。人們?nèi)匀怀鲇诹?xí)慣使用 jQuery,是因?yàn)閿[脫它需要做很多工作?!?/p>

jQuery 已“死”?

近幾年,業(yè)內(nèi)對(duì)于“jQuery 是否已死”的討論一直沒停過。實(shí)際上,一些大型、資金充足的網(wǎng)站已經(jīng)“用腳投票”,正在逐漸擺脫對(duì) jQuery 的依賴。

2018 年,GitHub 宣布從 jQuery?!霸缙?,jQuery 對(duì)我們意義重大?!盙itHub 前端工程團(tuán)隊(duì)在方式發(fā)布的文章里表示?!霸?GitHub 的早期階段,jQuery 讓小型的開發(fā)團(tuán)隊(duì)能夠快速進(jìn)行原型設(shè)計(jì)并開發(fā)出新功能,而無需專門針對(duì)每個(gè) Web 瀏覽器調(diào)整代碼?!?/p>

但隨著 GitHub 成長(zhǎng)為一家擁有數(shù)百名工程師的公司,jQuery 帶來的價(jià)值已經(jīng)隨著時(shí)間的推移而下降。比如技術(shù)債會(huì)隨著依賴項(xiàng)的增多而增長(zhǎng),給企業(yè)帶來很大的維護(hù)成本。因此,GitHub 最終決定刪除 jQuery。不過,GitHub 沒有選擇另外的庫(kù)或框架,而是使用標(biāo)準(zhǔn)的瀏覽器 API 來實(shí)現(xiàn)。

不只 GitHub,Bootstrap 最新版本也將刪除 jQuery。

盡管被認(rèn)為已經(jīng)過時(shí),但 jQuery 仍然是占主導(dǎo)地位的 JavaScript 庫(kù)。今天的開發(fā)人員可能沒有意識(shí)到在使用 jQuery,因?yàn)樗磺度朐诹嗽S多大型開源項(xiàng)目里面,其中最著名的就是 WordPress。

“大多數(shù)網(wǎng)站都不需要復(fù)雜的開發(fā)框架,它們大多是具有一些動(dòng)態(tài)行為的靜態(tài)網(wǎng)站,這種網(wǎng)站通常用 WordPress 編寫。jQuery 在這個(gè)場(chǎng)景下仍然很流行,因?yàn)樗群?jiǎn)單又有效,人們覺得沒必要停止使用它?!眏Query 開發(fā)者 Micha Gobiowski-Owczarek 在接受外媒采訪時(shí)說道。

Micha Gobiowski-Owczarek 也明確表示,為了不與瀏覽器沖突,jQuery 不會(huì)修改原生原型,而是用 jQuery 包裝器對(duì)象包裝 DOM 節(jié)點(diǎn),每個(gè)操作都會(huì)創(chuàng)建一個(gè)新的包裝器對(duì)象。大多數(shù)情況下,這并不重要,但對(duì)于具有大量 DOM 操作的、非常復(fù)雜的應(yīng)用程序來說,可能會(huì)成為一個(gè)問題。

未來的很長(zhǎng)一段時(shí)間里,jQuery 還繼續(xù)會(huì)是 WordPress 的一部分,因?yàn)樗茈y在不破壞向后兼容性的情況下將它刪除。但一些改變已經(jīng)發(fā)生,如 WordPress 創(chuàng)建的 Gutenberg 編輯器不依賴于 jQuery。

隨著時(shí)間的推移, WordPress 肯定會(huì)逐步更新技術(shù),這是一個(gè)漸進(jìn)的過程,jQuery 的最終去留也很難說。但不可否認(rèn)的是,jQuery 為前端帶來了重大的影響。

責(zé)任編輯:張燕妮 來源: 網(wǎng)易科技
相關(guān)推薦

2017-03-16 13:17:54

TDD代碼開發(fā)

2023-03-29 08:13:17

2024-09-05 10:09:04

2020-02-18 10:00:15

數(shù)據(jù)庫(kù)工具技術(shù)

2020-08-12 07:53:39

技術(shù)債技術(shù)科學(xué)

2025-02-18 11:15:12

2011-05-11 09:01:29

面向?qū)ο蠹夹g(shù)函數(shù)式語言

2011-01-07 10:18:28

RSSWeb

2023-02-06 07:37:29

Java編程語言

2022-09-15 10:44:42

SidecarIstioeBPFizer

2014-01-06 09:36:53

IT部門BYODBYOA

2012-02-20 10:12:09

Java

2018-04-08 15:17:23

2024-12-27 12:31:55

前端AI編程

2023-04-27 07:34:36

前端工程師前端已死

2010-09-30 09:04:18

jQueryMooTools

2021-01-19 10:58:15

漏洞管理漏洞數(shù)據(jù)泄露

2011-12-07 10:20:19

Email新聞

2015-08-31 10:59:22

2013-01-31 17:23:20

RIM黑莓BB10
點(diǎn)贊
收藏

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