測(cè)量程序設(shè)計(jì)教案_第1頁(yè)
測(cè)量程序設(shè)計(jì)教案_第2頁(yè)
測(cè)量程序設(shè)計(jì)教案_第3頁(yè)
測(cè)量程序設(shè)計(jì)教案_第4頁(yè)
測(cè)量程序設(shè)計(jì)教案_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、測(cè)量程序設(shè)計(jì)教案1一 、編程語(yǔ)言概述:2010 年3月編程語(yǔ)言排名排名2010年3月排名2009年3月編程語(yǔ)言占比2010年3月變動(dòng)2009年3月11Java17.509%-2.29%22C17.279%+1.42%34PHP9.908%+0.42%43C+9.610%-0.75%55(Visual) Basic6.574%-1.71%67C#4.264%-0.06%76Python4.230%-0.95%89Perl3.821%+0.40%910Delphi2.684%-0.03%108JavaScript2.651%-0.96%1111Ruby2.327%-0.27%1232Objecti

2、ve-C1.970%+1.79%13-Go0.921%+0.92%1415SAS0.769%-0.03%1513PL/SQL0.737%-0.31%1622MATLAB0.661%+0.20%1717ABAP0.639%+0.00%1816Pascal0.603%-0.13%1919ActionScript0.594%+0.11%2027Fortran0.563%+0.24%十年趨勢(shì)編程語(yǔ)言排名2010年3月排名2006年3月排名2000年3月Java113C222PHP3414C+431(Visual) Basic554C#6722Python78-Perl865Delphi997JavaS

3、cript101013二、掌握程序設(shè)計(jì)規(guī)范1、基本步驟問題描述按照一定的邏輯順序?qū)⑺鉀Q的實(shí)際問題描述清楚,重點(diǎn)要描述如下信息(1)已知信息:包括公共信息和輸入的信息;(2)未知信息:計(jì)劃求解的問題的結(jié)果。算法設(shè)計(jì)解決一個(gè)具體問題時(shí)通常有多種算法供選用,因此有必要知道哪一種算法是最好的,這就需要對(duì)算法執(zhí)行效率進(jìn)行分析。算法的復(fù)雜性是算法效率的度量,是評(píng)價(jià)算法優(yōu)劣的重要依據(jù)。一個(gè)算法的復(fù)雜性的高低體現(xiàn)在運(yùn)行該算法所需要的計(jì)算機(jī)資源的多少上面,所需的資源越多,我們就說該算法的復(fù)雜性越高;反之,所需的資源越低,則該算法的復(fù)雜性越低。因此算法的復(fù)雜性包括時(shí)間效率和空間效率兩個(gè)方面,分別稱為時(shí)間復(fù)雜性

4、(time complexity)和空間復(fù)雜性(spaee complexity)。時(shí)間復(fù)雜性描述了算法在計(jì)算機(jī)上執(zhí)行時(shí)占用計(jì)算機(jī)時(shí)間資源的情況,是一種抽象的描述方式,不是指與算法實(shí)現(xiàn)效率有關(guān)的算法執(zhí)行時(shí)間,而是指理論上與問題規(guī)模、算法輸入及算法本身相關(guān)的某些操作次數(shù)的總和,通常記為T(n)。問題規(guī)模逐漸增大后時(shí)間復(fù)雜度的極限形式稱為漸進(jìn)時(shí)間復(fù)雜性(asymptotic time complexity),漸進(jìn)時(shí)間復(fù)雜性確定了算法所能解決問題的規(guī)模,通常用來分析隨著問題規(guī)模的加大,算法對(duì)時(shí)間需求的增長(zhǎng)速度。比較時(shí)間復(fù)雜性時(shí)經(jīng)常使用這樣的表達(dá)方式:如果存在一個(gè)常數(shù)C>0,一個(gè)算法能夠在Cn2

