第一篇:ASP心 得體會
ASP.NET
學(xué)習(xí)
體
會
所 在 學(xué) 院 :
專業(yè)與班級:
學(xué) 生 學(xué) 號 :
學(xué) 生 姓 名 :
日期:數(shù)學(xué)與計算機(jī)科學(xué)學(xué)院計算機(jī)科學(xué)與技術(shù)1060310014025閆航2012.12.08
ASP.NET在現(xiàn)在商業(yè)中應(yīng)用相當(dāng)?shù)膹V泛,這學(xué)期我們開了這門課,那到底什么是ASP呢?ASP嗎,它是一種包含了使用VB Script或Jscript腳本程序代碼的網(wǎng)頁。當(dāng)瀏覽器瀏覽ASP網(wǎng)頁時, Web服務(wù)器就會根據(jù)請求生成相應(yīng)的HTML代碼然后再返回給瀏覽器,這樣瀏覽器端看到的 就是動態(tài)生成的網(wǎng)頁。ASP是微軟公司開發(fā)的代替CGI腳本程序的一種應(yīng)用,它可以與數(shù)據(jù)庫和其它程序進(jìn)行交互。是一種簡單、方便的編程工具。在了解了VBSCRIPT的基本語法后,只需要清楚各個組件的用途、屬性、方法,就可以輕松編寫出自己的ASP系統(tǒng)。ASP的網(wǎng)頁文件的格式是.ASP。現(xiàn)在經(jīng)過三個多月的簡單學(xué)習(xí)和上課聽講,初步掌握了ASP.NET動態(tài)網(wǎng)頁制作的一些簡單的知識和基本常識,也能從老師講的基本知識中簡單的應(yīng)用一下上課所學(xué)到的知識感覺ASP.NET網(wǎng)站建設(shè)和維護(hù)不是很方便,其中不僅要應(yīng)用各種方面的知識還要對所學(xué)的知識學(xué)會變通使用,雖然會有一些成功的地方。但是,更多的是困惑,有太多的東西都不懂,以前學(xué)C++、數(shù)據(jù)庫等一些相關(guān)知識的時候沒好好學(xué),現(xiàn)在想真正做好這個網(wǎng)站就顯得不那么容易了。曾經(jīng)看到網(wǎng)上有這么一句話,一個優(yōu)秀的網(wǎng)絡(luò)程序員不但要了解自己領(lǐng)域的一些專業(yè)技術(shù),而且很多時候還要充當(dāng)半個網(wǎng)絡(luò)工程師,半個美術(shù)設(shè)計師和半個數(shù)據(jù)庫管理員。照這么說來,我單單學(xué)習(xí)ASP.NET是遠(yuǎn)遠(yuǎn)不夠的,還要學(xué)習(xí)計算機(jī)網(wǎng)絡(luò)、美術(shù)設(shè)計、數(shù)據(jù)庫,我很喜歡有關(guān)計算機(jī)方面的東西。認(rèn)為我們當(dāng)代的生活越來越離不開計算機(jī),并且我也很癡迷計算機(jī)所帶來的強(qiáng)大功能。首先我們學(xué)習(xí)了C#,雖然C#現(xiàn)在不是編程員的熱門語言,但在網(wǎng)頁制作中也相當(dāng)?shù)氖褂谩4笕蠈W(xué)期我們有一門課是C# AND ADO.NET DEVELOPMENT。雖然我們當(dāng)時用的C#程序的開發(fā)平臺是.NET,但是我對.NET卻了解粗淺,對c#這門編程語言和.NET的關(guān)系不太清楚。隨著后來學(xué)了另一門.NET 的課程SOA, CLOUD COMPUTING AND SHAREPOINT PROGRAMMING WITH MICROSOFT.NET,我才對.NET這一門技術(shù)有了深入的理解。在這里,我想說一說我個人對.NET的理解,希望能幫助大家更好的學(xué)習(xí)Microsoft.NET。
現(xiàn)在在ASP的世界中,ASP的應(yīng)用相當(dāng)?shù)膹V泛,在很多方面都有有用到。一方面,用戶擁有一套設(shè)備,例如 PC、移動電話、筆記本。這些設(shè)備可能放在辦公室或者家里。當(dāng)用戶需要在辦公室的某臺設(shè)備或移動電話上訪問家中存儲的的信息(電子郵件或其他任何信息)時,問題就出現(xiàn)了,因為所有這些設(shè)備都將數(shù)據(jù)存儲在不同的位置。用戶認(rèn)為需要一種個人信息空間,通過它,用戶可以在家中或途中訪問存儲在辦公室的信息,或者以相同方式從任何位置訪問存儲在家中的信息。另一方面,開發(fā)人員沒有足夠的工具來開發(fā)用戶所需的解決方案。結(jié)果是,站點雖然頗具吸引力卻缺乏有效性和實用性。此外,需要為不同的設(shè)備開發(fā)不同的代碼,這也使開發(fā)人員頗感為難。如果開發(fā)人員擁有某些工具,使他能夠只編寫一次代碼,并可在多種設(shè)備中部署該代碼,將可以提高開發(fā)人員的工作效率。這是開發(fā)人員的需求。
在ASP中我們還學(xué)習(xí)了FSO、CGI、PHP等,那什么是FSO呢?而FSO是微軟ASP的一個對文件操作的控件,該控件可以對服務(wù)器進(jìn)行讀取、新建、修改、刪除目錄以及文件的操作。是ASP編程中非常有用的一個控件。但是因
為權(quán)限控制的問題,很多虛擬主機(jī)服務(wù)器的FSO反而成為這臺服務(wù)器的一個公開的后門,因為客戶可以在自己的ASP網(wǎng)頁里面直接就對該控件編程,從而控制該服務(wù)器甚至刪除服務(wù)器上的文件。因此不少業(yè)界的虛擬主機(jī)提供商都干脆關(guān)掉了這個控件,讓客戶少了很多靈活性。萬維時空的W2K虛擬主機(jī)服務(wù)器具有高安全性,可以讓客戶在自己的網(wǎng)站空間中任意使用卻有沒有辦法危害系統(tǒng)或者妨礙其他客戶網(wǎng)站的正常運行。CGI是一個用于定Web服務(wù)器與外部程序之間通信方式的標(biāo)準(zhǔn),使得外部程序能生成HTML、圖像或者其他內(nèi)容,而服務(wù)器處理的方式與那些非外部程序生成的HTML、圖像或其他內(nèi)容的處理方式是相同的。因此,CGI程序冊僅使你能生成表態(tài)內(nèi)容而能生動態(tài)內(nèi)容。使用CGI的原因在于它是一個定義良好并被廣泛支持的標(biāo)準(zhǔn),沒有CGI就不可能實現(xiàn)動態(tài)的Web頁面,除非使用一些服務(wù)器中提供的特殊方法(如今,也有除CGI之外的其他技術(shù)逐漸在成為標(biāo)準(zhǔn))。PHP是一種服務(wù)器端HTML-嵌入式腳本描述語言。其最強(qiáng)大和最重要的特征是其數(shù)據(jù)庫集成層,使用它完成一個含有數(shù)據(jù)庫功能的網(wǎng)頁是不可置信的簡單。在HTML文件中,PHP腳本程序(語法類似于Perl或者c語言)可以使用特別的PHP標(biāo)簽進(jìn)行引用,這樣網(wǎng)頁制作者也不必完全依賴HTML生成網(wǎng)頁了。由于PHP是在服務(wù)器端執(zhí)行的,客戶端是看不到PHP代碼的。PHP可以完成任何CGI腳本可以完成的任務(wù),但它的功能的發(fā)揮取決于它和各種數(shù)據(jù)庫的兼容性。PHP除了可以使用HTTP進(jìn)行通信,也可以使用IMAP, SNMP, NNTP, POP3協(xié)議。
在目前的網(wǎng)站統(tǒng)計系統(tǒng)決大部分都是CGI的,但編寫起來特別復(fù)雜,而ASP學(xué)起來簡單,更有和數(shù)據(jù)庫結(jié)合的優(yōu)點,所以結(jié)合自己曾經(jīng)做過的網(wǎng)站統(tǒng)計系統(tǒng),和大家探討一下ASP編寫網(wǎng)站統(tǒng)計系統(tǒng)。大家都看過網(wǎng)易的網(wǎng)站統(tǒng)計系統(tǒng),它可以統(tǒng)計總訪問量,每日平均訪問量,當(dāng)日訪問量,最高訪問量,最高訪問日期,日流量分析,月流量分析,周流量分析,瀏覽器分析,等等。其實要做一個ASP的訪問統(tǒng)計系統(tǒng)關(guān)鍵是系統(tǒng)表結(jié)構(gòu)的設(shè)計。以及如何來采集用戶的CGI變量,如何來顯示用戶的信息。也就是說系統(tǒng)的關(guān)鍵是兩個ASP程序,統(tǒng)計程序和顯示程序。采集用戶名我們可以用Request對象的相應(yīng)方法取得,然后檢查用戶表判斷用戶是否合法,然后取信息,用我們上面講到的取得相應(yīng)信息的方法取得信息,然后進(jìn)行加工保存在數(shù)據(jù)表里,但最重要的是如何對數(shù)據(jù)進(jìn)行更新,如當(dāng)日每小時訪問統(tǒng)計數(shù),當(dāng)天每小時統(tǒng)計數(shù)等,我們?nèi)绾螌γ刻斓臄?shù)據(jù)進(jìn)行更新是這個程式的要點,我們可以采取幾種方式,如對每天的每個小時的記錄的更新我們采取在每天午夜12點更新,對每月的每一天的數(shù)據(jù)我們在月份切換的那一天進(jìn)行更新。隨著Internet的發(fā)展,Web技術(shù)日新月異。繼通用網(wǎng)關(guān)接口(CGI)之后,“ASP”(Active Server Pages)作為一種典型的服務(wù)器端網(wǎng)頁設(shè)計技術(shù),被廣泛地應(yīng)用在網(wǎng)上銀行、電子商務(wù)、搜索引擎等各種互聯(lián)網(wǎng)應(yīng)用中。同時Access數(shù)據(jù)庫作為微軟推出的以標(biāo)準(zhǔn)JET為引擎的桌面型數(shù)據(jù)庫系統(tǒng),由于具有操作簡單、界面友好等特點,具有較大的用戶群體。因此ASP+Access成為許多中小型網(wǎng)上應(yīng)用系統(tǒng)的首選方案。但ASP+Access解決方案在為我們帶來便捷的同時,也帶來了不容忽視的安全問題。由于Access數(shù)據(jù)庫的加密機(jī)制非常簡單,所以即使數(shù)據(jù)庫設(shè)置了密碼,解密也很容易。該數(shù)據(jù)庫系統(tǒng)通過將用戶輸入的密碼與某一固定密鑰進(jìn)行異或來形成一個加密串,并將其存儲在*.mdb文件中從地址“&H42”開始的區(qū)域內(nèi)。由于異或操作的特點是“經(jīng)過兩次異或就恢復(fù)原值”,因此,用這一密鑰與*.mdb文件中的加密串進(jìn)行第二次異或操作,就可以輕松地得到Access數(shù)據(jù)庫的密碼。基于這種原理,可以很容易地編制出
解密程序。由此可見,無論是否設(shè)置了數(shù)據(jù)庫密碼,只要數(shù)據(jù)庫被下載,其信息就沒有任何安全性可言了。
前面所學(xué)到的數(shù)據(jù)訪問都是Web應(yīng)用程序直接訪問數(shù)據(jù)庫。這種在Web窗體中直接訪問和操作數(shù)據(jù)庫中數(shù)據(jù)的方式是一種低效的資源使用方式,并且有可能產(chǎn)生安全風(fēng)險。通過存儲過程訪問數(shù)據(jù)庫,可以有效地提高數(shù)據(jù)訪問效率和數(shù)據(jù)的安全性。可以在執(zhí)行復(fù)雜任務(wù)時減少窗體的編碼量,降低對網(wǎng)絡(luò)寬帶的需求,通過只允許可信賴的本地存儲過程直接訪問數(shù)據(jù)庫,可以保護(hù)數(shù)據(jù)庫的安全。同時我們用到了一個容器控件Repeater,當(dāng)運行頁面時,Repeater將綁定數(shù)據(jù)源中的數(shù)據(jù),并按照模板的要求將數(shù)據(jù)在界面上呈現(xiàn)出來。正是由于Repeater控件沒有默認(rèn)的外觀,所以進(jìn)行界面設(shè)計的時候會感到不太直觀。但Repeater控件非常靈活,可以通過對模板的靈活使用,創(chuàng)建多種不同形式的列表,包括以特定分隔符的列表,或者XML格式的列表,同時它還能夠非常精確地對界面元素進(jìn)行定位。除此之外我們還添加了網(wǎng)絡(luò)在線投票功能,網(wǎng)絡(luò)在線投票是網(wǎng)絡(luò)用戶的興趣、價值取向以及熱點關(guān)注等信息的關(guān)注程度的一種體現(xiàn),實現(xiàn)了在線投票功能,為了更為直觀的顯示和查看投票結(jié)果,將投票結(jié)果圖形化是一種較好的手段。所以我們引用了一個類Graphics, Graphics類是GDI+圖形編程中的核心類。他封裝了GDI+界面的繪圖方法以及圖形顯示設(shè)備,極大地的簡化了開發(fā)人員的圖形編程工程工作。通過Graphics類的屬性可以獲取Graphics對象的分辨率,并能夠為Graphics對象進(jìn)行裁剪區(qū)域的選擇和判斷,而頁面中圖形的繪制則都是通過Graphics類的實例方法實現(xiàn),同時引用了Web服務(wù)器控件Image。Image控件同IMG標(biāo)簽一樣,其主要作用是在Web頁面中顯現(xiàn)圖片信息,其主要屬性為ImageUrl,用于設(shè)置需要顯示的圖片的URL地址。盡管ASP.NET提供的Image控件可以快速地載入圖形,但卻并不支持Click事件。而且GDI+除了可以繪制圖形和文字外,還可以繪制或編輯已有圖片,為圖片添加水印或裁剪圖片等操作。在實際的Web應(yīng)用開發(fā)中,開發(fā)人員為了防止非法用戶惡意批量注冊或者惡意程序暴力破解密碼等操作,我們相應(yīng)的做了圖形驗證碼功能,在用戶身份驗證時都會采用驗證碼技術(shù)。驗證碼技術(shù)可以有效防止某些特定注冊用戶采用惡意程序和暴力破解方式對網(wǎng)站進(jìn)行不斷的登錄嘗試,為此我們引用了Random類,隨即數(shù)在計算機(jī)應(yīng)用程序設(shè)計,尤其是在實踐環(huán)境模擬和測試等領(lǐng)域得到了非常廣泛的應(yīng)用。Random類是一個偽隨即數(shù)生成器,能夠產(chǎn)生滿足一定隨即性系統(tǒng)要求的數(shù)字序列。既然是偽隨機(jī)數(shù)生成器,產(chǎn)生的數(shù)字就不是絕對的隨即數(shù),而是通過一定的算法產(chǎn)生的偽隨機(jī)數(shù)。
在本次課程學(xué)習(xí)過程中,我學(xué)到了好多東西。在此特別感謝老師教誨。老師不僅上課生動、幽默,平時上機(jī)時又悉心的指導(dǎo)。同時感謝學(xué)校給我們提供了非常優(yōu)越的設(shè)計環(huán)境,對于我順利完成這次ASP課程的學(xué)習(xí),本次學(xué)習(xí)起到了關(guān)鍵性的作用。也通過上次的實驗設(shè)計學(xué)會了簡單的網(wǎng)站設(shè)計,通過開發(fā)上次的系統(tǒng),我較全面的掌握了ASPT及SQL的基本知識和編程技巧,并在開發(fā)過程中我的ASP.NET開發(fā)能力得到了進(jìn)一步的提高。如: SQL語言的使用;以前學(xué)過的軟件工程知識、數(shù)據(jù)庫原理及操作也得到了充分的應(yīng)用。
在開發(fā)過程中我學(xué)到了一些經(jīng)驗:系統(tǒng)分析的好壞將決定著的系統(tǒng)開發(fā)成功與否,一份好分析設(shè)計將是成功開發(fā)主要因素。我們在著手開發(fā)之前不要急于編程,先應(yīng)有較長的時間去把分析做好,做好數(shù)據(jù)庫設(shè)計工作,寫出相關(guān)的開發(fā)文檔等。然后再開始編寫程序代碼,這樣做到每寫一步代碼心底有數(shù),有條不絮。在這短短的幾個月中,我知道在程序設(shè)計的時候,不要太在意程序是否最簡潔靈活,對于一般開發(fā)者而言,程序規(guī)范化和可讀性可能比追求程序的靈活性更加重要。在互聯(lián)網(wǎng)資源越來越豐富的情況下,我們可以參考一些規(guī)范的程序源代碼來學(xué)習(xí)。同時我也知道,想要學(xué)好這門課程,所要具備很多條件,首先打代碼要規(guī)范,要做注釋,這樣回頭來看程序時可以很快的看懂,可以練習(xí)自己的邏輯表達(dá)能力,對以后遇到難以實現(xiàn)的功能也可以很好的表達(dá)出來向別人請教,而且出去從事編程工作的話,代碼的規(guī)范是相當(dāng)重要的。還有一點要學(xué)會總結(jié),把自己做的程序用到的知識點列出來就可以很好的總結(jié)自己的知識點。
第二篇:ASP心得體會
ASP.NET定崗實習(xí)總結(jié)
經(jīng)過三個月的實習(xí),初步掌握了ASP.NET動態(tài)網(wǎng)頁開發(fā)Web應(yīng)用,感覺ASP.NET網(wǎng)站建設(shè)和維護(hù)不是很簡單,其中不僅要應(yīng)用各種方面的知識還要對所學(xué)的知識學(xué)會變通使用,雖然會有一些成功的地方,以前學(xué)C、數(shù)據(jù)庫等一些相關(guān)知識的時候沒好好學(xué),現(xiàn)在想真正做好這個網(wǎng)站就顯得不那么容易了。曾經(jīng)看到網(wǎng)上有這么一句話,一個優(yōu)秀的網(wǎng)絡(luò)程序員不但要了解自己領(lǐng)域的一些專業(yè)技術(shù),而且很多時候還要充當(dāng)半個網(wǎng)絡(luò)工程師,半個美術(shù)設(shè)計師和半個數(shù)據(jù)庫管理員。照這么說來,我單單學(xué)習(xí)ASP.NET是遠(yuǎn)遠(yuǎn)不夠的,還要學(xué)習(xí)計算機(jī)網(wǎng)絡(luò)、美術(shù)設(shè)計、數(shù)據(jù)庫,我很喜歡有關(guān)計算機(jī)方面的東西,認(rèn)為我們當(dāng)代的生活越來越離不開計算機(jī),并且我也很癡迷計算機(jī)所帶來的強(qiáng)大功能。
ASP.NET 是 ASP(微軟動態(tài)服務(wù)器網(wǎng)頁技術(shù))的最新版本。執(zhí)行效率大幅提高:
ASP.net
構(gòu)架是可以用Microsoft(R)公司最新的產(chǎn)品 Visual Studio.net開發(fā)環(huán)境進(jìn)行開發(fā),WYSIWYG(What YOUSee Is What You GET所見即為所得)的編輯。簡單性和易學(xué)性 高效可管理性,ASP.net使用一種字符基礎(chǔ)的,分級的配置系統(tǒng),使你服務(wù)器環(huán)境和應(yīng)用程序的設(shè)置更加簡單。因為配置信息都保存在簡單文本中,新的設(shè)置有可能都不需要啟動本地的管理員工具就可以實現(xiàn)。這種被稱為“ZEROLocal Administration”的哲學(xué)觀念使Asp.net的基于應(yīng)用的開發(fā)更加具體,和快捷。一個ASP.net的應(yīng)用程序在一臺服務(wù)器系統(tǒng)的安裝只需要簡單的拷貝一些必須得文件,不需要系統(tǒng)的重新啟動,一切就是這么簡單。多處理器環(huán)境的可靠性 ASP.net已經(jīng)被刻意設(shè)計成為一種可以用于多處理器的開發(fā)工具,它在多處理器的環(huán)境下用特殊的無縫鏈接技術(shù),將很大的提高運行速度。即使你現(xiàn)在的ASP.net應(yīng)用軟件是為一個處理器開發(fā)的,將來多處理器運行時不需要任何改變都能提高他們的效能,但現(xiàn)在的ASP確做不到這一點。自定義性和可擴(kuò)展性 ASP.net設(shè)計時考慮了讓網(wǎng)站開發(fā)人員可以在自己的代碼中自己定義“plug-in”的模塊。這與原來的包含關(guān)系不同,ASP.net可以加入自己定義的如何組件。網(wǎng)站程序的開發(fā)從來沒有這么簡單過。安全性基于Windows認(rèn)證技術(shù)和每應(yīng)用程序配置,你可以確性你的原程序時絕對安全的。ASP.NET 的語法在很大程度上與 ASP 兼容,同時它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護(hù)。可以通過在現(xiàn)有 ASP 應(yīng)用程序中逐漸添加 ASP.NET 功能,隨時增強(qiáng) ASP 應(yīng)用程序的功能。ASP.NET 是一個已編譯的、基于.NET 的環(huán)境,把基于通用語言的程序在服務(wù)器上運行。將程序在服務(wù)器端首次運行時進(jìn)行編譯,比ASP即時解釋程序速度上要快很多.而且是可以用任何與.NET 兼容的語言序。另外,任何 ASP.NET 應(yīng)用程序都可以使用整個.NET Framework。開發(fā)人員可以方便地獲得這些技術(shù)的優(yōu)點,其中包括托管的公共語言運行庫環(huán)境、類型安全、繼承等等。ASP.NET 可以無縫地與 WYSIWYG HTML 編輯器和其他編程工具(包括 Microsoft Visual Studio.NET)一起工作。這不僅使得 Web 開發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點,包括開發(fā)人員可以用來將服務(wù)器控件拖放到 Web 頁的GUI 和完全集成的調(diào)試支持。當(dāng)創(chuàng)建 ASP.NET 應(yīng)用程序時,開發(fā)人員可以使用 Web 窗體或 WEB,或以他們認(rèn)為合適的任何方式進(jìn)行組合。每個功能都能得到同一結(jié)構(gòu)的支持,使您能夠使用身份驗證方案,緩存經(jīng)常使用的數(shù)據(jù),或者對應(yīng)用程序的配置進(jìn)行自定義.如果你從來沒有開發(fā)過網(wǎng)站程序,那么這不適合你,你應(yīng)該至少掌握一些HTML和簡單的Web開發(fā)術(shù)語(不過我相信如果有興趣的話是可以很快的掌握的)。你不需要先前的ASP開發(fā)經(jīng)驗(當(dāng)然有經(jīng)驗更好),但是你必須了解交互式Web程序開發(fā)的概念,包含窗體,腳本,和數(shù)據(jù)接口的概念,如果你具備了這些條件的話,那么你就可以在Asp.net的世界開始展翅高飛了。
Web窗體中直接訪問和操作數(shù)據(jù)庫中數(shù)據(jù)的方式是一種低效的資源使用方式,并且有可能產(chǎn)生安全風(fēng)險。通過存儲過程訪問數(shù)據(jù)庫,可以有效地提高數(shù)據(jù)訪問效率和數(shù)據(jù)的安全性。可以在執(zhí)行復(fù)雜任務(wù)時減少窗體的編碼量,降低對網(wǎng)絡(luò)寬帶的需求;通過只允許可信賴的本地存儲過程直接訪問數(shù)據(jù)庫,可以保護(hù)數(shù)據(jù)庫的安全。同時我們用到了一個容器控件Repeater,當(dāng)運行頁面時,Repeater將綁定數(shù)據(jù)源中的數(shù)據(jù),并按照模板的要求將數(shù)據(jù)在界面上呈現(xiàn)出來。正是由于Repeater控件沒有默認(rèn)的外觀,所以進(jìn)行界面設(shè)計的時候會感到不太直觀。但Repeater控件非常靈活,可以通過對模板的靈活使用,創(chuàng)建多種不同形式的列表,包括以特定分隔符的列表,或者XML格式的列表,同時它還能夠非常精確地對界面元素進(jìn)行定位。除此之外我們還添加了網(wǎng)絡(luò)在線投票功能,網(wǎng)絡(luò)在線投票是網(wǎng)絡(luò)用戶的興趣、價值取向以及熱點關(guān)注等信息的關(guān)注程度的一種體現(xiàn),實現(xiàn)了在線投票功能,為了更為直觀的顯示和查看投票結(jié)果,將投票結(jié)果圖形化是一種較好的手段。所以我們引用了一個類Graphics, Graphics類是GDI+圖形編程中的核心類。他封裝了GDI+界面的繪圖方法以及圖形顯示設(shè)備,極大地的簡化了開發(fā)人員的圖形編程工程工作。通過Graphics類的屬性可以獲取Graphics對象的分辨率,并能夠為Graphics對象進(jìn)行裁剪區(qū)域的選擇和判斷,而頁面中圖形的繪制則都是通過Graphics類的實例方法實現(xiàn),同時引用了Web服務(wù)器控件Image。Image控件同IMG標(biāo)簽一樣,其主要作用是在Web頁面中顯現(xiàn)圖片信息,其主要屬性為ImageUrl,用于設(shè)置需要顯示的圖片的URL地址。盡管ASP.NET提供的Image控件可以快速地載入圖形,但卻并不支持Click事件。而且GDI+除了可以繪制圖形和文字外,還可以繪制或編輯已有圖片,為圖片添加水印或裁剪圖片等操作。在實際的Web應(yīng)用開發(fā)中,開發(fā)人員為了防止非法用戶惡意批量注冊或者惡意程序暴力破解密碼等操作,我們相應(yīng)的做了圖形驗證碼功能,在用戶身份驗證時都會采用驗證碼技術(shù)。驗證碼技術(shù)可以有效防止某些特定注冊用戶采用惡意程序和暴力破解方式對網(wǎng)站進(jìn)行不斷的登錄嘗試,為此我們引用了Random類,隨即數(shù)在計算機(jī)應(yīng)用程序設(shè)計,尤其是在實踐環(huán)境模擬和測試等領(lǐng)域得到了非常廣泛的應(yīng)用。Random類是一個偽隨即數(shù)生成器,能夠產(chǎn)生滿足一定隨即性系統(tǒng)要求的數(shù)字序列。既然是偽隨機(jī)數(shù)生成器,產(chǎn)生的數(shù)字就不是絕對的隨即數(shù),而是通過一定的算法產(chǎn)生的偽隨機(jī)數(shù)。初始化一個隨機(jī)數(shù)發(fā)生器有兩種方法:第一種是不指定隨即種子,系統(tǒng)自動選取當(dāng)前時間作為隨機(jī)種子,代碼如下:Random rand=new Random();第二種方法是指定一個int型參數(shù)作為隨即種子,認(rèn)識到了網(wǎng)站的真正的結(jié)構(gòu),最終才對BS結(jié)構(gòu)的網(wǎng)站程序有了進(jìn)一步的認(rèn)識。同時,對SQL大型數(shù)據(jù)庫的認(rèn)識才有了質(zhì)的改變。最后我們做了網(wǎng)絡(luò)在線人數(shù)統(tǒng)計,完成了對樂購網(wǎng)網(wǎng)站的制作。
在這短短的幾個月中,我知道在程序設(shè)計的時候,不要太在意程序是否最簡潔靈活,對于一般開發(fā)者而言,程序規(guī)范化和可讀性可能比追求程序的靈活性更加重要。在互聯(lián)網(wǎng)資源越來越豐富的情況下,我們可以參考一些規(guī)范的程序源代碼來學(xué)習(xí)。同時我也知道,想要學(xué)好這門課程,所要具備很多條件,首先打代碼要規(guī)范,要做注釋,這樣回頭來看程序時可以很快的看懂,一方面可以練習(xí)自己的邏輯表達(dá)能力,對以后遇到難以實現(xiàn)的功能也可以很好的表達(dá)出來向別人請教,而且出去從事編程工作的話,代碼的規(guī)范是相當(dāng)重要的。還有一點要學(xué)會總結(jié),把自己做的程序用到的知識點列出來就可以很好的總結(jié)自己的知識點。當(dāng)形成知識體系,對知識的理解就會更上一層樓。
第三篇:ASP心得體會
ASP.NET學(xué)習(xí)體會
ASP學(xué)習(xí)心得
一、準(zhǔn)備工作
首先,學(xué)習(xí)ASP要有些基本的編程知識.最好先學(xué)過點VB JAVA最好因為ASP不是一門編程語言而是一個WEB編程框架.他是利用腳本(vbscript javascript)語言做為編程語言的.如果你不會他們那么至少得會點C.C也不會的話建議你先學(xué)下C,雖然并不是一定要先學(xué)過編程語言,但是學(xué)他對這個的學(xué)習(xí)是有莫大的好處的.
在ASP.NET中,整張Web頁是放在一張大表單里面的。如:
第四篇:ASP心得體會
ASP.NET心得體會
經(jīng)過兩個多月的學(xué)習(xí)和上課聽講,初步掌握了ASP.NET動態(tài)網(wǎng)頁制作的一些簡單的知識和基本常識,也能從老師講的基本知識中應(yīng)用一下上課所學(xué)到的知識,感覺ASP.NET網(wǎng)站建設(shè)和維護(hù)不是很簡單,其中不僅要應(yīng)用各種方面的知識還要對所學(xué)的知識學(xué)會變通使用,雖然會有一些成功的地方,以前學(xué)C++、數(shù)據(jù)庫等一些相關(guān)知識的時候沒好好學(xué),現(xiàn)在想真正做好這個網(wǎng)站就顯得不那么容易了。曾經(jīng)看到網(wǎng)上有這么一句話,一個優(yōu)秀的網(wǎng)絡(luò)程序員不但要了解自己領(lǐng)域的一些專業(yè)技術(shù),而且很多時候還要充當(dāng)半個網(wǎng)絡(luò)工程師,半個美術(shù)設(shè)計師和半個數(shù)據(jù)庫管理員。照這么說來,我單單學(xué)習(xí)ASP.NET是遠(yuǎn)遠(yuǎn)不夠的,還要學(xué)習(xí)計算機(jī)網(wǎng)絡(luò)、美術(shù)設(shè)計、數(shù)據(jù)庫,我很喜歡有關(guān)計算機(jī)方面的東西,認(rèn)為我們當(dāng)代的生活越來越離不開計算機(jī),并且我也很癡迷計算機(jī)所帶來的強(qiáng)大功能。
它是Microsoft.Net戰(zhàn)略的核心產(chǎn)品,asp.net憑借它豐富的控件,以及具有革命性的code-behind技術(shù),以及良好的封裝性,無疑成為業(yè)界開發(fā)active server page的一門巨將,ASP 是一項微軟公司的技術(shù),是一種使嵌入網(wǎng)頁中的腳本可由因特網(wǎng)服務(wù)器執(zhí)行的服務(wù)器
端腳本技術(shù)。指 Active Server Pages(動態(tài)服務(wù)器頁面),運行于 IIS 之中的程序。ASP.NET 是 ASP(微軟動態(tài)服務(wù)器網(wǎng)頁技術(shù))的最新版本。執(zhí)行效率大幅提高:ASP.net構(gòu)架是可以用Microsoft(R)公司最新的產(chǎn)品 Visual Studio.net開發(fā)環(huán)境進(jìn)行開發(fā),WYSIWYG(What YOUSee Is What You GET所見即為所得)的編輯。簡單性和易學(xué)性
高效可管理性
ASP.net使用一種字符基礎(chǔ)的,分級的配置系統(tǒng),使你服務(wù)器環(huán)境和應(yīng)用程序的設(shè)置更加簡單。因為配置信息都保存在簡單文本中,新的設(shè)置有可能都不需要啟動本地的管理員工具就可以實現(xiàn)。這種被稱為“ZEROLocal Administration”的哲學(xué)觀念使Asp.net的基于應(yīng)用的開發(fā)更加具體,和快捷。一個ASP.net的應(yīng)用程序在一臺服務(wù)器系統(tǒng)的安裝只需要簡單的拷貝一些必須得文件,不需要系統(tǒng)的重新啟動,一切就是這么簡單。多處理器環(huán)境的可靠性 ASP.net已經(jīng)被刻意設(shè)計成為一種可以用于多處理器的開發(fā)工具,它在多處理器的環(huán)境下用特殊的無縫鏈接技術(shù),將很大的提高運行速度。即使你現(xiàn)在的ASP.net應(yīng)用軟件是為一個處理器開發(fā)的,將來多處理器運行時不需要任何改變都能提高他們的效能,但現(xiàn)在的ASP確做不到這一點。自定義性和可擴(kuò)展性 ASP.net設(shè)計時考慮了讓網(wǎng)站開發(fā)人員可以在自己的代碼中自己定義“plug-in”的模塊。這與原來的包含關(guān)系不同,ASP.net可以加入自己定義的如何組件。網(wǎng)站程序的開發(fā)從來沒有這么簡單過。安全性基于Windows認(rèn)證技術(shù)和每應(yīng)用程序配置,你可以確性你的原程序時絕對安全的。ASP.NET 的語法在很大程度上與 ASP 兼容,同時它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護(hù)。可以通過在現(xiàn)有 ASP 應(yīng)用程序中逐漸添加 ASP.NET 功能,隨時增強(qiáng) ASP 應(yīng)用程序的功能。ASP.NET 是一個已編譯的、基于.NET 的環(huán)境,把基于通用語言的程序在服務(wù)器上運行。將程序在服務(wù)器端首次運行時進(jìn)行編譯,比ASP即時解釋程序速度上要快很多.而且是可以用任何與.NET 兼容的語言序。另外,任何 ASP.NET 應(yīng)用程序都可以使用整個.NET Framework。開發(fā)人員可以方便地獲得這些技術(shù)的優(yōu)點,其中包括托管的公共語言運行庫環(huán)境、類型安全、繼承等等。ASP.NET 可以無縫地與 WYSIWYG HTML 編輯器和其他編程工具(包括 Microsoft Visual Studio.NET)一起工作。這不僅使得 Web 開發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點,包括開發(fā)人員可以用來將服務(wù)器控件拖放到 Web 頁的GUI 和完全集成的調(diào)試支持。當(dāng)創(chuàng)建 ASP.NET 應(yīng)用程序時,開發(fā)人員可以使用 Web 窗體或 WEB,或以他們認(rèn)為合適的任何方式進(jìn)行組合。每個功能都能得到同一結(jié)構(gòu)的支持,使您能夠使用身份驗證方案,緩存經(jīng)常使用的數(shù)據(jù),或者對應(yīng)用程序的配置進(jìn)行自定義.如果你從來沒有開發(fā)過網(wǎng)站程序,那么這不適合你,你應(yīng)該至少掌握一些HTML和簡單的Web開發(fā)術(shù)語(不過我相信如果有興趣的話是可以很快的掌握的)。你不需要先前的ASP開發(fā)經(jīng)驗(當(dāng)然有經(jīng)驗更好),但是你必須了解交互式Web程序開發(fā)的概念,包含窗體,腳本,和數(shù)據(jù)接口的概念,如果你具備了這些條件的話,那么你就可以在Asp.net的世界開始展翅高飛了。
首先我們學(xué)習(xí)了怎么設(shè)計主頁,一個好的主頁可以給瀏覽者一個耳目一新的感覺,所以網(wǎng)站主頁的布局就顯得格外重要了,好的布局加上親切的言語,以及強(qiáng)大的功能,都會是瀏覽者感到無比的親切。這次我跟劉昕做的是樂糕網(wǎng),一個粉紅色的布局顯出溫馨的格調(diào),其次我們添加了用戶注冊界面,同時應(yīng)用了模板頁,模板頁嵌套在注冊頁面上,同時與主頁的注冊按鈕相連接,在主頁引用了CSS樣式,使得格局更加清晰。之后我們做了在線投票頁面,同樣引用了模板頁,同時學(xué)會了使用Cookie,Session的使用。做好這些功能之后,我們開始用到了數(shù)據(jù)庫,要實現(xiàn)用戶的存儲和調(diào)用,以及商品信息的錄入,同時對商品ID進(jìn)行數(shù)據(jù)綁定,之后我們實現(xiàn)了購物車功能,使用 DataList控件實現(xiàn)了對后臺代碼文件中綁定其數(shù)據(jù)源,ASP,NET3.5提供的DataList控件使用模板顯示內(nèi)容,他允許每一行顯示多條記錄。可以使用HTML表對應(yīng)模板項的呈現(xiàn)方式進(jìn)行布局,從而控制各個單元格的順序、方向和列數(shù)。在這之后我們又做了留言板,通過ADO.NET調(diào)用存儲過程,做到了留言板功能的實現(xiàn)。前面所學(xué)到的數(shù)據(jù)訪問都是Web應(yīng)用程序直接訪問數(shù)據(jù)庫。這種在Web窗體中直接訪問和操作數(shù)據(jù)庫中數(shù)據(jù)的方式是一種低效的資源使用方式,并且有可能產(chǎn)生安全風(fēng)險。通過存儲過程訪問數(shù)據(jù)庫,可以有效地提高數(shù)據(jù)訪問效率和數(shù)據(jù)的安全性。可以在執(zhí)行復(fù)雜任務(wù)時減少窗體的編碼量,降低對網(wǎng)絡(luò)寬帶的需求;通過只允許可信賴的本地存儲過程直接訪問數(shù)據(jù)庫,可以保護(hù)數(shù)據(jù)庫的安全。同時我們用到了一個容器控件Repeater,當(dāng)運行頁面時,Repeater將綁定數(shù)據(jù)源中的數(shù)據(jù),并按照模板的要求將數(shù)據(jù)在界面上呈現(xiàn)出來。正是由于Repeater控件沒有默認(rèn)的外觀,所以進(jìn)行界面設(shè)計的時候會感到不太直觀。但Repeater控件非常靈活,可以通過對模板的靈活使用,創(chuàng)建多種不同形式的列表,包括以特定分隔符的列表,或者XML格式的列表,同時它還能夠非常精確地對界面元素進(jìn)行定位。除此之外我們還添加了網(wǎng)絡(luò)在線投票功能,網(wǎng)絡(luò)在線投票是網(wǎng)絡(luò)用戶的興趣、價值取向以及熱點關(guān)注等信息的關(guān)注程度的一種體現(xiàn),實現(xiàn)了在線投票功能,為了更為直觀的顯示和查看投票結(jié)果,將投票結(jié)果圖形化是一種較好的手段。所以我們引用了一個類Graphics, Graphics類是GDI+圖形編程中的核心類。他封裝了GDI+界面的繪圖方法以及圖形顯示設(shè)備,極大地的簡化了開發(fā)人員的圖形編程工程工作。通過Graphics類的屬性可以獲取Graphics對象的分辨率,并能夠為Graphics對象進(jìn)行裁剪區(qū)域的選擇和判斷,而頁面中圖形的繪制則都是通過Graphics類的實例方法實現(xiàn),同時引用了Web服務(wù)器控件Image。Image控件同IMG標(biāo)簽一樣,其主要作用是在Web頁面中顯現(xiàn)圖片信息,其主要屬性為ImageUrl,用于設(shè)置需要顯示的圖片的URL地址。盡管ASP.NET提供的Image控件可以快速地載入圖形,但卻并不支持Click事件。而且GDI+除了可以繪制圖形和文字外,還可以繪制或編輯已有圖片,為圖片添加水印或裁剪圖片等操作。在實際的Web應(yīng)用開發(fā)中,開發(fā)人員為了防止非法用戶惡意批量注冊或者惡意程序暴力破解密碼等操作,我們相應(yīng)的做了圖形驗證碼功能,在用戶身份驗證時都會采用驗證碼技術(shù)。驗證碼技術(shù)可以有效防止某些特定注冊用戶采用惡意程序和暴力破解方式對網(wǎng)站進(jìn)行不斷的登錄嘗試,為此我們引用了Random類,隨即數(shù)在計算機(jī)應(yīng)用程序設(shè)計,尤其是在實踐環(huán)境模擬和測試等領(lǐng)域得到了非常廣泛的應(yīng)用。Random類是一個偽隨即數(shù)生成器,能夠產(chǎn)生滿足一定隨即性系統(tǒng)要求的數(shù)字序列。既然是偽隨機(jī)數(shù)生成器,產(chǎn)生的數(shù)字就不是絕對的隨即數(shù),而是通過一定的算法產(chǎn)生的偽隨機(jī)數(shù)。初始化一個隨機(jī)數(shù)發(fā)生器有兩種方法:第一種是不指定隨即種子,系統(tǒng)自動選取當(dāng)前時間作為隨機(jī)種子,代碼如下:Random rand=new Random();第二種方法是指定一個int型參數(shù)作為隨即種子,認(rèn)
識到了網(wǎng)站的真正的結(jié)構(gòu),最終才對BS結(jié)構(gòu)的網(wǎng)站程序有了進(jìn)一步的認(rèn)識。同時,對SQL大型數(shù)據(jù)庫的認(rèn)識才有了質(zhì)的改變。最后我們做了網(wǎng)絡(luò)在線人數(shù)統(tǒng)計,完成了對樂購網(wǎng)網(wǎng)站的制作。
在這短短的幾個月中,我知道在程序設(shè)計的時候,不要太在意程序是否最簡潔靈活,對于一般開發(fā)者而言,程序規(guī)范化和可讀性可能比追求程序的靈活性更加重要。在互聯(lián)網(wǎng)資源越來越豐富的情況下,我們可以參考一些規(guī)范的程序源代碼來學(xué)習(xí)。同時我也知道,想要學(xué)好這門課程,所要具備很多條件,首先打代碼要規(guī)范,要做注釋,這樣回頭來看程序時可以很快的看懂,一方面可以練習(xí)自己的邏輯表達(dá)能力,對以后遇到難以實現(xiàn)的功能也可以很好的表達(dá)出來向別人請教,而且出去從事編程工作的話,代碼的規(guī)范是相當(dāng)重要的。還有一點要學(xué)會總結(jié),把自己做的程序用到的知識點列出來就可以很好的總結(jié)自己的知識點。當(dāng)形成知識體系,對知識的理解就會更上一層樓。
第五篇:asp 專題
三、簡答題與程序設(shè)計題
編寫程序計算112+ 122+132+…+232的值。在個人主頁上添加時間信息,并判斷下午、晚上,上午和夜間,并分別給出問候:下午好、晚上好、上午好和夜里好。
編寫函數(shù)返回x和y的立方和,并舉例調(diào)用。
在ASP中,VBScript有多種控制程序流程語句,如If…Then, Select… Case,For … Next, Do … Loop, Exit等語句。請為這五個語句分別寫一段使用的代碼。
請看如下代碼<%TestString=“Test”TestATestBResponse.write TestStringSub TestA()TestString=“TestA”End SubSub TestB()Dim TestStringTestString=“TestB”End Sub%>這段代碼執(zhí)行后,運行結(jié)果是什么?并解釋一下為什么?
編寫一個星期的函數(shù)GetWeek(aDate)返回“星期
一、星期
二、星期三...” 用ASP輸出九九乘法口決表的網(wǎng)頁輸出如下:1*1=11*2=2 2*2=41*3=3 2*3=6 3*3=9...要求編寫一個完整的ASP文件
2010-12-10 15:43 最佳答案 第一題: <% dim j:j=0 for i=112 to 232 step 10 j=i+j next response.write j %>
第二題: <% dim mytime:mytime=hour(now())if mytime>=0 then response.write “夜間好” if mytime>=8 then response.write “上午好” if mytime>=12 then response.write “下午好” if mytime>=18 then response.write “晚上好” %>
第三題: <% Response.Write “23和45的立方和是:” &getSum(23,45)
function getSum(a,b)
getSum=a^3+b^3 end function %>
第四題:
1>
if...then
for example:
Dim Color, MyVar
Sub ChangeBackground(Color)
MyVar = lcase(Color)
If myvar=“red” then
document.bgColor = “red”
elseif myvar= “green”
document.bgColor = “green”
elseif myvar= “blue”
document.bgColor = “blue”
Else response.write(“選擇另一種顏色”)
End if
End if
End Sub
2>select..case
for example:
Dim Color, MyVar
Sub ChangeBackground(Color)
MyVar = lcase(Color)
Select Case MyVar
Case “red”
document.bgColor = “red”
Case “green” document.bgColor = “green”
Case “blue”
document.bgColor = “blue”
Case Else
MsgBox “選擇另一種顏色”
End Select
End Sub 3> For…next
比如實現(xiàn)一個循環(huán)輸出記錄
For i=1 to rs.recordcount If rs.eof then
Rs(“title”)Rs.movenext End if Next 4> Do … Loop
以上例類似,實現(xiàn)重復(fù)顯出記錄 If not rs.eof then
i=1
do while not rs.eof
rs(“title”)
rs.movenext
i=i+1
loop
end if
第五題:
運行結(jié)果是:testA 原因是:testA所附值的是一個全局變量TestString testB因為有Dim TestString這句定義,所以它所附值的只是一個局部變量。第六題:
function GetWeek(aDate)if isdate(aDate)then GetWeek=weekdayname(WeekDay(aDate))end if end function response.Write GetWeek(“2002/1/3”)第七題: 方法1:
<%=j&“*”&i&“=”&j*i%> <%next%> | <%=“ ”%> <%next%> |