前言
都已經(jīng)2017年的11月份了,我們項(xiàng)目還打算用seajs憾筏?!沒錯花鹅,上周我們公司的一個(gè)項(xiàng)目啟動了氧腰,開會的時(shí)候CTO要求用seajs + artTemplate的組合套餐來開發(fā)。在下來研究過后刨肃,我深覺此舉不妙古拴,遂和我們的CTO進(jìn)行了第二輪溝通,最終選定了vuejs + webpack 的模塊化開放模式真友。雖然是工作中的一件小事黄痪,但還是給我留下了不小的感悟。
故事背景交代完畢盔然,接下來桅打,正文從這開始~
記得前年(2015年)杭州D-DAY玉伯說過,能夠親眼看到seajs死掉也是一種幸福愈案。一個(gè)大而全的前端框架挺尾,功能越做越多,迭代難度也會越來越大站绪。其實(shí)小而美挺好的遭铺。
為此,玉伯當(dāng)時(shí)還特意發(fā)了一條微博,說是應(yīng)該給seajs和kissy也樹一塊墓碑了魂挂。以下是微博截圖:
為什么感覺一直追趕的SeaJS已經(jīng)死掉了呢甫题?
這里,閏土感覺有句話特別應(yīng)景涂召,鮮衣木馬少年時(shí)坠非,怎可死氣沉沉如暮年?
“說人話芹扭,好吧麻顶?!”
“呃......舱卡,因?yàn)樗^時(shí)了唄辅肾。”
這里轮锥,閏土所說的過時(shí)矫钓,并不是指它現(xiàn)在就不能用了,而是說出現(xiàn)了明顯更加先進(jìn)的理念或者標(biāo)準(zhǔn)舍杜,這會導(dǎo)致未來它的使用場景大為減少新娜,整體趨勢已經(jīng)步入衰落。
隨著Web相關(guān)標(biāo)準(zhǔn)的推進(jìn)既绩,有很多框架(庫)都過時(shí)了概龄。比如:
JavaScript新的模塊標(biāo)準(zhǔn)導(dǎo)致了SeaJS和RequireJS的過時(shí);
原生選擇器的良好支持饲握,導(dǎo)致人們對jQuery不再那么依賴哪雕;
Array和Object上面一些新特性的出現(xiàn)屯阀,導(dǎo)致underscore和lodash的作用減弱毅舆。
與此同時(shí)吏饿,一些專注于做shim或者polyfill的庫反倒會比較時(shí)髦,因?yàn)樗鼈兊亩ㄎ环浅C鞔_:扶上馬笆怠,送一程(哈哈铝耻,這是一句玩笑話,不可當(dāng)真)蹬刷。
然后瓢捉,像Angular,Backbone办成,Knockout泊柬,這一大票東西,除非革自己的命诈火,否則全部過時(shí)了(當(dāng)然兽赁,angular1已經(jīng)革了自己的命状答,大版本的API迭代,完成了ng2的救贖)刀崖。再來看看Kissy惊科,這也是一個(gè)時(shí)代的產(chǎn)物,在同一個(gè)時(shí)期亮钦,有很多類似YUI或者jQuery UI的東西馆截,然而,它們都衰落了蜂莉,不再適應(yīng)新的時(shí)代蜡娶。
我們將來不需要用那樣的方式編寫前端框架,不需要用那樣的方式編寫界面組件映穗,永遠(yuǎn)不要停下自己的腳步窖张。中堂大人教導(dǎo)我們:一代人做一代人的事情。上一代前端框架/庫都已經(jīng)基本完成使命了蚁滋,讓我們默默記住并懷念它們宿接。
什么,你不知道中堂大人的梗辕录?好吧睦霎,那我來告訴你,算盤打得再精走诞,也不如中堂大人副女,中堂大人已經(jīng)把他們的所作所為了如指掌......(好吧,話題扯遠(yuǎn)了)蚣旱。
當(dāng)然碑幅,花開兩朵,各表一枝(一聽這話姻锁,想必你們都能猜到枕赵,劇情要反轉(zhuǎn)了)猜欺。再次強(qiáng)調(diào)位隶,過時(shí)、衰落开皿,都代表著下降趨勢涧黄,而不是說你現(xiàn)在就不能用了,仍然會有合適的場景赋荆,比如你要支持ie6之類笋妥,在你的場景沒有與時(shí)俱進(jìn)之前,技術(shù)選型也是不能與時(shí)俱進(jìn)的窄潭。
俗話說春宣,做人留一線,日后好相見。這回閏土的話說的夠圓滑了吧月帝,抨擊seajs不能太絕躏惋,凡事都是相對的。在編程界沒有絕對的事情嚷辅,如果有簿姨,那就是抨擊的還不夠(呃,好吧簸搞,足見閏土老油條的功底)扁位。
其實(shí), RequireJS 也好趁俊,Sea.js 也好域仇,CommonJS、AMD 還是 CMD 也好则酝,在當(dāng)年的產(chǎn)生和流行殉簸,都不是為了推框架,目的都是為了模塊化開發(fā)」炼铮現(xiàn)在 ES2015(俗稱ES6) 規(guī)范已出般卑,JS 模塊已經(jīng)得到標(biāo)準(zhǔn)化,早先的模塊化方案的沒落爽雄,和 webpack 與 babel 等轉(zhuǎn)換工具的火爆蝠检,都是大勢所趨。吾等螳臂擋車挚瘟,并沒有什么卵用叹谁。
看到這里,知道前端圈的技術(shù)更迭是有多厲害了吧乘盖,那些一味鄙視前端技術(shù)含量不高的人人們焰檩,我只想送你們一句話,In this era, you will be abandoned订框。(不用百度翻譯了析苫,意思就是在這個(gè)時(shí)代,你會被拋棄穿扳。噗嗤~)
如果你身邊還有鄙視前端技術(shù)含量低的人衩侥,建議你將這篇小文懟到他臉上(開玩笑的老鐵,快把手里的板磚放下~)矛物。
說了那么多茫死,讓我們來映射一下主旨:
前端造那么多東西,最終還是為產(chǎn)品服務(wù)履羞,那么多人愛造輪子是個(gè)好事峦萎,對于小公司里的年輕人來說屡久,造輪子是能力的鍛煉。
但是從壞的一方面來講爱榔,就會導(dǎo)致產(chǎn)品需要不斷的迭代更新涂身,迭代就會帶來更多的維護(hù)成本,這樣的話搓蚪,一個(gè)產(chǎn)品的開發(fā)周期相當(dāng)于被無限拉長蛤售,只要技術(shù)一發(fā)生更新,項(xiàng)目就得重構(gòu)妒潭。
接著又從好的一方面來看悴能,不斷的重構(gòu)會讓前端崗位一直處于供需平衡狀態(tài),為了你不會下崗雳灾,就讓他們造輪子的人折騰去吧漠酿。反正都是js,怎么折騰都逃不出前端工程師的手掌心谎亩。
后記
最后炒嘲,還是那句話:聞道有先后,術(shù)業(yè)有專攻匈庭。在從事前端的道路上夫凸,you are not alone.
聲明
歡迎轉(zhuǎn)載,請注明出處和作者阱持,同時(shí)保留聲明夭拌。
作者:閏土少年
出處:http://www.cnblogs.com/running-runtu/
本博客的文章如無特殊說明,均為原創(chuàng)衷咽,轉(zhuǎn)載請注明出處鸽扁。如未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接镶骗,否則保留追究法律責(zé)任的權(quán)利桶现。
想了解我的更多動態(tài)?歡迎關(guān)注我的微信公眾號:閏土哥的前端路