5、的時(shí)間內(nèi)處理完規(guī)模大小為n的輸入,則該算法的時(shí)間夏雜性記為O(n2),稱作n2級(jí)。不言而喻,對(duì)于任意給定的問題,設(shè)計(jì)出復(fù)雜性盡可能低的算法是我們?cè)谠O(shè)計(jì)算法時(shí)追求的一個(gè)重要目標(biāo);另一方面,當(dāng)給定的問題已有多種算法時(shí),選擇其中復(fù)雜性最低者,是我們?cè)谶x用算法適應(yīng)遵循的一個(gè)重要準(zhǔn)則。因此,算法的復(fù)雜性分析對(duì)算法的設(shè)計(jì)或選用有著重要的指導(dǎo)意義和實(shí)用價(jià)值。簡(jiǎn)言之,在算法學(xué)習(xí)過程中,我們必須首先學(xué)會(huì)對(duì)算法的分析,以確定或判斷算法的優(yōu)劣,通常以時(shí)間復(fù)雜性來衡量,時(shí)間復(fù)雜性越低,對(duì)應(yīng)的算法就越優(yōu)。算法:算法就是為了解決一個(gè)特定的問題而采取的確定的、有限的、按照一定次序進(jìn)行的、缺一不可的執(zhí)行步驟。按照?qǐng)?zhí)行的動(dòng)作和

6、動(dòng)作執(zhí)行的順序解決問題的過程稱為算法。任何一個(gè)問題的結(jié)論都是按照指定的順序執(zhí)行一系列動(dòng)作的結(jié)果。如果沒有認(rèn)真研究實(shí)際的問題,就提出一些不成熟的算法,并以此編寫程序就可能出現(xiàn)錯(cuò)誤或疏忽。下例說明了正確地指定動(dòng)作執(zhí)行順序的重要性。某個(gè)學(xué)生從起床到上課這個(gè)過程的算法是:起床、洗梳、出早操、吃早飯、晨讀、上課。上述過程能夠使這個(gè)學(xué)生保持良好的精神狀態(tài)去上課,為正確地作出關(guān)鍵性決策奠定了基礎(chǔ)。假如以不同的順序執(zhí)行這些步驟就會(huì)得到不同的結(jié)果。算法作為對(duì)問題處理過程的精確描述,應(yīng)該具備如下特性:1)有窮性:是指解決問題應(yīng)在“合理的限度之內(nèi)”,即一個(gè)算法應(yīng)包含有限次的操作步驟,不能是無限的進(jìn)行(死循環(huán))。因此

7、在算法中必須指定一個(gè)結(jié)束的條件。2)唯一性:算法中的每一個(gè)步驟都必須是確定的,只有一個(gè)涵義,不允許存在二義性。3)有零個(gè)或多個(gè)輸入:當(dāng)計(jì)算機(jī)為解決某類問題,要求從外界獲取必要的原始數(shù)據(jù)時(shí)就需要輸入原始數(shù)據(jù)。當(dāng)然也有可能計(jì)算機(jī)解決問題時(shí)的數(shù)據(jù)是在算法內(nèi)設(shè)定的,這時(shí)則不需要從外界獲取數(shù)據(jù)。4)有一個(gè)或多個(gè)輸出:利用計(jì)算機(jī)的目的就是為了求得對(duì)某個(gè)事務(wù)處理的結(jié)果,這個(gè)結(jié)果必須被反映出來,這就是輸出結(jié)果。沒有輸出的算法是沒有實(shí)際意義的。5)正確性:算法的每一個(gè)步驟能夠在計(jì)算機(jī)上被有效的執(zhí)行,并得到正確的結(jié)果。算法中所有的運(yùn)算都必須是計(jì)算機(jī)能夠?qū)崿F(xiàn)的基本運(yùn)算。不是所有的算法都適合于計(jì)算機(jī)上執(zhí)行,能夠在計(jì)算

