精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開(kāi)通VIP
前端框架之爭(zhēng)丨除了Vue、Angular和React還有誰(shuí)與之爭(zhēng)鋒

作者:葡萄城控件技術(shù)團(tuán)隊(duì) 來(lái)源:葡萄城官網(wǎng)

當(dāng)今涌出的大量框架讓人眼花繚亂不知如何選擇,今天將比較五個(gè)最流行的前端JavaScript框架,并作出概述,介紹其主要功能、工具、學(xué)習(xí)曲線及其他因素,幫助您做出衡量和選擇。

人氣衡量標(biāo)準(zhǔn)

據(jù)2020年JavaScript調(diào)查狀況通過(guò)框架使用情況確定框架流行程度。調(diào)查由23,765名受訪者完成,結(jié)果如下:

  1. React:80%
  2. Angular:56%
  3. Vue.js:49%
  4. Svelte:15%
  5. PreACT:13%

此外還考慮了同一項(xiàng)調(diào)查中的“框架意識(shí)”:

  1. React:100%
  2. Angular:100%
  3. Vue.js:99%
  4. Ember:88%
  5. Svelte:86%

前端框架的定義

出于本文的目的,文本將使用Martin Fowler提供的定義:

庫(kù)本質(zhì)上是開(kāi)發(fā)者可以調(diào)用的一組函數(shù),通常組織成類。調(diào)用執(zhí)行一些工作,并將控制權(quán)返回給客戶端。

框架體現(xiàn)抽象設(shè)計(jì),內(nèi)置更多行為,開(kāi)發(fā)者通過(guò)子類化或插入自己的類將行為插入到框架中的不同位置使用,框架則調(diào)用這些點(diǎn)的代碼。

1. React

由Facebook于2013年發(fā)布,當(dāng)今最流行的前端框架。應(yīng)用于Facebook,Netflix和Airbnb等公司產(chǎn)品,擁有大量的開(kāi)發(fā)人員和豐富的使用學(xué)習(xí)資源。

React相關(guān)工具很多,該團(tuán)隊(duì)提供的CLI用于便捷搭建一個(gè)新項(xiàng)目,工具擴(kuò)展適用于Chrome和Firefox的。包含很多第三方軟件包完成各種各樣的任務(wù)(例如,路由,處理表單和動(dòng)畫),以及幾個(gè)基于React的框架,例如Next.js和Gatsby。

React奉行“一次學(xué)習(xí),隨處編寫”的理念。它可用React Native來(lái)為移動(dòng)應(yīng)用程序提供動(dòng)力,用 Node在服務(wù)器上進(jìn)行渲染,有出色的SEO支持。

主流思想認(rèn)為React其太簡(jiǎn)單:它僅與應(yīng)用程序的視圖層有關(guān),而且都交給了開(kāi)發(fā)人員,對(duì)過(guò)高的自由度也褒貶不一。

如果進(jìn)行學(xué)習(xí),學(xué)習(xí)曲線適度。React鼓勵(lì)開(kāi)發(fā)者使用各種函數(shù)式編程范例(例如不變性和純函數(shù)),需要開(kāi)發(fā)人員在進(jìn)行構(gòu)建前需要對(duì)基本概念有基本了解

總體來(lái)說(shuō),如果你對(duì)react的自由度滿意,那么對(duì)于任何規(guī)模的數(shù)據(jù)驅(qū)動(dòng)應(yīng)用程序來(lái)說(shuō),都是佳選。

2. Angular

作為Google在前端框提供的產(chǎn)品,于10年以AngularJS(或Angular 1)的形式誕生,并立即受到熱捧,主要由于開(kāi)發(fā)人員能夠構(gòu)建現(xiàn)在稱為單頁(yè)應(yīng)用程序的第一個(gè)框架。

為解決性能問(wèn)題和構(gòu)建大型JavaScript應(yīng)用程序的挑戰(zhàn),Google重寫了AngularJS,于16年發(fā)布了Angular 2(如今僅是Angular)。因不能簡(jiǎn)單遷移,因此AngularJS和Angular成為兩個(gè)獨(dú)立的框架。

Angular在前端框架占據(jù)了重要地位,它經(jīng)過(guò)嚴(yán)格測(cè)試已由Google和Microsoft等公司投入生產(chǎn)使用,相關(guān)線上資源也十分豐富。

不同于react僅處理視圖層,Angular提供了完整的解決方案構(gòu)建單頁(yè)客戶端應(yīng)用程序。Angular組件實(shí)現(xiàn)雙向數(shù)據(jù)綁定,用以偵聽(tīng)事件并在父組件和子組件之間同時(shí)更新值。模板是HTML的一部分,允許使用特殊語(yǔ)法來(lái)利用Angular的許多功能。TypeScript是Angular開(kāi)發(fā)的主要語(yǔ)言,因此該框架很適合企業(yè)及應(yīng)用。

從相關(guān)工具的角度來(lái)說(shuō),Angular提供了高度完善的CLI來(lái)初始化,開(kāi)發(fā),構(gòu)建和維護(hù)其應(yīng)用程序,還有Chrome和Firefox Dev Tools擴(kuò)展可用于調(diào)試Angular應(yīng)用程序。

但是從學(xué)習(xí)角度說(shuō),Angulard的學(xué)習(xí)曲線最為陡峭。開(kāi)發(fā)者需熟悉TypeScript才能開(kāi)展工作,對(duì)于新手而言并不是最佳選擇,更適合在團(tuán)隊(duì)中發(fā)揮作用。

3. Vue.js

