當前位置:首頁 » 網頁前端 » 前端模板比較
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

前端模板比較

發布時間: 2022-08-30 10:46:40

A. 幾個Web前端開發框架的比較

Bootstrap

Bootstrap是目前可用框架中無可爭議的領導者。其人氣日益增長,你可以放心的選擇這個框架,而不必擔心項目會失敗,因為具有廣泛使用基礎的框架,不太可能被拋棄。

  • 創造者:YOOtheme

  • 發行:2013

  • 當前版本:3.0.0

  • 人氣:GitHub GitHub上有9,422顆星

  • 說明:「用於開發快速而強大的Web界面的輕量級和模塊化的前端框架」。

  • 核心概念/原則:RWD,移動端優先

  • 框架大小:326.9 KB(如果包含uikit-icons.min.js與SVG圖標相關的功能,則為384.4KB)

  • 預處理器:少,Sass

  • 響應式布局:是

  • 模塊化:是

  • 啟動模板/布局:是

  • 圖標集:UIkit自帶SVG圖標系統和類庫,其中包含越來越多的大綱圖標。

  • 額外/附加組件:是

  • 獨特的組件:Article, Flex, Cover, HTML Editor

  • 文件:好

  • 自定義:高級GUI定製程序僅在版本2(以前的版本)中可用

  • 瀏覽器支持:Chrome,Firefox,Safari,IE9 +

  • 許可證:MIT

  • UIkit說明

    UIkit成功應用在許多WordPress主題中。它提供了靈活和強大的手動定製機制(以前版本的框架還提供了高級GUI定製程序)。

    什麼是最適合你的框架?

    在選擇框架時,可以從以下幾個方面考慮:

  • 所選的框架有足夠的人氣嗎?更多的人氣意味著更多的人參與項目,也意味著有更多的教程和社區文章、更多的實例和網站、更多的第三方擴展、更好的相關的Web產品可與其集成。受歡迎程度也意味著框架更具前瞻性,因為具有更大社區的框架不太可能被拋棄。

  • 框架是否正在積極發展?一個好的框架需要不斷地使用最新的web技術,特別是在移動端方面。

  • 框架是否達到成熟?如果一個特定的框架在現實項目中還沒有被使用和測試,那麼將其用於你的專業項目,可能不是一個明智的選擇。

  • 框架是否提供了良好的文檔?為了方便學習過程,總是需要良好的文檔。

  • 框架的特異性是什麼?這里的要點是,與具有高級別特異性的框架相比,更通用的框架更容易使用。在大多數情況下,最好選擇一個應用最小樣式的框架,因為它更容易自定義。與重寫現有的CSS規則相比,添加新的CSS規則是一個更方便有效的做法。

  • 如果你還不確定使用哪個框架,那麼可以採用混合搭配的方式。當某個特定的框架不能滿足你的需求時,可以混合使用兩個或多個項目的組件。

    最後值得一提的是,現在Flexbox和Grid Layout在主流瀏覽器的最新版本中得到很好的支持,比以往任何時候都更容易構建復雜的布局。這可能會鼓勵更多的開發人員放棄前端框架,從頭開始編寫他們自己想要的布局。

    來源:網頁鏈接

    B. 前端模板引擎與各種流行框架之間有什麼區別

    第一步為什麼要使用模版引擎
    1、前端模版引擎和前端框架不一樣
    2、緩存模板結構,在數據層操作完直接套用模板輸出到客戶端界面中
    3、減少dom操作的異常、減少拼接html的痛苦、減少各瀏覽器下dom操作的延遲差異

    C. 現在主流的前端框架有哪些

    現在前端主要流行三大框架。給大傢具體分析一下這三個前端框架:

    1、Angular

    大家眼裡比較「叼」的框架,甚至有人說三大框架中只有她能稱的上一個完整的框架,因為他包含的東西比較完善,包含模板,數據雙向綁定,路由,模塊化,服務,過濾器,依賴注入等所有功能。對於剛開始學習使用框架的小夥伴們,可以推薦這個框架,學會之後簡直能顛覆之前你對前端開發的認知。使用 TypeScript能夠提高代碼可維護性,有利於後期重構。雙向數據流很方便,但是等業務復雜之後,你可能就搞不清楚數據流了。還有令人不開心的臟值檢查,以及directive的封裝並沒有解決視圖與數據關系完全分離,有時候還要用$digist強制觸發檢測。

    2、React

    這個框架本身比較容易理解,他的結構很清晰,就是由十幾個API組成,然後非同步渲染,我們只需要處理好介面和維護就好了,但是很多人反映上手還是有一定的的難度的。React是單向數據流,代碼寫起來會較雙向數據流的多一些,但是同樣的排查問題時思路清晰很多。

    3、Vue

    號稱是最簡單,最容易上手的框架,同時也是行內的大趨勢,還可以用來開發最火的小程序。畢竟用這神器,代碼碼的飛快,項目也能快速上線。同時他也是雙向數據流。有些人認為Vue是Angular和React的結合,既有Angular的模板語法也有React的組件化體系。

    當你學會其中某個框架之後,你再轉用其他框架的時候,學會是很容易的,因為方法都是大同小異的。具體的使用還是得看公司的項目適合或者要求哪個框架。

    D. 現在比較常用的前端框架有哪些

    bootstrap是twitter出的一款不錯的UI框架,或者與其說是框架不如說是類庫(lib),當然這里邊牽扯到一個「究竟什麼是框架什麼是類庫?」的問題,我們暫時不談。畢竟是有大公司背景的代碼堆,我覺得沒什麼「落伍」可言。
    angular是前兩年之內突然火得一塌糊塗的一個fe框架,這個我覺得可以算的上是真正意義上的框架了,MVVM雙向綁定,包括它擁有足夠完善的社區、生態,甚至chrome上都有很多好用的相關插件(這一點可以說是佔了google出品的光),比較完整的大型項目都是可以考慮引入的。但如果你的網站只是做一些輕量級的東西,殺雞焉用宰牛刀吧我覺得。
    backbone主要針對的MVC中的M層,至少我是這么理解的。對UI層它幾乎沒什麼太多的限制,一方面給出了coder自由度進行發揮,另一方面也等於在這方面框架本身對開發沒提供什麼太大的幫助。我覺得這更像是一個高手向的框架,另外對於underscore前端模板那一套東西,說實話作為一名php java啥都能寫的FE我始終覺得這套東西有那麼一種純JS工程師的一廂情願的意味。這是個人看法了,不一定準確,況且有人會搬出ajax動態渲染時 前端模板的作用來反駁我,別急著反駁,至少往下看完我說的話。
    相比之下,react可以說是一個在MVC中V層做的十分出色和新穎的框架了,獨特的jsx編譯機制就已經讓你的代碼變得高大上了,我是覺得這個類庫在UI層做的更徹底更專業,或者說讓FE的代碼更專業了。更何況,react比angular更年輕,而且同樣擁有大公司背景,react native一出更是讓JS工程師的地位取得了革命性的提升,(不要跟我提phonegap,用過兩個東西後你會明白,react打包的app性能甩phonegap幾條街沒問題)。另外既然樓主提到了之前的網站是bootstrap,不妨可以看一看react-bootstrap這個東西,或許這就是你想要的。

    E. 前端什麼框架更好用

    bootstrap框架,這個應該是所有前端開發都知道並用過的一個框架了,應為這個是目前最流行的框架,使用最廣,網上文檔資料模板最多最容易查找的了。它提供了很多流行的樣式簡潔的UI組件,柵格系統以及一些常用的JavaScript插件,簡潔、直觀、強悍,讓web開發更迅速、簡單。

    Foundation 是一個易用、強大而且靈活的響應式前端框架,用於構建基於任何設備上的響應式網站、 Web應用和電子郵件。結構語前端的學習都是需要不斷的學習,學一天停一停相當於白學,學習效果很差,如果你想有人一起學習可以來這個扣裙,首先是132 中間是667最後是127 都是零基礎的同學,大家相互鼓勵 共同努力 只是學著玩就不建議來了!!!義化、移動設備優先、完全可定製。

    Semantic UI 經過多年的努力、致力於可以用更語義化的方式構建網站、原生語言規則讓代碼更易讀易懂。

    Amaze UI | 中國首個開源 HTML5 跨屏前端框架。Amaze UI 以移動優先(Mobile first)為理念,組件豐富,模塊化;本地化支持, 關注中文排版;輕量級,高性能。官網提供有豐富的模板下載。織夢系統wap手機模塊就是用的就是這個。

    SUI 是一套基於bootstrap開發的前端組件庫,同時她也是一套設計規范。通過SUI,可以非常方便的設計和實現精美的頁面。

    SUI Mobile 是一套基於 Framework7 開發的UI庫。它非常輕量、精美,只需要引入我們的CDN文件就可以使用,並且能兼容到 iOS 6.0+ 和 Android 4.0+,非常適合開發跨平台Web App。

    F. web前端主流框架主要有哪些

    1、Bootstrap


    AUI是最近流行起來的,作者聲稱是專為APIClound設計的一套框架,解決了許多移動端開發實際中遇到的許多問題,是一個純CSS框架。使用容器+布局+模塊的構建方式,JS輔助,更自由更靈活更易於擴展使用。遵循Google Material設計規范,完美適配各個機型。面向HTML5,使用CSS3實現動畫交互,輕量級高性能。AUI是使用MIT License授權,你可以復制、出售。目前最新版本2.0。

    8、Amaze UI

    這是稱為妹子UI的開源框架,據稱是中國首個開源HTML5跨屏前端框架。妹子UI以移動優先為理念,從小屏逐漸到大屏,實現響應式網頁。Amaze UI包含20+個CSS組件、20+個JS組件,更有多個包含不同主題的Web組件。相比國外框架,妹子UI關注中文排版提供本地化支持。面向HTML5開發,使用CSS3來實現動畫交互,輕量級高性能。

    9、Frozen UI

    Frozen UI是一款開源,簡單易用,輕量敏捷的移動端框架。基於手Q樣式規范,目前全面應用於企鵝手Q增值業務中。基礎樣式效果簡單色調清爽,社區活躍,組件自然不少。包括按鈕、列表、表單、通知、提示條、彈出框、選項卡等等常用組件。還包括一個FrozenJs的JS組件庫。可以在主流的Android和IOS上應用。基本樣式使用離線包的方式減少請求提供快速接入方案。當然,根據網友反映,也存在大大小小的bug。不過總體來說,還是值得一用的。奇怪的是,Github上顯示的最後更新時間是一年前,難道已經沒人維護了嗎?

    # Running this will show the space usage of each folder in the current directory.# The -h option makes the report easier to read.# -s prevents recursiveness and shows the total size of a folder.# The star wildcard (*) will run on each file/folder in current directory. -sh *1.2G Desktop4.0K Documents40G Downloads4.0K Music4.9M Pictures844K Public4.0K Templates6.9M Videos

    還有一個相似的命令 df(Disk Free),使用df會返回有關可用磁碟空間的各種信息。

    G. web前端三大主流框架都是什麼

    web前端的三大主流框架主要是React、Vue.js、Angular。

    React

    React框架是起源於Facebook的項目,可以輕易地解決跨瀏覽器兼容的問題,主要是通過對DOM的模擬減少與DOM的交互做到的。React的模塊化把組件進行了隔離,出現問題的時候更方便程序員對其進行修改,而且由於JavaScript,因此更有利於搜索引擎的優化。

    優點:引入了一個叫作虛擬DOM的概念,運行速度快;提供了標准化的API,解決了跨瀏覽器問題、兼容性更好;代碼更加模塊化,重用代碼更容易,可維護性高。

    缺點:React是目標是UI組件,通常可以和其它框架組合使用,並不適合單獨做一個完整的框架。

    Vue

    Vue是相對比較輕量級的框架,是通過進行雙向數據綁定來達到驅動頁面的效果,大多程序員在學習新框架的時候都會先從Vue開始。Vue比較簡單,官方文檔介紹的很清楚,可以非常快速的通過非同步批處理的方式對DOM進行更新,也能把可復用的、解耦的組件組合在一起使用,更能允許多種模塊的安裝,場景使用也更加靈活。

    優點:漸進式構建能力是Vue.js最大的優勢,Vue有一個簡潔而且合理的架構,使得它易於理解和構建。Vue有一個強大的充滿激情人群的社區,這為Vue.js增加了巨大的價值,使得為一個空白項目創建一個綜合的解決方案變得十分容易。

    缺點:在模型-視圖應用程序和狀態容器類型的應用程序之間的互相轉換可能會令人感到困惑;它類似於Web組件的模式,而不是真正的Web組件。

    Angular

    Angular擁有很好的應用程序,是一個以JavaSpript編寫的庫,模板功能也異常強大,本身就帶有豐富的Angular指令。一方面可以通過指令擴寬HTML,一方面可以通過表達式綁定數據到HTML。

    優點:模板功能強大豐富並且是聲明式的,是一個比較完善的前端MVC框架,自帶了豐富的Angular指令;ng模塊化比較大膽的引入了Java的一些東西(依賴注入),能夠很容易地寫出可復用的代碼,對於敏捷開發的團隊來說非常有幫助。

    缺點:驗證功能錯誤信息顯示比較薄弱,需要寫很多模板標簽;ngView只能有一個,不能嵌套多個視圖;比較笨重,沒有讓用戶選擇一個輕量級的版本。

    H. Web前端工程師該如何選擇web前端模板引擎

    今天小編要跟大家分享的文章是關於Web前端工程師該如何選擇web前端模板引擎?如果你正在從事web前端工作,如果你也想要了解如何選擇web前端模板引擎的知識,那麼就來和小編一起看一看本文為大家介紹的內容吧~


    一、Web模板就在那裡


    模板引擎負責組裝數據,以另外一種形式或外觀展現數據。瀏覽器中的頁面是Web模板引擎最終的展現。


    無論你是否直接使用模板引擎,Web模板一直都在,不在前端就在後端,它的出現甚至可以追溯到超文本標記語言HTML標准正式確立之前。


    二、服務端的模板引擎


    我所知道最早的Web模板引擎是PHP,它正式誕生於1997年,工作在伺服器端。讓我們看看PHP官方的intro-whatis:


    PHP(「PHP:Hypertext
    Preprocessor」,超文本預處理器的縮寫)是一種被廣泛應用的開放源代碼的多用途腳本語言,它可嵌入到HTML中,尤其適合web開發。


    PHPer普遍贊同PHP本身就是最天然、原生的PHP模板引擎,因為她本來就是。在PHP的世界裡多次出現過再包裝的模板引擎,著名的有
    smarty。


    其它伺服器端語言很多都有HTML模板引擎,比如JSP、mustache。


    毫無疑問,這些伺服器端模板引擎最終生成的結果是HTML(XML)字元串,處理流程邏輯使用宿主語言本身的語法實現。


    它們的共同特徵:HTML只是個字元串,最終結果可能還需要類似Tidy這樣的清潔或修正驗證工具。


    這里提出一個問題:二次封裝的smarty有存在的必要麼?


    三、瀏覽器端的模板引擎


    我所知道最早的前端模板引擎是jCT,它託管於Google
    Code,誕生於2008年,宿主語言是JavaScript,工作在瀏覽器中。很榮幸,我就是jCT的作者,相關早期博客可以查看achun、githubjCT
    備份。


    直到今天寫這篇文章,我才發現pure-js這篇文章裡面也提到不少先行者——jemplate最早在2006年就創建了。


    今天在OSC搜索JavaScript模板引擎你會得到100+個結果,下邊列舉一些:


    ·輕量度:tpl.js、T.js


    ·認知度:arttemplate、mustache.js、doT.js、handlebars.js、pug


    ·DOM-tree-based:domTemplate、transparency、plates


    ·VDOM-based:htmltemplate-vdom、virtual-stache、html-patcher


    ·流行框架:Vue.js、ReactJS、riot


    ·Real-DOM:PowJS


    它們的共同特徵:全都支持插值。


    這里還有templating-engines受歡迎度的對比,甚至best-javascript-templating-engines
    投票及正反方的理由。


    四、如何選擇


    我認為存在即合理,每個引擎、框架總有可取之處,至少在你的應用里,在某個時代,所以本文不會評論某個引擎哪一點不好,那樣是不客觀的。現在回答前邊提到的問題:smarty
    有存在的必要麼?我的答案是:有。理由很簡單,看給誰用、看大背景。


    對於前後端沒有分離的應用,或前端人員對後端語言不夠熟悉,或因崗位職責需要,那麼前端人員掌握一種比較通用的模板語法(語言)是現實的,反之讓PHPer自己去使用
    smarty那就太浪費技能了。


    下面是通常意義上的引擎選擇建議:


    1.前提,選擇的引擎能滿足數據渲染需求,且不和現有依賴沖突,如果你已經非常熟悉某個引擎,那你已經有答案了。


    2.是一次性的項目需求么?是的話直接選擇輕量的,學習復雜度最低的。


    3.是要做組件開發么?


    4.引擎支持預編譯結果,不必每次都實時編譯么?


    5.要跨平台么?有官方提供支持的,首選類React-JSX的引擎或純粹的VDOM引擎。


    6.選擇學習或維護復雜度最低的,眾所周知,開發者對調試的時間超過寫代碼的時間深惡痛絕。


    7.最後才是性能對比,性能對比是一件非常細致的工作,他人的對比結果不一定符合你的場景。


    我認為應該弱化語法風格的對比,偏好是沒有可比性的,一些語法甚至有特殊的背景原因。


    為什麼最後才是性能對比?


    性能的確很重要,但如果性能還沒有影響到你的應用體驗度,那就忽視它。很難真實地模擬應用場景,通常只有通過真實場景來檢驗,目前的測試工具還達不到這種效果。


    前述問題有些有固定答案,下面討論餘下的問題:如何考慮組件開發、支持預編譯、復雜度?


    五、組件開發


    進行組件開發已經不再是選擇模板引擎的問題了,這是生態環境選擇的問題。如果你的應用需要更快地完成,那麼時間點是第一位的,就選擇流行框架,有足夠多的組件讓你使用或參考。如果你的應用有獨立的生態環境,需要技術選型以便長期維護,那繼續看下文。


    六、預編譯


    預編譯應該具備:


    1.編譯結果在目標環境中不再需要編譯過程。


    2.編譯結果可調試性,這意味著結果應該包含原生ECMAScript代碼,而不是純粹的數據描述。


    大家都知道React-JSX是支持預編譯的,官方的說法是ReactWithoutJSX,即總是build過的。


    一些基於字元串處理的引擎也支持預編譯。如果你需要預編譯,建議拋棄編譯結果依然是基於字元串拼接的引擎,那樣還不如不預編譯,那是HTML5未被廣泛支持之前的技術手段。


    至少也要有類似React-JSX這樣的編譯結果才具有可調試性。備註:Vue.js支持多種模板引擎,可達到同樣的效果。


    原ReactJS代碼,其中用到了WebComponents技術:classHelloMessageextendsReact.Component{

    render(){

    return

    Hello{this.props.name}!

    I. ...前端模板渲染html,jquery的html,各有什麼區別

    簡單來說
    後端渲染html 叫吐或者噴,機器人可以看到完整的呈現源碼
    前端模板渲染html叫填,機器人看不到完整的呈現源碼
    所有的渲染最終瀏覽都是一個html頁面+js,差別就是在於後端渲染的很多都是會生成些冗餘的垃圾代碼(目前很對都是),前端比較好控制