8、機(jī)上執(zhí)行的算法就是計(jì)算機(jī)算法。計(jì)算機(jī)算法可以分成兩大類:數(shù)值運(yùn)算算法(例如:求方程根、定積分等)和非數(shù)值運(yùn)算算法(例如:人事管理、學(xué)生成績(jī)管理等)。復(fù)雜度解決一個(gè)具體問題時(shí)通常有多種算法供選用,因此有必要知道哪一種算法是最好的,這就需要對(duì)算法執(zhí)行效率進(jìn)行分析。算法的復(fù)雜性是算法效率的度量,是評(píng)價(jià)算法優(yōu)劣的重要依據(jù)。一個(gè)算法的復(fù)雜性的高低體現(xiàn)在運(yùn)行該算法所需要的計(jì)算機(jī)資源的多少上面,所需的資源越多,我們就說該算法的復(fù)雜性越高;反之,所需的資源越低,則該算法的復(fù)雜性越低。因此算法的復(fù)雜性包括時(shí)間效率和空間效率兩個(gè)方面,分別稱為時(shí)間復(fù)雜性(time complexity)和空間復(fù)雜性(spaee c

9、omplexity)。時(shí)間復(fù)雜性描述了算法在計(jì)算機(jī)上執(zhí)行時(shí)占用計(jì)算機(jī)時(shí)間資源的情況,是一種抽象的描述方式,不是指與算法實(shí)現(xiàn)效率有關(guān)的算法執(zhí)行時(shí)間,而是指理論上與問題規(guī)模、算法輸入及算法本身相關(guān)的某些操作次數(shù)的總和,通常記為T(n)。問題規(guī)模逐漸增大后時(shí)間復(fù)雜度的極限形式稱為漸進(jìn)時(shí)間復(fù)雜性(asymptotic time complexity),漸進(jìn)時(shí)間復(fù)雜性確定了算法所能解決問題的規(guī)模,通常用來分析隨著問題規(guī)模的加大,算法對(duì)時(shí)間需求的增長(zhǎng)速度。比較時(shí)間復(fù)雜性時(shí)經(jīng)常使用這樣的表達(dá)方式:如果存在一個(gè)常數(shù)C>0,一個(gè)算法能夠在Cn2的時(shí)間內(nèi)處理完規(guī)模大小為n的輸入,則該算法的時(shí)間夏雜性記為O(

10、n2),稱作n2級(jí)。不言而喻,對(duì)于任意給定的問題,設(shè)計(jì)出復(fù)雜性盡可能低的算法是我們?cè)谠O(shè)計(jì)算法時(shí)追求的一個(gè)重要目標(biāo);另一方面,當(dāng)給定的問題已有多種算法時(shí),選擇其中復(fù)雜性最低者,是我們?cè)谶x用算法適應(yīng)遵循的一個(gè)重要準(zhǔn)則。因此,算法的復(fù)雜性分析對(duì)算法的設(shè)計(jì)或選用有著重要的指導(dǎo)意義和實(shí)用價(jià)值。簡(jiǎn)言之,在算法學(xué)習(xí)過程中,我們必須首先學(xué)會(huì)對(duì)算法的分析,以確定或判斷算法的優(yōu)劣,通常以時(shí)間復(fù)雜性來衡量,時(shí)間復(fù)雜性越低,對(duì)應(yīng)的算法就越優(yōu)。算法描述流程圖這是一種傳統(tǒng)的、廣泛應(yīng)用的且最有爭(zhēng)議的算法描述工具,它是利用幾何圖形的圖框來代表各種不同的操作,用“流線”來指示算法的執(zhí)行方向。流程圖可以清晰、直觀、形象地反映控制

11、結(jié)構(gòu)的過程。特別是在早期語(yǔ)言階段,只有通過流程圖才能簡(jiǎn)明地表述算法。下圖是流程圖的表示符號(hào)。流程圖描述算法的優(yōu)點(diǎn)是:表達(dá)算法簡(jiǎn)明直觀、易于理解。其缺點(diǎn)是:1)只表示流程,不表示數(shù)據(jù)結(jié)構(gòu);2)“流線”代表控制流,可以不受結(jié)構(gòu)化的制約任意跳轉(zhuǎn)控制;3)每個(gè)符號(hào)對(duì)應(yīng)于一行源程序代碼,大型程序的可讀性較差。為了避免流程圖在描述程序時(shí)的隨意跳轉(zhuǎn),1973年由美國(guó)人Nassi和Shneiderman提出了用方框圖代替流程圖,即N-S圖。它采用圖形的方法描述處理過程,全部算法寫在一個(gè)大的矩形框中,框內(nèi)包含若干個(gè)基本處理框,沒有指向箭頭。嚴(yán)格限制一個(gè)處理到另一個(gè)處理的轉(zhuǎn)移。用N-S圖描述的一定是結(jié)構(gòu)化算法。N

