国产18禁黄网站免费观看,99爱在线精品免费观看,粉嫩metart人体欣赏,99久久99精品久久久久久,6080亚洲人久久精品

計算機軟考程序員:Web開發(fā)正確方向Javascript是一個錯誤嗎?

時間:2008-09-20 00:40:00   來源:無憂考網(wǎng)     [字體: ]
對Web標準的修訂做得越多,Web開發(fā)的正確方向越值得懷疑。InfoWorld的Neil McAllister對Web開發(fā)的現(xiàn)狀與未來做了很好的思考。最近,ECMAScript 4標準被棄用,統(tǒng)一為ECMAScript 3.1,如果任ECMAScript 4發(fā)展,Javascript將帶來巨大變化,Adobe的Ed Rowe告訴作者,大部分人對Javascript一類語言存在障礙,這是為什么Adobe當初加入ECMAScript 4陣營的原因,Adobe以及ECMAScript 4希望帶來一些適于大規(guī)模程序的概念。
  然而,盡管大規(guī)模程序的開發(fā)對Adobe可能是好的,可以肯定它未必對任何人都可行,傳統(tǒng)程序語言就是一個例子。
  對任何Java程序開發(fā)正規(guī)軍來說,強類型,包裝,以及命名空間盡管對維護大型程序來說可能很容易,但對Web程序員來說幾乎沒有什么用處,Web程序員僅僅想通過編程對UI搞一點花樣。
  事實上,ECMAScript委員會想創(chuàng)造一種萬能編程語言的初衷非常值得置疑,曾經(jīng),有一群非常聰明的人聯(lián)合起來,想寫一個終極語言,這種語言非常安全,有活力,且非常標準化,幾乎 沒有需要解釋的地方,這就是Ada,現(xiàn)在沒有人還記得Ada,因為這種語言非常嚴格,缺乏靈活,人們寧愿使用C。
  既然沒有人能夠創(chuàng)造一個終極的,完美的傳統(tǒng)編程語言,又怎么能指望我們可以為Web創(chuàng)造一個這樣的語言?我們越多討論大規(guī)模 Web 程序,越應該知道,單一的編程語言將永遠無法適合任何工作。
  作者非常喜歡Model-View-Controller設(shè)計模式,然而這個模式并不適合于任何場合,不過這個模式可以為程序開發(fā)提供一套指南,總體上說,Model-View-Controller的核心是從數(shù)據(jù)層,業(yè)務(wù)邏輯層,分離展示層。瀏覽器可以算作View(展示層),我們不應強迫它同時成為業(yè)務(wù)邏輯層。
  自從有了Javascript,我們對它的指望越來越多,企圖用它來創(chuàng)建整個程序,事實上,Javascript不可能適合任何任務(wù)。我們不應該將越來越多的業(yè)務(wù)功能硬塞進瀏覽器,應該讓瀏覽器專心作展示,而在其它地方展開業(yè)務(wù)邏輯。
  比如,插件。當然,很多Web開發(fā)者會告訴你插件不是好東西,每次你強迫用戶下載安裝插件,都相當于在你的代碼前面設(shè)置了障礙,事實是這樣嗎?
  早期的插件絕大多數(shù)用來提供多媒體功能,很快就成為在線營銷工具,那時,人們使用撥號上網(wǎng),但很少有人懷疑人們對插件的耐心。
  現(xiàn)在的例子是Google Gears,一次性安裝Google Gears,任何基于Google Gears的程序都獲得額外的功能。目前,基于Google Gears的站點不僅包含Goolge Docs與Google Reader,也包含 MySpace, Picasa甚至Wordpress。
  人們傾向于Google Gears的離線運行Web程序的能力,卻忽視了WorkerPool模塊,WorkerPool允許 Javascript在后臺執(zhí)行,獨立于網(wǎng)頁代碼。WorkerPool 是獨立的代碼執(zhí)行引擎,只不過剛好象普通瀏覽器那樣運行相同的Javascript代碼。
  為什么要用JavaScript,而不是Python, Lisp或其它。如果有一種應用有足夠的說服力,就有足夠的動力將它設(shè)計成插件,尤其是在現(xiàn)在的寬帶世界。這樣的例子已經(jīng)存在,Adobe的Flash插件就可以執(zhí)行ECMAScript4標準的腳本,其它平臺還包括Curl與REBOL。
  作為Web開發(fā)者,我們羞于選擇其它道路,只是在無休止地對JavaScript進行改進和標準化。因為那是 Web 標準,我們告訴自己,JavaScript 是一個純凈的選項。
  但如果只拘泥于單一的方式,我們?yōu)槭裁催要費這番力氣?我們已經(jīng)擁有一個功能齊備的客戶端做任何事情,從數(shù)據(jù)庫,到e-mail,它已經(jīng)安裝到成千上萬的企業(yè),這就是Lotus Notes。
  考試大編輯提醒:這就是我們前進的方向?這就是將來的瀏覽器模型?或者,對Web開發(fā)界來說,我們是否應該跳出這個圈子思考問題?