偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Web應(yīng)用程序框架:不創(chuàng)新就玩完

譯文
開發(fā) 前端 架構(gòu)
Web應(yīng)用程序框架領(lǐng)域涌現(xiàn)出了一股創(chuàng)新熱潮,這可能讓廣大開發(fā)人員頗為沮喪,卻又是必不可少的。

Web應(yīng)用程序框架領(lǐng)域涌現(xiàn)出了一股創(chuàng)新熱潮,這可能讓廣大開發(fā)人員頗為沮喪,卻又是必不可少的。

[[131626]]

JavaScript

現(xiàn)在想跟上JavaScript圈子可是變得越來越難了。雖然ReactJS前陣子成為報(bào)章頭條新聞,但沒有哪個(gè)JavaScript框架能夠長期保持領(lǐng)先的地位。一些人聲稱這是件好事,促使相互競爭的框架在創(chuàng)新方面勝過對方,但過于迅猛的創(chuàng)新步伐卻讓廣大開發(fā)人員無所適從。

需要具備怎樣的條件才能被公認(rèn)為是長期的贏家?

誰會(huì)贏得Web?

咱們還是打開天窗說亮話吧:牽涉的面很廣。正如EmberJS負(fù)責(zé)人Tom Dale曾對我說的那樣:

“切記Web這塊蛋糕的一大塊是什么。.NET面向Windows,Cocoa面向iOS/Mac,贏得了Web就是贏得了全世界。”

既然如此,沒有哪個(gè)框架設(shè)法主導(dǎo)Web多少也就讓人有點(diǎn)奇怪了。反正沒有哪個(gè)框能長期成為霸主。

畢竟,雖然新的編程語言來來去去,但Java、C++和C#卻長期屹立不倒,總是處于或靠近編程語言排行榜的首位,網(wǎng)站Redmonk的分析就表明了這一點(diǎn),詳見:http://redmonk.com/sogrady/2015/01/14/language-rankings-1-15/

Web應(yīng)用程序框架卻不是如此。

快速瞄一眼谷歌趨勢(Google Trends,http://www.google.com/trends/explore#q=EmberJS%2C%20BackboneJS%2C%20Sproutcore&cmpt=q&tz=),就會(huì)顯示JavaScript的人氣指數(shù)經(jīng)歷了起伏不定的階段(見圖A)。

Web應(yīng)用程序框架:不創(chuàng)新就玩完

圖A:谷歌趨勢顯示了JavaScript的人氣指數(shù)。

Sproutcore是由Charles Jolley設(shè)想出來的,由蘋果以及后來的Strobe(已被Facebook收購) 開發(fā)而成。隨著BackboneJS取代而之――它得到了LinkedIn等公司的鼎力支持,Sproutcore最終悄無聲息。與此同時(shí),一些Sproutcore開發(fā)人員離開Strobe另立門戶,開發(fā)了EmberJS,如今它在逐漸取代BackboneJS。

當(dāng)然,如果我們算上AngularJS(谷歌開發(fā)的JavaScript語言),一切相比之下都黯然失色,無論按上網(wǎng)搜索量來衡量還是按雇主需求量來衡量,AngularJS都可謂風(fēng)光無限(見圖B)。

Web應(yīng)用程序框架:不創(chuàng)新就玩完

圖B:AngularJS的崛起之路。

這也許很好。AngularJS也許實(shí)際上就是有史以來的***框架!至少,在下一個(gè)又酷又炫的框架問世之前是這樣。

我們能不能讓這個(gè)步伐慢一點(diǎn)?

就拿ReactJS來說吧。由Facebook開發(fā)的ReactJS在年初備受媒體關(guān)注,當(dāng)時(shí)宣布支持原生應(yīng)用程序。這意味著,React Native框架讓開發(fā)人員能夠使用React和JavaScript,輕輕松松就能構(gòu)建原生應(yīng)用程序。這是個(gè)好概念,即便并非什么新概念。畢竟,多年來,其他框架早就提供了類似的功能,這自然引出了下面這個(gè)問題:我們果真需要ReactJS嗎?

Netflix認(rèn)為需要它。這個(gè)技術(shù)先鋒在其開發(fā)者博客上宣稱:“我們決定采用React受到了許多因素的影響,尤其是這三大因素:1)啟動(dòng)速度,2)運(yùn)行時(shí)性能,以及3)模塊化。”

