精品久久久久久亚洲精品_成人午夜网站_www日本高清_亚洲精品久久久久午夜福

熱門文章

最新文章

大話前端組件化

發布時間:2021-06-22 15:26:45

在軟件工程中系統的架構也在隨著規模不斷的演進,最初的面向過程的軟件開發到現在面向對象的軟件開發。軟件工程也逐漸進入組件化開發階段。然而前端的組件化的發展一直滯后,傳統的桌面開發早已經進入組件化開發階段。

  Web1.0時代前端主要是HTML與CSS的天下,JS則是簡單的輔助工具而已。到了Web2.0時代前端開始走向以AJax技術為核心輕量級別交互,以JQuery、ExtJS、Dojo代表前端類庫(后兩者為框架)為導向的開發開始迅猛發展。JQuery在前端領域叱咤風云多年,人們都紛紛認為JQuery戰無不勝。而ExtJS、Dojo在UI組件上做的面面俱到,對于當時的管理類Web系統來說也是福音。同時也看見前端組件化初見苗頭(實現了一些初級的組件化開發模式,如:jQuery的擴展...),人們都紛紛意識到前端組件化帶來的巨大好處。

  到了Web2.0后半頁移動互聯網的迅速崛起,交互從傳統的PC轉到移動端。而移動端對于交互性與性能的要求也要比PC端強的多。同時瀏覽器的信息量也越來越大,傳統的框架與類庫已經不堪重負。已經無法保證前端維護性與性能。

  人們就開始思考前端已經早已不是類庫能解決的問題了,前端已經成為一個工程化的問題。第一代前端框架涌現出來,以Knockout.js、Ember.js、Backbone.js為代表。第二代前端框架:以Angular.js、React.js、Vue.js、Avalon.js。第二代前端框架幾乎以MVVM為導向,除了React.js。以React.js與Vue.js為代表的前端框架已經使用了組件化的思路進行開發軟件,圍繞組件進行業務架構。

Angular.js 1.x架構圖

Avalon.js 1.x架構圖

Vue.js 1.x架構圖

React.js 15.x架構圖

  在前端進入組件化的階段的同時也遇到了不少的問題,這些問題在傳統的桌面端早已經不是問題。前端組件化主要面對以下問題:組件與子組件通訊、可視化組件的外觀可維護性、復雜組件的可維護性、組件與組件的隔離性等。組件化意在解決業務開發人員在開發業務時無需關心組件內部細節進行快速的使用組件進行設計業務,組件化可以說是對面向對象編程的完整實現。

  組件化對Web開發有著深遠的影響,直接影響到Web的設計、維護、測試,組件的切分,組件的開發。傳統的網頁開發模式將被推倒重來。新型的組件也將重新發明,重新發明輪子是不可避免的。同時組件也要兼顧各個消費端的需求。組件由單一服務于PC轉向任何支持瀏覽器的平臺。

  目前來看,組件化的的實現分兩路:以模板驅動JS為代表的Angular、Vue、以JS驅動的React,同時以Web Component原生瀏覽器特性驅動的框架也在崛起Polymer、Nova。不得不說原生或兼容原生的組件化才是未來。

Web應該具備原生可視化程序的那些特征?

  組件化:

  組件化是核心之中核心,為什么要組件化?以前我們在Web端做的UI都很直接而簡單。界面都是Div套上去搞定,取值都是“$(xx).xxx”。這種模式在幾年看開發速度確實很快。但是客戶的需求復雜以后,要你在Div里修改內容。而且同樣的東西不止出現在一個地方。當時如果要去解決,無非兩種辦法,第一Copy幾份,第二做個類似JQuery擴展的,將相同的東西抽象在一起,然后“$xxx(div)”后它就變成你想要的部件。其實到這里Web已經進化了一點點,可以重用大部分的代碼了,那它究竟算不算真正的組件呢?答案很簡單:不算。可能你要問為什么不算?

  當前你進一步接觸需求后,客戶要求你能夠將DivA中的某個地方加上BDiv,而BDiv不是什么時候都會出現?;蛘咦屇闱短锥鄬印H缓竺恳粚拥墓δ芏疾惶粯印_@時候應該就頭痛了。擴展的代碼就相當冗余了很難維護,而且樣式很難修改。為什么會這樣呢?其實原因很簡單,因為你一直認為Web上所有的東西在同一層。并沒有將它們按層次劃分來進行管理。所以以前看到的組件都是“偽組件”。下面一幅圖將展示真正的組件結構。