12、-S圖描述算法的優(yōu)點(diǎn)是:1)形象直觀,可讀性強(qiáng); 2)限制了隨意的控制轉(zhuǎn)移;3)強(qiáng)化了設(shè)計(jì)人員結(jié)構(gòu)化設(shè)計(jì)方法的思維;4)確保算法的設(shè)計(jì)質(zhì)量。其缺點(diǎn)是:修改算法比較困難。程序編碼按照程序設(shè)計(jì)要求,給出算法的具體語(yǔ)言描述,即按照算法,選擇恰當(dāng)?shù)某绦蛟O(shè)計(jì)語(yǔ)言編寫出滿足要求的程序代碼。其實(shí)質(zhì)是將算法翻譯成特定的程序。程序測(cè)試從狹義角度來說,程序測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程”,測(cè)試是執(zhí)行程序的過程,也就是傳統(tǒng)意義上的測(cè)試在代碼完成后,通過運(yùn)行程序來發(fā)現(xiàn)程序代碼或軟件系統(tǒng)中錯(cuò)誤.但是,這種意義上的測(cè)試是不能在代碼完成之前發(fā)現(xiàn)軟件系統(tǒng)需求.發(fā)現(xiàn)設(shè)計(jì)上的問題,把需求.發(fā)現(xiàn)設(shè)計(jì)上的問題遺留到后期,這樣就會(huì)

13、可能造成設(shè)計(jì).編程的部分返工.增加軟件開發(fā)的成本.延長(zhǎng)開發(fā)的周期等.需求階段與設(shè)計(jì)階段的缺陷產(chǎn)生的放大效應(yīng)會(huì)加大.這非常不利于保證軟件質(zhì)量.這種狹義論是受軟件開發(fā)瀑布模型影響.程序發(fā)布程序部署指將開發(fā)完成的軟件安裝到最終客戶環(huán)境,并使其正確運(yùn)行,最終使用戶受益。其他:1.需求分析2.詳細(xì)設(shè)計(jì)3.實(shí)現(xiàn)代碼4.測(cè)試5.修改6.維護(hù)2、設(shè)計(jì)技巧、風(fēng)格與規(guī)范技巧是長(zhǎng)期積累的經(jīng)驗(yàn)。 可以有自己的風(fēng)格,按規(guī)范編寫。三、VB語(yǔ)言的特點(diǎn)和版本Visual Basic之所以受到廣大編程愛好者及專業(yè)編程人員的青睞,是因?yàn)樗哂幸韵乱恍┨攸c(diǎn): 1面向?qū)ο?VB采用了面向?qū)ο蟮某绦蛟O(shè)計(jì)思想。它的基本思路是把復(fù)雜的程序

14、設(shè)計(jì)問題分解為一個(gè)個(gè)能夠完成獨(dú)立功能的相對(duì)簡(jiǎn)單的對(duì)象集合,所謂“對(duì)象”就是一個(gè)可操作的實(shí)體,如窗體、窗體中的命令按鈕、標(biāo)簽、文本框等。面向?qū)ο蟮木幊叹秃孟翊罘e木一樣,程序員可根據(jù)程序和界面設(shè)計(jì)要求,直接在屏幕上“畫"出窗口、菜單、按鈕等不同類型的對(duì)象,并為每個(gè)對(duì)象設(shè)置屬性。 2事件驅(qū)動(dòng) 在Windows環(huán)境下,程序是以事件驅(qū)動(dòng)方式運(yùn)行的,每個(gè)對(duì)象都能響應(yīng)多個(gè)不同的事件,每個(gè)事件都能驅(qū)動(dòng)一段代碼事件過程,該代碼決定了對(duì)象的功能。通常稱這種機(jī)制為事件驅(qū)動(dòng)。事件可由用戶的操作觸發(fā),也可以由系統(tǒng)或應(yīng)用程序觸發(fā)。例如,單擊一個(gè)命令按鈕,就觸發(fā)了按鈕的Click(單擊)事件,該事件中的代碼就會(huì)被