Netflix認(rèn)為,ReactJS提供了一種出色的方法,可以減少網(wǎng)絡(luò)請求(縮短了啟動(dòng)時(shí)間),并簡化用戶界面渲染(提高了運(yùn)行時(shí)性能),另外還有其他優(yōu)點(diǎn)。

也許Netflix是對的。但是為什么Netflix就不可以用AngularJS、EmberJS或其他框架來實(shí)現(xiàn)同樣的目的呢?

#p#

不創(chuàng)新就玩完

Brian Leroux是PhoneGap的核心開發(fā)人員之一,他認(rèn)為,目前來自JavaScript框架的創(chuàng)新最終會(huì)“融入到Web平臺(tái)本身”,迫使這些框架不斷創(chuàng)新,才能保持領(lǐng)先地步。隨著互相競爭的框架失去了創(chuàng)新的勁頭,市場會(huì)迎來更好的框架。

據(jù)一些人統(tǒng)計(jì),我們在開始選定少數(shù)幾種一貫創(chuàng)新的框架。(Instructure博客的一名開發(fā)人員認(rèn)為,EmberJS已經(jīng)獲勝,因?yàn)?ldquo;無論哪個(gè)框架,最終老是被拿來與Ember比較”。)AngularJS顯然也是個(gè)冠軍爭奪者,也許是最有實(shí)力的冠軍爭奪者。

哪ReactJS呢?

令人沮喪的是,我們在Web編程領(lǐng)域還沒有遇到任何的停滯現(xiàn)象,而這可能完全體現(xiàn)了我們在Web方面還剩下多少工作要做。AngularJS最近因在其2.0版本中沒有提供向后兼容而遭到炮轟,我認(rèn)為這對創(chuàng)新而言也許是好事。

為什么?因?yàn)?,作為Leroux的密友,我們在Web創(chuàng)新會(huì)是什么樣、也許應(yīng)該是什么樣方面連皮毛都未觸及。我們在想出更優(yōu)秀的Web編程方式之際,就要一路打破陳規(guī)。

但不是每個(gè)人都這么認(rèn)為。EmberJS共同創(chuàng)造者Yehuda Katz就認(rèn)為,“想讓創(chuàng)新步伐慢下來,***的辦法就是迫使每個(gè)人每隔幾年就要重寫代碼。”于是EmberJS在竭力確保***程度的后向兼容性。如上所述,AngularJS沒有這么做,至少到目前為止沒有這么做。

但這些在我看來卻是必不可少的“減速帶”。

在可以預(yù)測的將來,我們應(yīng)該會(huì)看到JavaScript框架不斷完善。有些框架會(huì)消亡,有些會(huì)勝出。但是雖然這可能會(huì)讓開發(fā)人員不得勁,但它最終是好事,因?yàn)檫@意味著獲勝的是Web。

http://www.techrepublic.com/article/web-application-frameworks-innovate-or-die/

 

 

責(zé)任編輯:王雪燕 來源: 51CTO
相關(guān)推薦

2018-12-03 08:25:24

2019-02-11 09:35:04

Python應(yīng)用程序Tornado

2023-06-13 13:38:00

FlaskPython

2024-01-02 00:18:56

Buffalo項(xiàng)目Go Web框架

2022-02-23 15:33:19

前端框架開發(fā)Web

2012-03-15 15:35:51

iUI框架EclipseiOS Web

2010-05-20 09:48:36

2011-03-22 14:12:17

LAMP

2010-02-01 14:05:03

2009-07-09 16:47:26

Servlet的Web

2012-03-20 09:20:40

Go語言

2012-06-11 09:37:41

2009-04-01 14:33:33

2013-08-08 09:48:10

Web

2010-03-09 13:27:23

Web 2.0應(yīng)用程序

2023-01-09 17:04:24

2011-11-29 16:07:36

移動(dòng)Web開發(fā)框架移動(dòng)開發(fā)

2021-08-26 08:00:00

Django開發(fā)框架

2013-11-19 15:35:01

2009-07-14 18:10:38

Swing應(yīng)用程序框架
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)