真正的組件該有的樣子

  上面這個圖如果用傳統的實現思路應該是比較頭痛的。需要做很多封裝才能達到這個界面。但如果將它們一層層的拆開來實現,然后就像搭積木一樣,有層次的拼在一起。這個問題就可能變的簡單。如果每個組件都可以封裝并且嵌套,上層組件之間只需要關心它需要的下層組件的屬性和方法就行了。這樣思維就很有層次,不在頭痛如何組織的問題。

  組件化還有一個意義在于把相同的功能抽象成基本的另一個組件,然后多個類似組件都可以去繼承它,并做個性化的擴展定制。

  組件化是相當美好的東西,解決了標準化的問題。但是Web要實現談何容易。而且要讓每個開發者都很快掌握,這樣的框架實現也是相當困難。

  隔離性:

  Web的CSS,JS,DOM都是很平直的東西。都可以直接影響。如果要做組件,那么需要將組件進行隔離。樣式需要隔離,DOM需要隔離。這樣組件與組件之間才不會產生干擾。

  可測試性:

  Web的測試遠遠沒有原生應用的測試做的好,如果要進行組件化,那么對每個組件,尤其是嵌套組件與組合組件的測試尤其重要。好的框架應該能快速定位組件,以及方法。很好的展示當前組件的結構,便于修改問題。

  劃分性:

  重用公用基礎的組件,根據需求搭建面向業務的組件與重構新的組件,這樣組件化的真正生產力才能發揮出來,但是要能做到靈活開發,這樣的框架實現談何容易。

  非入侵性:

  新的組件放在舊的業務,要保證融合,這樣的框架才能滿足現有的需求,如果每次升級都要徹底拋棄舊的東西,這樣對開發來說也是巨大的工作量。

  學習臺階:

  以前Web端都是前端開發或UI設計做HTML模板,后端套模板。如果現在將這些開發都放在前端,前端必須掌握一定的JS和框架的知識。如果讓一個以前寫HTML的接觸這樣的框架。如果他們不能理解那么這樣的框架真的好嗎?

組件化僅僅只是前端邁向標準化的一個開始!

  如果說組件化框架是骨架,保證各個組件的獨立性,那么業務就是靈魂。凝聚不同的部件。業務不僅僅需要輸入輸出的組件,需要一套能適應Web端的業務架構,保證業務與組件分離,這樣業務才能高效重用,界面更換應該不影響前端的業務部分。

尾巴:

  到目前為止前端領域依然是火熱的造輪子階段,誰也不比誰好,你有張良計我有過墻梯,都有自己不足的地方。組件化的浪潮勢必可擋,以React與Vue代表的組件化框架最有希望成為出色的工具。但是在前端蓬勃發展(打爛仗)時代相信會有更好的輪子解決他們沒有解決的問題。

  前端框架真正要解決的問題是開發效率與維護效率,而目前的框架主要解決組件的重用性與運行效率。真正開發問題實際上是卡在不斷制造業務層的輪子與框架的使用門檻與組件的維護效率。沒有一套完善的前端框架對效率的提升還是很有限的,不然還是在走以前的老路,只是路好走了點,解決了一個問題,其他各種問題出來了,抵消掉了框架的優勢。那也算不上革命的創新。

  前端組件化很有可能將Web帶到3.0階段,前端渲染將成主流。搜索引擎勢必推出新的機制對新的信息進行收錄。