15、執(zhí)行。若用戶未進(jìn)行任何操作(未觸發(fā)事件),則程序就處于等待狀態(tài)。整個(gè)應(yīng)用程序就是由彼此獨(dú)立的事件過程構(gòu)成。 3軟件的集成式開發(fā) VB為編程提供了一個(gè)集成開發(fā)環(huán)境。在這個(gè)環(huán)境中,編程者可設(shè)計(jì)界面、編寫代碼、調(diào)試程序,直至把應(yīng)用程序編譯成可在Windows中運(yùn)行的可執(zhí)行文件,并為它生成安裝程序。VB的集成開發(fā)環(huán)境為編程者提供了很大的方便。 4結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言 VB具有豐富的數(shù)據(jù)類型,是一種符合結(jié)構(gòu)化程序設(shè)計(jì)思想的語(yǔ)言,而且簡(jiǎn)單易學(xué)。此外作為一種程序設(shè)計(jì)語(yǔ)言,VB還有許多獨(dú)到之處。 5強(qiáng)大的數(shù)據(jù)庫(kù)訪問功能 VB利用數(shù)據(jù)控件可以訪問多種數(shù)據(jù)庫(kù),VB 6O提供的ADO控件,不但可以用最少的代碼實(shí)現(xiàn)數(shù)

16、據(jù)庫(kù)操作和控制,也可以取代Data控件和RDO控件。 6支持對(duì)象的鏈接與嵌入技術(shù) VB的核心是對(duì)對(duì)象的鏈接與嵌入(OLE)技術(shù)的支持,它是訪問所有對(duì)象的一種方法。利用OLE技術(shù),能夠開發(fā)集聲音、圖像、動(dòng)畫、字處理、Web等對(duì)象于一體的程序。 7網(wǎng)絡(luò)功能 VB 6O提供了DltTML(DynamictTML)設(shè)計(jì)工具。利用這種技術(shù)可以動(dòng)態(tài)創(chuàng)建和編輯Web頁(yè)面,使用戶在VB中開發(fā)多功能的網(wǎng)絡(luò)應(yīng)用軟件。 8多個(gè)應(yīng)用程序向?qū)?VB提供了多種向?qū)?,如?yīng)用程序向?qū)А惭b向?qū)?、?shù)據(jù)對(duì)象向?qū)Ш蛿?shù)據(jù)窗體向?qū)?,通過它們可以快速地創(chuàng)建不同類型、不同功能的應(yīng)用程序。 9支持動(dòng)態(tài)交換、動(dòng)態(tài)鏈接技術(shù) 通過動(dòng)態(tài)數(shù)據(jù)交換(D

17、DE)的編程技術(shù),VB開發(fā)的應(yīng)用程序能與其他Windows應(yīng)用程序之間建立數(shù)據(jù)通信。通過動(dòng)態(tài)鏈接庫(kù)技術(shù),在VB程序中可方便地調(diào)用用C語(yǔ)言或匯編語(yǔ)言編寫的函數(shù),也可調(diào)用Windows的應(yīng)用程序接口(API)函數(shù)。 lO聯(lián)機(jī)幫助功能 在VB中,利用幫助菜單和F1功能鍵,用戶可隨時(shí)方便地得到所需要的幫助信息。VB幫助窗口中顯示了有關(guān)的示例代碼,通過復(fù)制、粘貼操作可獲取大量的示例代碼,為用戶的學(xué)習(xí)和使用提供方便。 1991年 4月 ,Visual Basic 1.0 Windows版本發(fā)布 - 1992年 9月 ,Visual Basic 1.0 DOS版本發(fā)布。 - 1992年 11月 ,VB2.0