注:統(tǒng)計(jì)數(shù)據(jù)適用于Vue v2,版本3可用,須以安裝vue@next。

Vue是一個(gè)用于構(gòu)建用戶界面和單頁(yè)應(yīng)用程序的模型-視圖-視圖模型(MVVM)前端框架。由Evan You撰寫,并于2014年首次發(fā)布。

Vue現(xiàn)已被阿里巴巴、Gitlab和Adobe等公司用于生產(chǎn)。可以稱它為所有框架中最好的文檔,其論壇是獲得編碼問(wèn)題幫助的絕佳資源。Vue在PHP界流行且是Laravel框架的一部分。

Vue的核心賣點(diǎn)是從頭開(kāi)始設(shè)計(jì),可逐步采用,即Vue可增強(qiáng)常規(guī)網(wǎng)頁(yè)功能或構(gòu)建完善單頁(yè)應(yīng)用,同時(shí)Anugular可基于HTML可將屬性綁定到基礎(chǔ)數(shù)據(jù)模型,提供單個(gè)文件組件。

從相關(guān)工具的完整程度來(lái)講,一方面官方的CLI可以創(chuàng)建腳手架和開(kāi)發(fā)Vue應(yīng)用程序,此外devtools擴(kuò)展可用于Chrome和Firefox來(lái)幫助調(diào)試。不同于React,Vue提供了用于路由和狀態(tài)管理的官方程序包,提供了一種便捷標(biāo)準(zhǔn)化處理方式,同時(shí)各種第三方工具和基于Vue的框架。

但與其他框架相比入門門檻很低,適用于經(jīng)驗(yàn)不足的開(kāi)發(fā)人員。

4. Svelte

由Rich Harris于16年發(fā)布,作為前端框架新成員,采用不同于其他框架的方法來(lái)構(gòu)建Web應(yīng)用程序。

它避開(kāi)虛擬DOM的概念,在構(gòu)建期間將代碼編譯到小型原始JavaScript模塊中,開(kāi)發(fā)者的應(yīng)用程序狀態(tài)更改該模塊隨之更新DOM。實(shí)現(xiàn)了體積小速度快的應(yīng)用。

Rich Harris的學(xué)習(xí)曲線很低,但社區(qū)規(guī)模小,但是它已被IBM和《紐約時(shí)報(bào)》等公司用于生產(chǎn),未來(lái)很有潛力。

由于其成熟度較低只作為小型項(xiàng)目?jī)?yōu)選,但情況逐漸改變。SvelteKit處于公開(kāi)測(cè)試階段,社區(qū)正在不斷發(fā)展壯大。盡管Svelte目前年幼,但開(kāi)發(fā)者應(yīng)該注意關(guān)注。

5. Ember.js

最后介紹的Ember,自前端框架問(wèn)世就已經(jīng)存在。在11年最初發(fā)布,但依舊在開(kāi)發(fā)界流行:

它的歷史可以追溯到React,Vue,Svelte和其他所有公司之前。該框架從未出現(xiàn)在前端炒作的最前沿,但依舊穩(wěn)步前進(jìn)。合作對(duì)象包括Qonto和CLARK,是2020年歐洲前50大金融科技公司中的兩家。

Ember與Angular類似在應(yīng)用程序開(kāi)發(fā)中采用更多包含電池的方法,并提供構(gòu)建現(xiàn)代前端JavaScript應(yīng)用程序所需的一切。遵循六個(gè)星期的發(fā)布周期且穩(wěn)定性極好。

從相關(guān)工具講,相關(guān)工具眾多,從Ember CLI到Ember Inspector,還有許多可用的第三方庫(kù)。

其社區(qū)規(guī)模并不比其他流行框架社區(qū),但它的成員參與度高,并且擁有論壇和Discord服務(wù)器,尋求編碼問(wèn)題的幫助很容易。

如果開(kāi)發(fā)者要進(jìn)行學(xué)習(xí)的話,學(xué)習(xí)曲線中等至陡峭,對(duì)于初學(xué)者或較小的項(xiàng)目,Ember可能不是最佳選擇。它具有許多活動(dòng)部件,并且在組織事物時(shí)沒(méi)有提供很大的靈活性,合團(tuán)隊(duì)工作的一部分。

結(jié)論

本文對(duì)當(dāng)今市場(chǎng)上五個(gè)最受歡迎的前端框架進(jìn)行了比較,為開(kāi)發(fā)者按照個(gè)人能力和項(xiàng)目需求進(jìn)行選擇時(shí)提供一個(gè)更好的參照。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Web前端開(kāi)發(fā)需要學(xué)習(xí)什么
2021 年最佳 JavaScript 框架排名
JavaScript領(lǐng)域的2021年度總結(jié)
最佳的 JavaScript 前端框架、庫(kù)和工具
Vue.js 為何能逆襲 Angular 和 React 而主導(dǎo)前端?
前端開(kāi)發(fā)者路線圖(2022 年版)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

主站蜘蛛池模板: 搜索| 泌阳县| 桑植县| 昭通市| 磐安县| 恩平市| 怀宁县| 富锦市| 綦江县| 南开区| 衡东县| 长海县| 灵台县| 庆元县| 芜湖市| 揭东县| 江口县| 黔西| 蓬安县| 马尔康县| 昌平区| 尼木县| 南华县| 全椒县| 芜湖县| 乌拉特中旗| 东兴市| 临安市| 遂溪县| 荥经县| 尖扎县| 迁西县| 隆安县| 无极县| 屯留县| 建阳市| 安乡县| 昆山市| 盖州市| 滨海县| 洪洞县|