移动网站用backbone还是angular?
生活随笔
收集整理的這篇文章主要介紹了
移动网站用backbone还是angular?
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
移動(dòng)網(wǎng)站用backbone還是angular? 作者:戴嘉華
鏈接:https://www.zhihu.com/question/21871888/answer/26130922
來源:知乎
著作權(quán)歸作者所有,轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)。
我搞不懂為什么現(xiàn)在還有人用Backbone,它的流行就是一種病毒般傳染的惡性循環(huán)。不過目前情況有點(diǎn)改觀,感覺很欣慰。
Backbone唯一的優(yōu)勢(shì)在于學(xué)習(xí)成本,對(duì)于不會(huì)如何組織自己的應(yīng)用程序和懶得去接受比較高級(jí)的概念的人來說,Backbone是非常好的選擇。吐槽一下Backbone:
幾乎什么都沒干。 沒有data-binding??v觀這么多MV*框架,Backbone是在這點(diǎn)上最偷懶的一個(gè)。所有data和view的數(shù)據(jù)綁定都要靠自己用事件來綁定。 SPA很重要一個(gè)需要解決的問題就是視圖的嵌套和視圖的組合。Backbone你需要搭配一個(gè) Marionette.js或者Chaplin 才好得心應(yīng)手。 視圖爆炸。基本上需要的邏輯都要在view里面處理,view又有復(fù)雜的嵌套關(guān)系。view會(huì)非常的零散,加上view之間依賴,基本上沒有擴(kuò)展性可言。為了解決這個(gè)問題,當(dāng)年還寫了一個(gè)插件backbone.Composite 來解決 相對(duì)而言,可維護(hù)性和可擴(kuò)展性極差。雖然Angular庫(kù)體積本身比Backbone大,但是如果你構(gòu)建的是一個(gè)比較大型的App,最終你用Angular寫的代碼會(huì)比Backbone要少很多,而且不是一兩倍的問題。 ...
好了,雖然這樣說,Backbone還是有優(yōu)點(diǎn)的,例如體積比較小,學(xué)習(xí)成本低。所謂的缺點(diǎn),其實(shí)這也是本身Backbone的哲學(xué)所決定了它一些實(shí)現(xiàn)。
用Angular,它包含很多復(fù)雜的概念,也許不懂它為什么要加這么多亂七八糟的東西,但是慢慢地你就會(huì)了解一切都是有它存在的原因的。如果你在沒有用Angular之前,構(gòu)建過大型的SPA,并且經(jīng)過蛋疼的幾次大重構(gòu)以后,就會(huì)發(fā)現(xiàn)Angular所有的東西filter,service,BDD Test等等的存在都是合理的。有一句話不知道聽過沒有,大概是這樣的:一個(gè)程序員不學(xué)數(shù)據(jù)結(jié)構(gòu)與算法,那么他編程一輩子的經(jīng)驗(yàn)就可以寫成一本“數(shù)據(jù)結(jié)構(gòu)與算法”。Angular的情況也大概一樣,它是一群人很多年蛋疼的經(jīng)驗(yàn)所總結(jié)出來的東西,我們就不要走彎路了。
但是,Angular很多時(shí)候是小題大作,為了讓新手們能夠不犯低級(jí)錯(cuò)誤,它做了很多限制。對(duì)于前端框架,我認(rèn)為其實(shí)沒有必要做這么復(fù)雜。一個(gè)data-binding的庫(kù),加一個(gè)事件處理庫(kù),加一個(gè)動(dòng)畫庫(kù),加以一些模塊化技巧,就可以松松實(shí)現(xiàn)Angular主張的一些東西,搞定各種SPA。
一句話總結(jié):如果你看重學(xué)習(xí)成本,選Backbone;如果你看重以后的可維護(hù)性,用什么都好,不要用Backbone,至于移動(dòng)端問題相信樓上幾位大大已經(jīng)給出答案。
鏈接:https://www.zhihu.com/question/21871888/answer/26130922
來源:知乎
著作權(quán)歸作者所有,轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)。
我搞不懂為什么現(xiàn)在還有人用Backbone,它的流行就是一種病毒般傳染的惡性循環(huán)。不過目前情況有點(diǎn)改觀,感覺很欣慰。
Backbone唯一的優(yōu)勢(shì)在于學(xué)習(xí)成本,對(duì)于不會(huì)如何組織自己的應(yīng)用程序和懶得去接受比較高級(jí)的概念的人來說,Backbone是非常好的選擇。吐槽一下Backbone:
好了,雖然這樣說,Backbone還是有優(yōu)點(diǎn)的,例如體積比較小,學(xué)習(xí)成本低。所謂的缺點(diǎn),其實(shí)這也是本身Backbone的哲學(xué)所決定了它一些實(shí)現(xiàn)。
用Angular,它包含很多復(fù)雜的概念,也許不懂它為什么要加這么多亂七八糟的東西,但是慢慢地你就會(huì)了解一切都是有它存在的原因的。如果你在沒有用Angular之前,構(gòu)建過大型的SPA,并且經(jīng)過蛋疼的幾次大重構(gòu)以后,就會(huì)發(fā)現(xiàn)Angular所有的東西filter,service,BDD Test等等的存在都是合理的。有一句話不知道聽過沒有,大概是這樣的:一個(gè)程序員不學(xué)數(shù)據(jù)結(jié)構(gòu)與算法,那么他編程一輩子的經(jīng)驗(yàn)就可以寫成一本“數(shù)據(jù)結(jié)構(gòu)與算法”。Angular的情況也大概一樣,它是一群人很多年蛋疼的經(jīng)驗(yàn)所總結(jié)出來的東西,我們就不要走彎路了。
但是,Angular很多時(shí)候是小題大作,為了讓新手們能夠不犯低級(jí)錯(cuò)誤,它做了很多限制。對(duì)于前端框架,我認(rèn)為其實(shí)沒有必要做這么復(fù)雜。一個(gè)data-binding的庫(kù),加一個(gè)事件處理庫(kù),加一個(gè)動(dòng)畫庫(kù),加以一些模塊化技巧,就可以松松實(shí)現(xiàn)Angular主張的一些東西,搞定各種SPA。
一句話總結(jié):如果你看重學(xué)習(xí)成本,選Backbone;如果你看重以后的可維護(hù)性,用什么都好,不要用Backbone,至于移動(dòng)端問題相信樓上幾位大大已經(jīng)給出答案。
轉(zhuǎn)載于:https://www.cnblogs.com/cndotabestdota/p/5680048.html
總結(jié)
以上是生活随笔為你收集整理的移动网站用backbone还是angular?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android wear
- 下一篇: Repeater控件