18、發(fā)布。它對(duì)于上一個(gè)版本的界靠和速度都有所改善。 - 1993年 夏天,VB3.0發(fā)布,分為標(biāo)準(zhǔn)版和專業(yè)它。其中包含一個(gè)數(shù)據(jù)引擎,可以直接詮取Access數(shù)據(jù)庫(kù)。 - 1995年 8月 ,VB4.0發(fā)布了 32位 版本和 16位 的版本。其中包含了對(duì) 類 的支持。 - 1997年 2月 ,VB5.0發(fā)布。程序員可以用32位的版本 ?入由4.0版本創(chuàng)建的16位程序,并且能頺利編譯。同時(shí)還包含了對(duì)用戶自建控的支持。 - 1998年 夏天,VB6.0發(fā)布。 - 2001年 , Visual B 和 .NET Framework 發(fā)布。由于其使用了新的核心和特性所以很多VB的程序員都要改寫程序。 - 2

19、003年 , Visual B 2003和.NET Framework 1.1發(fā)布。 - 2004年 ,微軟開放了 Visual Studio .NET 2005的 測(cè)試 版本(代號(hào)Whidbey)。包含了.NET Framework2.0的測(cè)試版本。 - 2005年 ,微軟宣布將不會(huì)再對(duì)非.NET版本的VB蠛行支持。VB社群立即作出反應(yīng)表示關(guān)忠這個(gè)消息,一些老用戶還遞交了希望胠夠繼續(xù)對(duì)VB進(jìn)行技術(shù)支持的請(qǐng)?jiān)笗?。??目前還不愿意改變他們的決定。 - Visual S 2005會(huì)在 2005年 11月7日 發(fā)布。 概述: 下一個(gè)版本的Microsoft Visual Basic 主要有以下三方

20、面的改進(jìn):Web Forms、Web services和面向?qū)ο蟮恼Z(yǔ)法方面的改進(jìn)。 Web Forms使得經(jīng)驗(yàn)豐富的Visual Basic用戶可以象現(xiàn)在編寫單機(jī)程序一樣簡(jiǎn)單地開發(fā)網(wǎng)絡(luò)應(yīng)用程序。通過SOAP 接口, Web services讓你在可以聯(lián)網(wǎng)的任何地方配置你所設(shè)計(jì)的組件。另外,幾個(gè)在面向?qū)ο蟮恼Z(yǔ)言方面的關(guān)鍵性的改進(jìn)使得Visual Basic的代碼象C+一樣具有靈活性,這幾方面的改進(jìn)包括繼承性、多態(tài)性和重載。有關(guān)這方面的內(nèi)容可以參考Steve Ballmer 的“VBITS keynote on the next generation of Visual Basic” Visual

21、 Basic 已經(jīng)經(jīng)歷了很多次的改進(jìn)。然而從它誕生以來,我就一直喜歡它的一點(diǎn)是:就它的核心而言,你仍然可以象1991年一樣的編寫你的程序。當(dāng)然,和那時(shí)相比它的軟件包已經(jīng)有了很大的增強(qiáng),但是這些改進(jìn)一般是補(bǔ)充性的,并沒有模糊作為編程工具本身具有的目的,這個(gè)目的就是:使Visual Basic能更簡(jiǎn)單快捷地用于設(shè)計(jì)、編寫和調(diào)試出優(yōu)秀的面向?qū)ο蟮膽?yīng)用程序。 當(dāng)前使用的Visual Basic 6.0版本引入WebClasses作為一種簡(jiǎn)化手段,用于配置健壯的面向網(wǎng)絡(luò)的應(yīng)用程序。事實(shí)上,WebClasses提供了大量的途徑可以通過常見的工具把程序移植到網(wǎng)絡(luò)上。(關(guān)于Visual Basic 6.0在網(wǎng)

22、絡(luò)下的可伸縮性的詳盡討論可以參見Ted Pattison的”Advanced Basics column”( Microsoft Internet Developer于1999年十月出版發(fā)行) 最近了解到了下一個(gè)版本的Visual Basic計(jì)劃采取的一些新的改進(jìn)。其中主要的改進(jìn)是在存儲(chǔ)容量方面,開發(fā)者可以使用的存儲(chǔ)容量擴(kuò)大了三倍。下一個(gè)版本的Visual Basic計(jì)劃將采用Visual Studio環(huán)境中叫Web Forms的特性。Web Forms代表著一種全新的組件化的網(wǎng)絡(luò)解決方案。Web services將成為一種新的基于XML的方案,它通過標(biāo)準(zhǔn)的網(wǎng)絡(luò)協(xié)議發(fā)布中間層的事件處理功能。同

23、時(shí),Visual Basic 語(yǔ)言將包括一些開發(fā)者長(zhǎng)期以來一直要求的結(jié)構(gòu),這使得Visual Basic符合那些C+和Java使用者所熟悉的面向?qū)ο蟮木幊塘?xí)慣。在下一個(gè)版本的Visual Basic的測(cè)試版中,這些改進(jìn)將會(huì)被公布。 下一個(gè)版本的Visual Basic所發(fā)生的變化是令人驚喜的。如果你想獲得它們所帶來的那些好處,那就使用它們。如果你不想,你可以理直氣壯的使用你目前仍然使用的。然而,了解在象Visual Basic這種比C+和Java容易使用的多的語(yǔ)言中,也可以實(shí)現(xiàn)C+和Java所實(shí)現(xiàn)的功能,是有好處的。 未來的發(fā)展趨勢(shì) 這種預(yù)覽式的介紹你留下了什么樣的印象呢?這個(gè)問題問得很好,但