返回頂部
精品久久久久久亚洲精品_成人午夜网站_www日本高清_亚洲精品久久久久午夜福

      9000px;">

          国产成人精品一区二| 日韩avvvv在线播放| 日韩女优av电影在线观看| 91麻豆精品一区二区三区| 成人免费av资源| 国产呦精品一区二区三区网站| 免费在线一区观看| 蜜臀久久99精品久久久久久9| 视频一区免费在线观看| 亚洲午夜精品在线| 天涯成人国产亚洲精品一区av| 亚洲人被黑人高潮完整版| 一色桃子久久精品亚洲| 国产精品九色蝌蚪自拍| 亚洲婷婷在线视频| 亚洲国产一区在线观看| 亚洲一区二区三区在线播放| 一区二区三区免费在线观看| 亚洲天堂成人网| 亚洲狼人国产精品| 亚洲午夜精品网| 轻轻草成人在线| 国产一区二区三区美女| 国产91丝袜在线观看| av在线综合网| 欧美日韩aaa| 久久久国际精品| 亚洲欧洲综合另类| 日产欧产美韩系列久久99| 韩国av一区二区三区四区| 国产乱人伦精品一区二区在线观看 | 日本麻豆一区二区三区视频| 韩国在线一区二区| 99久久国产免费看| 欧美日韩一区二区三区高清| 精品卡一卡二卡三卡四在线| 中文字幕一区二区视频| 天堂久久一区二区三区| 国产一区福利在线| 欧美性受xxxx黑人xyx| 欧美变态tickling挠脚心| 国产精品久久久久久久浪潮网站| 一区二区三区不卡视频在线观看| 久久国产精品无码网站| 成人黄色软件下载| 91麻豆精品国产自产在线| 国产欧美一区二区在线| 日韩专区欧美专区| 91精品福利视频| 欧美成人性战久久| 亚洲精品免费电影| 国产成人免费av在线| 欧美性大战久久久久久久蜜臀| 久久影院午夜片一区| 亚洲精品伦理在线| 成人综合在线网站| 精品国偷自产国产一区| 亚洲一二三四久久| 成人动漫中文字幕| 亚洲精品一线二线三线| 日韩福利视频导航| 在线免费一区三区| 国产精品成人免费在线| 国产一区二区看久久| 91精品国产丝袜白色高跟鞋| 尤物av一区二区| 91丨九色porny丨蝌蚪| 国产欧美精品一区| 国内精品久久久久影院薰衣草 | 国产在线精品一区在线观看麻豆| 欧美日韩成人一区| 一区二区成人在线视频| 91老师片黄在线观看| 中文字幕免费不卡| 国产裸体歌舞团一区二区| 欧美一区二区三区在线观看| 亚洲国产日韩一区二区| 欧美视频在线一区二区三区| 亚洲视频每日更新| 91麻豆swag| 亚洲国产一区二区在线播放| 在线观看国产91| 亚洲曰韩产成在线| 欧美久久高跟鞋激| 日本欧美在线看| 精品少妇一区二区三区| 国产乱码精品一区二区三区av| 日韩欧美国产一区二区三区| 麻豆精品一二三| 欧美大片国产精品| 国产成人午夜精品影院观看视频 | 99久久国产综合色|国产精品| 国产精品夫妻自拍| 91久久香蕉国产日韩欧美9色| 亚洲综合无码一区二区| 91精品在线观看入口| 蜜臀久久99精品久久久久宅男| 精品动漫一区二区三区在线观看| 国产福利91精品| 亚洲精品成人精品456| 欧美色图一区二区三区| 美女在线一区二区| 国产欧美日韩三级| 色欧美片视频在线观看| 亚洲国产美女搞黄色| 日韩欧美中文字幕公布| 国产精品1区2区| 亚洲天堂福利av| 欧美高清视频不卡网| 国产中文一区二区三区| 国产精品国产三级国产aⅴ中文 | 综合欧美一区二区三区| 欧美一区欧美二区| 成人动漫视频在线| 日韩中文字幕一区二区三区| 中文字幕精品综合| 欧美一区二区视频网站| 成人午夜电影久久影院| 男男gaygay亚洲| 一区二区三区视频在线看| 久久影院午夜论| 欧美精品18+| av中文字幕不卡| 国产在线一区观看| 亚洲成人av福利| 亚洲精品视频自拍| 久久精品一区二区三区不卡牛牛| 日本福利一区二区| 国产91在线观看| 精品无人码麻豆乱码1区2区| 亚洲激情第一区| 国产精品视频一二| 久久久亚洲高清| 欧美高清你懂得| 欧美视频中文字幕| 色视频一区二区| 99精品热视频| 成人av影院在线| 不卡的av电影| 国产成人精品亚洲午夜麻豆| 久久99精品久久久久久动态图 | 成人免费三级在线| 国产乱一区二区| 国模少妇一区二区三区| 爽好久久久欧美精品| 亚洲免费视频中文字幕| 久久精品视频一区二区三区| xf在线a精品一区二区视频网站| 欧美精品久久99| 欧美高清一级片在线| 在线亚洲免费视频| 色综合天天综合网天天狠天天| 成人国产精品免费网站| 成人aaaa免费全部观看| 国产成人精品综合在线观看 | 欧美精三区欧美精三区| 欧美日韩国产片| 欧美日韩免费电影| 制服丝袜成人动漫| 日韩欧美综合在线| 精品日韩一区二区三区免费视频| 日韩久久久久久| 精品国产成人系列| 国产精品污网站| 最新不卡av在线| 亚洲超丰满肉感bbw| 免费欧美高清视频| 国产成人一区在线| 国产成人免费视频网站| 91麻豆高清视频| 91精品免费在线观看| 久久午夜羞羞影院免费观看| 久久久亚洲精华液精华液精华液 | 欧美三级中文字幕| 欧美哺乳videos| 国产精品免费观看视频| 亚洲精品欧美专区| 日韩国产欧美在线观看| 国产乱码精品一区二区三区忘忧草| 国产福利91精品| 欧美无砖专区一中文字| 精品三级在线看| 亚洲精品中文字幕在线观看| 天堂va蜜桃一区二区三区漫画版 | 色综合天天在线| 日韩亚洲欧美在线| 国产精品对白交换视频 | 久久久综合九色合综国产精品| 中文字幕一区二区在线观看| 天天色天天操综合| 风间由美一区二区三区在线观看 | 亚洲男人天堂一区| 国产一区二区三区免费在线观看 | 日韩欧美一级精品久久| 亚洲婷婷综合色高清在线| 蜜臀久久99精品久久久久宅男 | 亚洲国产美女搞黄色| 国产成人精品综合在线观看| 欧美日韩久久久| 国产偷国产偷精品高清尤物|