寫在前面

組件化:搭建系統(tǒng)、智慧活動
目的:內(nèi)聚性、耦合性、避免因業(yè)務引起重復勞動、協(xié)同合作、提高可維護性
組件化前提:制定標準,接觸耦合

第一代:YUI

Paste_Image.png

太過于學院派。要求每個用這個程序員熟悉整套UI規(guī)范和使用規(guī)范。就是要熟悉YUI的CSS,HTML,JS,這樣才能用非常爽

第二代 ExtJS
ExtJS是踩著YUI的尸體走過來的,extjs比YUI進步在那兒呢,首先它表面上有一套漂亮的UI。這個實質(zhì)上就是你不用寫CSS了,它幫你寫好了。另外你HTML也不用寫了,它也幫你寫好了。這不對啊,前端頁面怎么可以沒有HTML和CSS呢,extjs都幫你封裝到js里了
extjs用是很簡單,定制的話,還是改錯一處,全局。
被邊緣化

第三代:web component
shadow dom/custom element/template/import
這規(guī)范到不成熟,到處是坑

the end...

當然,組件化的時代已經(jīng)開啟,為了填原生的坑,已經(jīng)有無數(shù)勇士已經(jīng)又踩著前者的尸體沖上來了
他們是:
Angular Directives
Ember Components
React Components
KnockoutJS Components
Vue.js Components
Backbone Components
CanJS Components
Famous Components
Anything.JS Components?

賀師?。?br> 之所以一直說對custom element持謹慎態(tài)度,是因為正如本問題所表達出來的,大多數(shù)工程師對組件如何設計劃分是缺乏經(jīng)驗的。相對來說基于 is 屬性對原有html元素做擴展比較不容易出偏。

組件設計說到底是要做某種抽象。難就難在這種抽象要考慮很多的因素,比如適應UI設計師的建模、工程上的可維護性要求、常見用例和邊緣用例的矛盾、自定義組件和標準html元素的穿插交互、適應將來需求變化發(fā)展的可擴展性和可定制性……其中很多點是在開始設計開發(fā)時很難確定的,或者隨著業(yè)務發(fā)展經(jīng)常會變化。這就是為什么組件領域比其他技術領域更容易出現(xiàn)抽象泄漏的悲劇。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 廖雪峰的JS教程學習 在Web世界里,只有JavaScript能跨平臺、跨瀏覽器驅(qū)動網(wǎng)頁,與用戶交互,新興的Nod...
    宇辰星君閱讀 496評論 0 0
  • 1024,開啟一段新的旅程!我們習慣于給事物進行分類整理,這樣不僅符合大多數(shù)人對事物從整體到具體,由外貌到內(nèi)涵的一...
    Ruby_min閱讀 145評論 0 0
  • 近期準備花時間把spring的知識認真貫徹一遍,以前對spring只是存在應用層面,對很多東西都是知其然而不知其所...
    yakun0622閱讀 365評論 0 0
  • 一、四大光照類型1.環(huán)境光(Ambient Light) 一個物體即使沒有直接被光源照射,但是只要有光線通過其他物...
    CarlDonitz閱讀 1,599評論 0 0
  • 《小島經(jīng)濟學》,是我目前完完整整看下來的第一本經(jīng)濟學書籍,對自己而言是有進步的。 為什么這么說呢?從小到大,經(jīng)濟學...
    漢朝名塔閱讀 755評論 1 1

友情鏈接更多精彩內(nèi)容