欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vs2008 JavaScript 語法提示(Intellisense)功能

  發(fā)布時(shí)間:2009-07-29 19:23:17   作者:佚名   我要評(píng)論
JavaScript已經(jīng)發(fā)展成為進(jìn)行Web客戶端編程的標(biāo)準(zhǔn)語言。它有大量的語言資源,但是對(duì)開發(fā)的支持并不完備。大多數(shù)使用JavaScript的開發(fā)人員更傾向于用原來的方法進(jìn)行調(diào)試,但是現(xiàn)在有很多工具來減輕測試和調(diào)試的負(fù)擔(dān)。

Visual Studio 2008將是一個(gè)非常激動(dòng)人心的版本,包含了成堆的強(qiáng)大的功能。其中一個(gè)新特性就是更加完善的支持對(duì)JavaScript的調(diào)試及IntelliSense功能。Visual Studio 2008其實(shí)是開發(fā)JavaScript程序最優(yōu)秀的IDE,對(duì)JavaScript的代碼誘導(dǎo)能力最強(qiáng),而且還可以進(jìn)行斷點(diǎn)跟蹤調(diào)試調(diào)試。在本文中,將展示的這兩方面的特性,希望為JavaScript的編輯及調(diào)試帶來新開發(fā)方式,但愿讀者能尋找到一款更好的JavaScript開發(fā)工具。
JavaScript 智能感知(Intellisense)功能

Java、C#等各種高級(jí)語言的開發(fā)工具琳瑯滿目,爭放異彩。但作為AJAX的主角的JavaScript語言,配套的開發(fā)工具總保持著不相稱的沉寂。缺乏良好開發(fā)工具的支持,編寫JavaScript程序,特別是超過500行以上的JavaScript程序變得極富挑戰(zhàn)性——沒有代碼誘導(dǎo)功能,沒有實(shí)時(shí)錯(cuò)誤檢查,沒有斷點(diǎn)跟蹤調(diào)試……開發(fā)JavaScript代碼有時(shí)就像在黑暗的隧道里靠觸覺摸索著前行。在代碼中不小心增加了一個(gè)多余的“(”或“{”,整段代碼可能馬上像一堵猝然倒塌的城墻,在IE中報(bào)出的錯(cuò)誤往往似是而非,甚至和真實(shí)原因往往相差十萬八千里,讓人如墮云里霧里。好事者引用柳傳志的話,概括編寫JavaScript程序的感受:戰(zhàn)戰(zhàn)兢兢,如履薄冰。
(1) 無處不在的Intellisense功能

開發(fā)人員對(duì)Visual Studio 2008中一個(gè)殷切期盼的特性是,Visual Studio 2008對(duì)客戶端JavaScript Intellisense的支持,當(dāng)然這個(gè)特性在免費(fèi)的Visual Web Developer Express版本中也能正常的工作。

Visual Studio 2008的JavaScript IntelliSense功能類似其他IDE中的Auto-completion,也就是能夠自動(dòng)補(bǔ)全,不過和VI和Emacs中的Auto-completion不一樣,IntelliSense比較Intelligent,根據(jù)編程語言的語法來談出備選填。

如果讀者以前曾為手工鍵入JavaScript感到煩惱的話,那肯定會(huì)為Visual Studio 2008的這個(gè)特性感到驚喜。Visual Studio 2008 為所有的.aspx 文件、.htm 文件以及外部的.js 文件中都提供完整的JavaScript Intellisense自動(dòng)完成功能。它不僅對(duì)普通的JavaScript代碼提供了Intellisense ,還對(duì)新的ASP.NET AJAX 客戶端JavaScript框架和用它編寫的JavaScript代碼提供了豐富的支持。
(2) 外部JS文件的Intellisense功能

Visual Studio 2008中的JavaScript Intellisense支持之酷處在于,它被設(shè)計(jì)成開箱即可用(Just work out of the box)的。這意味著,開發(fā)人員不需要對(duì)JavaScript文件運(yùn)行別的工具來建立Intellisense提示,也不用以某種方式來修飾JavaScript。如果在外部JavaScript文件中建有一個(gè)標(biāo)準(zhǔn)的JavaScript函數(shù)或原型類型,那么Visual Studio 2008中使用它時(shí),就應(yīng)該自動(dòng)得到Intellisense完成。

很明顯,當(dāng)外部JS文件具在Intellisense功能時(shí),開發(fā)人員就可以像使用內(nèi)部的JavaScript語句塊一樣進(jìn)行調(diào)用。如此一來,就可以自動(dòng)調(diào)用外部JS文件中定義的JavaScript函數(shù)及變量。

例如,如下圖所示,在些在文件中引用了兩個(gè).js文件 
 intellisense1
于是,在MyLibrary.js文件中即可以調(diào)用Util.js文件中定義的方法了。當(dāng)然,也可以讓Visual Studio 2008讓Util.js具有Intellisense功能。只需在MyLibrary.js文件的最頂部加入注釋即可。 
 intellisense2
(3) JavaScript文檔注釋

Visual Studio 2008還允許開發(fā)人員可選擇性地在代碼/庫中添加文檔注釋,來進(jìn)一步幫助Intellisense 引擎,以及允許開發(fā)人員提供文檔注釋,Visual Studio Intellisense引擎可以收集這些注釋,用作摘要注釋和類型描述/驗(yàn)證檢查。

譬如,如果開發(fā)人員可以把如下的注釋添加到getMessage函數(shù): 
 intellisense3
當(dāng)在Default.aspx中進(jìn)行編碼時(shí),Visual Studio 2008會(huì)自動(dòng)的顯示getMessage函數(shù)的相關(guān)信息。Visual Studio 會(huì)自動(dòng)顯示摘要的細(xì)節(jié),以及在健入?yún)?shù)值時(shí)提供行內(nèi)的幫助。

除了以上的基本JavaScript注釋功能之外,ASP.NET AJAX也使用文檔摘要注釋的格式。兩者都可以:

給類、方法、參數(shù)添加摘要細(xì)節(jié);本地化JavaScript中的文檔;當(dāng)一個(gè)外部JavaScript 文件引用另一個(gè)外部JavaScript 文件后,在使用前一個(gè)外部JavaScript文件時(shí),讓它的Javascript Intellisense認(rèn)為,另外文件中的方法和類型在當(dāng)前的范圍內(nèi)。

ASP.NET AJAX 控件工具包現(xiàn)在也擁有了內(nèi)置的MSBuild任務(wù),可以將其加到web項(xiàng)目里,該任務(wù)可以在項(xiàng)目以“發(fā)布”模式編譯時(shí),自動(dòng)從JavaScript 文件中除去這些文檔注釋以及空格和其他不需要的內(nèi)容。這提供了非常有用的功能,它允許在開發(fā)時(shí)維護(hù)調(diào)試/描述性的Javascript版本,然后允許做個(gè)切換就可生成為運(yùn)行時(shí)高效下載而優(yōu)化的版本。

相關(guān)文章

最新評(píng)論