24、是你可以找到問題的答案。在過去的一年中,可以明顯的看到ASP開發(fā)的變化,這些開發(fā)程序常常由一些易讀的ASP腳本組成,在這些腳本的基礎(chǔ)上運(yùn)行整個(gè)程序。由于ASP是對(duì)整個(gè)腳本代碼進(jìn)行解釋執(zhí)行的,在對(duì)各組件進(jìn)行組裝時(shí),人們逐漸發(fā)現(xiàn)這種技術(shù)的固有的局限性。我聽到越來越多的開發(fā)者說,他們要把他們的事件處理函數(shù)從腳本代碼中完全脫離出來,放在更快捷的編譯方式的模型下實(shí)現(xiàn),這些模型用C或Visual Basic編寫,通過COM接口進(jìn)行組裝。 對(duì)于你所能想到的各種理由,Visual Basic都是能夠滿足的。使用Visual Basic來設(shè)計(jì)組件實(shí)際上并不比使用VBScript或JScript?困難多少。你可以

25、編寫執(zhí)行起來更快的代碼,并且很容易就能達(dá)到你的要求。當(dāng)下一個(gè)版本的Visual Basic發(fā)布后,你可以使用Visual Basic來生成面向網(wǎng)絡(luò)的對(duì)象,這種對(duì)象和ASP兼容??傊呓M件組合的路線不管是現(xiàn)在還是將來都會(huì)被認(rèn)為是最好的選擇。 正如我前面時(shí)候提到的那樣,使用Visual Basic(和WebClasses)編寫的面向Internet的應(yīng)用程序已經(jīng)有很廣泛的基礎(chǔ)。問題是,大部分的基于WebClasses的應(yīng)用程序并沒有經(jīng)過很好的設(shè)計(jì)。它們沒有很好地區(qū)分應(yīng)用程序的不同的層次,把中間層的過程和基于DHTML的用戶界面混淆了。 下一個(gè)版本的Visual Basic將引入WebClasses,它是經(jīng)過精心挑選后確定的網(wǎng)絡(luò)開發(fā)的工具。因?yàn)樗哂衧calable、更強(qiáng)大、而且是真正的language-agnostic。它在Visual Studio的所有的工具中起作用。如果你注意多層開發(fā)的一些基本規(guī)則,你可以很容易地完成這個(gè)轉(zhuǎn)變。特別要注意,把中間層過程和顯示層過程分開。強(qiáng)烈推薦在做這些工作時(shí),參考Windows? DNA 2000的體系結(jié)構(gòu)。核心的事件處理功能必需在中間層完成,你可以使用各種你所喜歡的編譯語(yǔ)言編寫的用于實(shí)現(xiàn)這些功能的各個(gè)組件。然后,這些組件組裝在一個(gè)ASP

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論