初學asp心得體會感想
初學asp時,要學會總結(jié),把自己做的程序用到的知識點列出來就可以很好的總結(jié)自己的知識點。當形成知識體系,對知識的理解就會更上一層樓,探討心得體會感想。下面是學習啦小編為大家收集整理的初學asp心得體會感想,歡迎大家閱讀。
初學asp心得體會感想篇1
asp 是一項微軟公司的技術(shù),是一種使嵌入網(wǎng)頁中的腳本可由因特網(wǎng)服務(wù)器執(zhí)行的服務(wù)器端腳本技術(shù)。 指 active server pages(動態(tài)服務(wù)器頁面) ,運行于 iis 之中的程序 。 asp.net的前身asp技術(shù),是在iis 2.0上首次推出,當時與 ado 1.0 一起推出,在iis 3.0發(fā)揚光大,成為服務(wù)器端應(yīng)用程序的熱門開發(fā)工具,微軟還特別為它量身打造了visual
interdev開發(fā)工具,在1994年到2014年之間,asp技術(shù)已經(jīng)成為微軟推展windows nt 4.0平臺的關(guān)鍵技術(shù)之一,數(shù)以萬計的asp網(wǎng)站也是這個時候開始如雨后春筍般的出現(xiàn)在網(wǎng)絡(luò)上。它的簡單以及高度可定制化的能力,也是它能迅速崛起的原因之一。
因為asp.net是基于通用語言的編譯運行的程序,所以它的強大性和適應(yīng)性,可以使它運行在web應(yīng)用軟件開發(fā)者的幾乎全部的平臺上(筆者到現(xiàn)在為止只知道它只能用在windows 2014/2014 server/vista/7/xp/win7上)。通用語言的基本庫,消息機制,數(shù)據(jù)接口的處理都能無縫的整合到asp.net的web應(yīng)用中。asp.net同時也是language-independent(語言獨立化)的,所以,你可以選擇一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現(xiàn)在已經(jīng)支持的有c#(c++和java的結(jié)合體),vb,jscript , c++、f++。將來,這樣的多種程序語言協(xié)同工作的能力保護您現(xiàn)在的基于com+開發(fā)的程序,能夠完整的移植向asp.net。
asp.net一般分為兩種開發(fā)語言,vb.net和c#,c#相對比較常用,因為是.net獨有的語言,vb.net則為以前vb程序設(shè)計,適合于以前vb程序員,如果新接觸.net,沒有其他開發(fā)語言經(jīng)驗,建議直接學習c#即可。
asp.net使運行一些很平常的任務(wù)如表單的提交客戶端的身份驗證、分布系統(tǒng)和網(wǎng)站配置變得非常簡單。例如asp.net頁面構(gòu)架允許你建立你自己的用戶分界面,使其不同于常見的vb-like界面。
asp.net使用一種字符基礎(chǔ)的,分級的配置系統(tǒng),虛擬服務(wù)器環(huán)境和應(yīng)用程序的設(shè)置更加簡單。因為配置信息都保存在簡單文本中,新的設(shè)置有可能都不需要啟動本地的管理員工具就可以實現(xiàn)。這種被稱為"zero local administration"的哲學觀念使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卻做不到這一點。自定義性和可擴展性 asp.net設(shè)計時考慮了讓網(wǎng)站開發(fā)人員可以在自己的代碼中自己定義"plug-in"的模塊。這與原來的包含關(guān)系不同,asp.net可以加入自己定義的任何組件。網(wǎng)站程序的開發(fā)從來沒有這么簡單過。安全性基于windows認證技術(shù)和每應(yīng)用程序配置,你可以確保你的原
程序是絕對安全的。 asp.net 的語法在很大程度上與 asp 兼容,同時它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護??梢酝ㄟ^在現(xiàn)有 asp 應(yīng)用程序中逐漸添加 asp.net 功能,隨時增強 asp 應(yīng)用程序的功能。 asp.net 是一個已編譯的、基于 .net 的環(huán)境,把基于通用語言的程序在服務(wù)器上運行。將程序在服務(wù)器端首次運行時進行編譯,比asp即時解釋程序速度上要快很多.而且是可以用任何與 .net 兼容的語言(包括 visual basic .net、c# 和 jscript .net.)創(chuàng)作應(yīng)用程序。另外,任何 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)試支持。 當創(chuàng)建 asp.net 應(yīng)用程序時,開發(fā)人員可以使用 web 窗體或 xml web services,或以他們認為合適的任何方式進行組合。每個功能都能得到同一結(jié)構(gòu)的支持,使您能夠使用身份驗證方案,緩存經(jīng)常使用的數(shù)據(jù),或者對應(yīng)用程序的配置進行自定義. 如果你從來沒有開發(fā)過網(wǎng)站程序,那么這不適合你,你應(yīng)該至少掌握一些html語言和簡單的web開發(fā)術(shù)語(不過我相信如果有興趣的話是可以很快的掌握的)。你不需要先前的asp開發(fā)經(jīng)驗(當然有經(jīng)驗更好),但是你必須了解交互式web程序開發(fā)的概念,包含窗體,腳本,和數(shù)據(jù)接口的概念,如果你具備了這些條件的話,那么你就可以在asp.net的世界開始展翅高飛了。iis指 internet information services(因特網(wǎng)信息服務(wù))
iis同時也是 windows nt 4.0 的可選組件此可選組件可通過因特網(wǎng)下載
asp.net不僅僅是 active server page (asp) 的下一個版本,而且是一種建立在通用語言上的程序構(gòu)架,能被用于一臺web服務(wù)器來建立強大的web應(yīng)用程序。asp.net提供許多比現(xiàn)在的web開發(fā)模式強大的優(yōu)勢。
asp.net 運行的架構(gòu)分為幾個階段: 在 iis 與 web 服務(wù)器中的消息流動階段。 在 asp.net 網(wǎng)頁中的消息分派。 在 asp.net 網(wǎng)頁中的消息處理。
連接層級的對象是 session,以瀏覽器的運行個體為識別單位,數(shù)據(jù)依瀏覽器的運行個體來儲存,在瀏覽器的運行個體第一次連到應(yīng)用程序時,asp.net會設(shè)置一個 session id,并且使用它來識別session,每一個 session 都是 icollection與ienumerate的實現(xiàn),用 key 來識別數(shù)據(jù)值,并且具有時間的限制,若超出時限時服務(wù)器會自動清理掉,默認的 session 時限為 20 分鐘。session id 的算法是由 rngcryptoserviceprovider (密碼編譯亂數(shù)產(chǎn)生器提供者)產(chǎn)生,并編碼成一個 session id 字符串(例
如 anf4vuup3xiq0arjlqla2l55 這樣的字符串)儲存在服務(wù)器中,用以識別不同的 session 個體。
為因應(yīng)不同的用戶端,asp.net 設(shè)計了不同的 session id 存放機制,像是舊式的瀏覽器或是行動用戶端這種不支持本地儲存cookie的設(shè)備時,asp.net 可以直接在 url 中加上 session id 的識別,像是
http://.tw/(anf4vuup3xiq0arjlqla2l55)/profile.aspx 這樣的 url,可以由開發(fā)人員自行設(shè)置,或是使用 autodetect 設(shè)置來讓 asp.net 自行判斷要使用的 session id 存放方式。
session id 的產(chǎn)生方法可以由程序開發(fā)人員自定義,借由改寫 sessionidmanager 的 createsessionid() 方法來自定義。
using system;
using system.configuration;
using system.web.configuration;
using system.web;
using system.web.sessionstate;
namespace samples.aspnet.session{
public class guidsessionidmanager : sessionidmanager {
public override string createsessionid(httpcontext context) {return guid.newguid().tostring();
}
public override bool validate(string id) {
try {
guid testguid = new guid(id);
if (id == testguid.tostring()) return true;
}
catch { }
return false;
}
}
}
asp.net 是開發(fā) web 應(yīng)用程序的基礎(chǔ)架構(gòu) (framework),除了它內(nèi)部的運作方法外,對外也顯露了許多的開發(fā)支持,讓開發(fā)人員可以利用它來發(fā)展出許多強大的 web 應(yīng)用程序解決方案。
asp.net 最基礎(chǔ)的底層為網(wǎng)頁,網(wǎng)頁由 system.web.ui.page 類來提供基礎(chǔ)支持,包含了頁面的事件以及對象繪制的引發(fā)點(page 類本身是一個 http handler 的實現(xiàn)品)。asp.net 網(wǎng)頁在微軟的官方名稱中,稱為 web form,除了是要和windows forms作分別以外,同時也明白的刻劃出了它的主要功能:“讓開發(fā)人員能夠像開發(fā) windows forms 一樣的方法來發(fā)展
web 網(wǎng)頁”。因此 asp.net page 所要提供的功能就需要類似 windows forms 的窗體,每個 web form 都要有一個區(qū)塊,所有的 asp.net 服務(wù)器控件都要放在這個區(qū)域中,這樣才可以讓 viewstate 等服務(wù)器控制能夠順暢的運作。
使用代碼后置模式的設(shè)置時,可以讓 asp.net 運行引擎在加載網(wǎng)頁時,由代碼后置參數(shù)取得對應(yīng)的類信息,藉以使用 reflection 的方式來運行后置的代碼。
asp.net 可以支持html和xhtml兩種網(wǎng)頁內(nèi)容,但在visual studio.net中,默認是使用 html,但在visual studio 2014以后的版本,則一律都改用xhtml格式。
asp.net 的內(nèi)置控件分為兩種:html 控件:直接在 html 標記中加上 runat="server",即可對應(yīng)到asp.net指定的 html 服務(wù)器控件類,像是: htmlanchor:表示 html 的 web 控件:由 asp.net 提供,比 html 控件提供更多的功能,但操作與設(shè)置會比 html 控件要復(fù)雜許多,像是: linkbutton:一種外型為鏈接 htmlbutton:表示 html 的 。 htmlimage:表示 html 的 。 htmlgenericcontrol:表示沒有對應(yīng)到服務(wù)器控件的對象,都會被對應(yīng)到這個類。 web 控件 (web control):由 asp.net 提供,比 html 控件提供更多的功能,但操作與設(shè)置會比 html 控件要復(fù)雜許多,像是: linkbutton:一種外型為鏈接 (除了內(nèi)置的控件之外,asp.net 也提供了可以自定義的控件架構(gòu),并且支持兩種控件開發(fā)方法:
用戶控件,以.ascx 為擴展名,可以讓開發(fā)人員用最輕松的方式來開發(fā)控件,優(yōu)點是開發(fā)速度很快,但缺點是無法轉(zhuǎn)散布,且無法加入?yún)⒖肌?自定義控件,可轉(zhuǎn)散布型的控件,是經(jīng)過編譯后的代碼,可單獨轉(zhuǎn)散布,并且可在其他的項目加入?yún)⒖家?,自定義控件有三種開發(fā)模式: 基礎(chǔ)控件:由 system.web.ui.control 類繼承而來,或是由現(xiàn)有的 web 控件繼承而來,像是由 button 控件繼承。 復(fù)合控件:由 system.web.ui.webcontrols.compositecontrol 繼承而來,可以用復(fù)合的方式來開發(fā)控件。 樣板控件:可以在控件中使用樣板,并套用數(shù)據(jù)到樣板中,支持數(shù)據(jù)綁定的表達式。
以往在 asp 中常被使用的五大基本對象,在 asp.net 中仍然持續(xù)被支持,但它們都換了一個身份來提供:
application:包裝了 httpapplication 對象,在程序中使用 application 指令取得的對象,都是來自于 httpcontext.current.application 屬性回傳而得。 request:包裝了 httprequest 對象,在程序中使用 request 指令取得的對象,都是來自于 httpcontext.current.request 屬性回傳而得。 response:包裝了 httpresponse 對象,在程序中使用 response 指令取得的對象,都是來自于 httpcontext.current.response 屬性回傳而得。 session:包裝了
httpsessionstate 對象,在程序中使用 session 指令取得的對象,都是來自于 httpcontext.current.session 屬性回傳而得。
server:包裝了 httpserverutility對象,在程序中使用 server 指令取得的對象,都是來自于httpcontext.current.server屬性回傳而得。
目前很多人對asp.net和asp很混淆,有的甚至認為兩者是一樣的!因為他們根本不了解,其實兩者是不同,asp是解釋性編程框架,而asp.net是編譯性框架,asp.net無論是從執(zhí)行效率和安全上都遠遠超過asp,而文件上也是有差異的asp的后綴是.asp 而asp.net則是.aspx和.aspx.cs,asp.net實現(xiàn)了代碼分離。可以說讓代碼管理更加直觀。
asp.net1.0和asp.net1.1的設(shè)計是良好的,因為在asp.net 2.0中只有很少的改動是修復(fù)已有的特性的,asp.net保留了同之前版本相同的基礎(chǔ),增加了新的、更高層此的特性支持,主要特性如下:豐富的控件 ,模板頁 ,主題 ,安全和成員資格 ,數(shù)據(jù)源控件 ,web部件 ,配置文件
asp.net3.0并不存在,微軟使用.net framework3.0的名稱發(fā)布了一系列的新的技術(shù),其中最著名的有wpf,它是用于構(gòu)建富客戶端的全新用戶界面技術(shù),wcf使用于構(gòu)建面向消息的服務(wù)技術(shù),以及wf允許把復(fù)雜的業(yè)務(wù)邏輯過程建模為一組動作,不過.net framework3.0沒有包括新版本的clr或者asp.net。
asp.net 在一開始的時候是缺乏范本引擎的,其主因是.net framework本身是面向?qū)ο螅倚枰美^承的方式才能夠延伸功能,大多數(shù)的開發(fā)人員都是由 system.web.ui.page 繼承并定義出新的基類,并撰寫要繪制 html 的方法,以及在他們的應(yīng)用程序中修改以繼承該類,然而這個方法可能會被用在網(wǎng)站的很多地方,因而會大大的提升混合代碼與標記的復(fù)雜度,這個方法也只能在運行期才能夠以可視化的方式測試,無法在設(shè)計時期可視化,其他的開發(fā)人員總是使用原有的 asp方法來把每個網(wǎng)頁需要的部份包到網(wǎng)頁中,防止在每個網(wǎng)頁中都要撰寫相同的導(dǎo)覽代碼。
在 asp.net 2.0 中,推出了主版頁面 (master page)的概念,它可以讓開發(fā)人員先行定義外觀版型 (*.master),再使用它來套用實際運行的網(wǎng)頁,網(wǎng)頁與主版頁面之間以 contentplaceholder的 id 做鏈接,以套用正確的內(nèi)容到保留區(qū)中,開發(fā)人員也可以定義在保留區(qū)沒有套用時需要顯示的默認內(nèi)容。在 asp.net 3.5 中更進一步的支持設(shè)計時期的嵌套主版頁面,以及把網(wǎng)頁的 head 區(qū)塊納入 contentplaceholder 的范圍。
與主版頁面相關(guān)的,還有主題以及面板技術(shù),這兩個技術(shù)允許開發(fā)人員或設(shè)計人員自行定義網(wǎng)頁的樣式設(shè)置以及套用的樣式支持,每個主題中可以包含數(shù)個面板檔,這些面板檔決定了控件要輸出時套用的樣式,開發(fā)人員則可以利用主題來決定不同的外觀要使用的樣式。
初學asp心得體會感想篇2
asp.net在現(xiàn)在商業(yè)中應(yīng)用相當?shù)膹V泛,這學期我們開了這門課,那到底什么是asp呢?asp嗎,它是一種包含了使用vb script或jscript腳本程序代碼的網(wǎng)頁。當瀏覽器瀏覽asp網(wǎng)頁時, web服務(wù)器就會根據(jù)請求生成相應(yīng)的html代碼然后再返回給瀏覽器,這樣瀏覽器端看到的 就是動態(tài)生成的網(wǎng)頁。asp是微軟公司開發(fā)的代替cgi腳本程序的一種應(yīng)用,它可以與數(shù)據(jù)庫和其它程序進行交互。是一種簡單、方便的編程工具。在了解了vbscript的基本語法后,只需要清楚各個組件的用途、屬性、方法,就可以輕松編寫出自己的asp系統(tǒng)。asp的網(wǎng)頁文件的格式是.asp。 現(xiàn)在經(jīng)過三個多月的簡單學習和上課聽講,初步掌握了asp.net動態(tài)網(wǎng)頁制作的一些簡單的知識和基本常識,也能從老師講的基本知識中簡單的應(yīng)用一下上課所學到的知識?感覺asp.net網(wǎng)站建設(shè)和維護不是很方便,其中不僅要應(yīng)用各種方面的知識還要對所學的知識學會變通使用,雖然會有一些成功的地方。但是,更多的是困惑,有太多的東西都不懂,以前學c++、數(shù)據(jù)庫等一些相關(guān)知識的時候沒好好學,現(xiàn)在想真正做好這個網(wǎng)站就顯得不那么容易了。曾經(jīng)看到網(wǎng)上有這么一句話,一個優(yōu)秀的網(wǎng)絡(luò)程序員不但要了解自己領(lǐng)域的一些專業(yè)技術(shù),而且很多時候還要充當半個網(wǎng)絡(luò)工程師,半個美術(shù)設(shè)計師和半個數(shù)據(jù)庫管理員。照這么說來,我單單學習asp.net是遠遠不夠的,還要學習計算機網(wǎng)絡(luò)、美術(shù)設(shè)計、數(shù)據(jù)庫,我很喜歡有關(guān)計算機方面的東西。認為我們當代的生活越來越離不開計算機,并且我也很癡迷計算機所帶來的強大功能。首先我們學習了c#,雖然c#現(xiàn)在不是編程員的熱門語言,但在網(wǎng)頁制作中也相當?shù)氖褂?。大三上學期我們有一門課是c# and ado.net development。雖然我們當時用的c#程序的開發(fā)平臺是.net,但是我對.net卻了解粗淺,對c#這門編程語言和.net的關(guān)系不太清楚。隨著后來學了另一門.net 的課程soa, cloud computing and sharepoint programming with microsoft .net,我才對.net這一門技術(shù)有了深入的理解。在這里,我想說一說我個人對.net的理解,希望能幫助大家更好的學習microsoft.net。
現(xiàn)在在asp的世界中,asp的應(yīng)用相當?shù)膹V泛,在很多方面都有有用到。一方面,用戶擁有一套設(shè)備,例如 pc、移動電話、筆記本。這些設(shè)備可能放在辦公室或者家里。當用戶需要在辦公室的某臺設(shè)備或移動電話上訪問家中存儲的的信息(電子郵件或其他任何信息)時,問題就出現(xiàn)了,因為所有這些設(shè)備都將數(shù)據(jù)存儲在不同的位置。用戶認為需要一種個人信息空間,通過它,用戶可以在家中或途中訪問存儲在辦公室的信息,或者以相同方式從任何位置訪問存儲在家中的信息。另一方面,開發(fā)人員沒有足夠的工具來開發(fā)用戶所需的解決方案。 結(jié)果是,站點雖然頗具吸引力卻缺乏有效性和實用性。此外,需要為不同的設(shè)備開發(fā)不同的代碼,這也使開發(fā)人員頗感為難。如果開發(fā)人員擁有某些工具,使他能夠只編寫一次代碼,并可在多種設(shè)備中部署該代碼,將可以提高開發(fā)人員的工作效率。這是開發(fā)人員的需求。
在asp中我們還學習了fso、cgi、php等,那什么是fso呢?而fso是微軟asp的一個對文件操作的控件,該控件可以對服務(wù)器進行讀取、新建、修改、刪除目錄以及文件的操作。是asp編程中非常有用的一個控件。但是因
為權(quán)限控制的問題,很多虛擬主機服務(wù)器的fso反而成為這臺服務(wù)器的一個公開的后門,因為客戶可以在自己的asp網(wǎng)頁里面直接就對該控件編程,從而控制該服務(wù)器甚至刪除服務(wù)器上的文件。因此不少業(yè)界的虛擬主機提供商都干脆關(guān)掉了這個控件,讓客戶少了很多靈活性。 萬維時空的w2k虛擬主機服務(wù)器具有高安全性,可以讓客戶在自己的網(wǎng)站空間中任意使用卻有沒有辦法危害系統(tǒng)或者妨礙其他客戶網(wǎng)站的正常運行。cgi是一個用于定web服務(wù)器與外部程序之間通信方式的標準,使得外部程序能生成html、圖像或者其他內(nèi)容,而服務(wù)器處理的方式與那些非外部程序生成的html、圖像或其他內(nèi)容的處理方式是相同的。因此,cgi程序冊僅使你能生成表態(tài)內(nèi)容而能生動態(tài)內(nèi)容。使用cgi的原因在于它是一個定義良好并被廣泛支持的標準,沒有cgi就不可能實現(xiàn)動態(tài)的web頁面,除非使用一些服務(wù)器中提供的特殊方法(如今,也有除cgi之外的其他技術(shù)逐漸在成為標準)。php是一種服務(wù)器端html-嵌入式腳本描述語言。 其最強大和最重要的特征是其數(shù)據(jù)庫集成層,使用它完成一個含有數(shù)據(jù)庫功能的網(wǎng)頁是不可置信的簡單。在html文件中, php腳本程序(語法類似于perl或者c語言)可以使用特別的php標簽進行引用, 這樣網(wǎng)頁制作者也不必完全依賴html生成網(wǎng)頁了。由于php是在服務(wù)器端執(zhí)行的, 客戶端是看不到php代碼的。 php可以完成任何cgi腳本可以完成的任務(wù),但它的功能的發(fā)揮取決于它和各種數(shù)據(jù)庫的兼容性。 php除了可以使用http進行通信,也可以使用imap, snmp, nntp, pop3協(xié)議。
在目前的網(wǎng)站統(tǒng)計系統(tǒng)決大部分都是cgi的,但編寫起來特別復(fù)雜,而asp學起來簡單,更有和數(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)計總訪問量,每日平均訪問量,當日訪問量,最高訪問量,最高訪問日期,日流量分析,月流量分析,周流量分析,瀏覽器分析,等等。其實要做一個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)信息的方法取得信息,然后進行加工保存在數(shù)據(jù)表里,但最重要的是如何對數(shù)據(jù)進行更新,如當日每小時訪問統(tǒng)計數(shù),當天每小時統(tǒng)計數(shù)等,我們?nèi)绾螌γ刻斓臄?shù)據(jù)進行更新是這個程式的要點,我們可以采取幾種方式,如對每天的每個小時的記錄的更新我們采取在每天午夜12點更新,對每月的每一天的數(shù)據(jù)我們在月份切換的那一天進行更新。隨著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ù)庫作為微軟推出的以標準jet為引擎的桌面型數(shù)據(jù)庫系統(tǒng),由于具有操作簡單、界面友好等特點,具有較大的用戶群體。因此asp+access成為許多中小型網(wǎng)上應(yīng)用系統(tǒng)的首選方案。但asp+access解決方案在為我們帶來便捷的同時,也帶來了不容忽視的安全問題。由于access數(shù)據(jù)庫的加密機制非常簡單,所以即使數(shù)據(jù)庫設(shè)置了密碼,解密也很容易。該數(shù)據(jù)庫系統(tǒng)通過將用戶輸入的密碼與某一固定密鑰進行異或來形成一個加密串,并將其存儲在*.mdb文件中從地址“&h42”開始的區(qū)域內(nèi)。由于異或操作的特點是“經(jīng)過兩次異或就恢復(fù)原值”,因此,用這一密鑰與*.mdb文件中的加密串進行第二次異或操作,就可以輕松地得到access數(shù)據(jù)庫的密碼?;谶@種原理,可以很容易地編制出
解密程序。由此可見,無論是否設(shè)置了數(shù)據(jù)庫密碼,只要數(shù)據(jù)庫被下載,其信息就沒有任何安全性可言了。
前面所學到的數(shù)據(jù)訪問都是web應(yīng)用程序直接訪問數(shù)據(jù)庫。這種在web窗體中直接訪問和操作數(shù)據(jù)庫中數(shù)據(jù)的方式是一種低效的資源使用方式,并且有可能產(chǎn)生安全風險。通過存儲過程訪問數(shù)據(jù)庫,可以有效地提高數(shù)據(jù)訪問效率和數(shù)據(jù)的安全性。可以在執(zhí)行復(fù)雜任務(wù)時減少窗體的編碼量,降低對網(wǎng)絡(luò)寬帶的需求,通過只允許可信賴的本地存儲過程直接訪問數(shù)據(jù)庫,可以保護數(shù)據(jù)庫的安全。同時我們用到了一個容器控件repeater,當運行頁面時,repeater將綁定數(shù)據(jù)源中的數(shù)據(jù),并按照模板的要求將數(shù)據(jù)在界面上呈現(xiàn)出來。正是由于repeater控件沒有默認的外觀,所以進行界面設(shè)計的時候會感到不太直觀。但repeater控件非常靈活,可以通過對模板的靈活使用,創(chuàng)建多種不同形式的列表,包括以特定分隔符的列表,或者xml格式的列表,同時它還能夠非常精確地對界面元素進行定位。除此之外我們還添加了網(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對象進行裁剪區(qū)域的選擇和判斷,而頁面中圖形的繪制則都是通過graphics類的實例方法實現(xiàn),同時引用了web服務(wù)器控件image。image控件同img標簽一樣,其主要作用是在web頁面中顯現(xiàn)圖片信息,其主要屬性為imageurl,用于設(shè)置需要顯示的圖片的url地址。盡管asp.net提供的image控件可以快速地載入圖形,但卻并不支持click事件。而且gdi+除了可以繪制圖形和文字外,還可以繪制或編輯已有圖片,為圖片添加水印或裁剪圖片等操作。在實際的web應(yīng)用開發(fā)中,開發(fā)人員為了防止非法用戶惡意批量注冊或者惡意程序暴力破解密碼等操作,我們相應(yīng)的做了圖形驗證碼功能,在用戶身份驗證時都會采用驗證碼技術(shù)。驗證碼技術(shù)可以有效防止某些特定注冊用戶采用惡意程序和暴力破解方式對網(wǎng)站進行不斷的登錄嘗試,為此我們引用了random類,隨即數(shù)在計算機應(yīng)用程序設(shè)計,尤其是在實踐環(huán)境模擬和測試等領(lǐng)域得到了非常廣泛的應(yīng)用。random類是一個偽隨即數(shù)生成器,能夠產(chǎn)生滿足一定隨即性系統(tǒng)要求的數(shù)字序列。既然是偽隨機數(shù)生成器,產(chǎn)生的數(shù)字就不是絕對的隨即數(shù),而是通過一定的算法產(chǎn)生的偽隨機數(shù)。
在本次課程學習過程中,我學到了好多東西。在此特別感謝老師教誨。老師不僅上課生動、幽默,平時上機時又悉心的指導(dǎo)。同時感謝學校給我們提供了非常優(yōu)越的設(shè)計環(huán)境,對于我順利完成這次asp課程的學習,本次學習起到了關(guān)鍵性的作用。也通過上次的實驗設(shè)計學會了簡單的網(wǎng)站設(shè)計,通過開發(fā)上次的系統(tǒng),我較全面的掌握了aspt及sql的基本知識和編程技巧,并在開發(fā)過程中我的asp.net開發(fā)能力得到了進一步的提高。如: sql語言的使用;以前學過的軟件工程知識、數(shù)據(jù)庫原理及操作也得到了充分的應(yīng)用。
在開發(fā)過程中我學到了一些經(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ī)范的程序源代碼來學習。同時我也知道,想要學好這門課程,所要具備很多條件,首先打代碼要規(guī)范,要做注釋,這樣回頭來看程序時可以很快的看懂,可以練習自己的邏輯表達能力,對以后遇到難以實現(xiàn)的功能也可以很好的表達出來向別人請教,而且出去從事編程工作的話,代碼的規(guī)范是相當重要的。還有一點要學會總結(jié),把自己做的程序用到的知識點列出來就可以很好的總結(jié)自己的知識點。
初學asp心得體會感想篇3
經(jīng)過兩個多月的學習和上課聽講,初步掌握了asp.net動態(tài)網(wǎng)頁制作的一些簡單的知識和基本常識,也能從老師講的基本知識中應(yīng)用一下上課所學到的知識,感覺asp.net網(wǎng)站建設(shè)和維護不是很簡單,其中不僅要應(yīng)用各種方面的知識還要對所學的知識學會變通使用,雖然會有一些成功的地方,以前學c++、數(shù)據(jù)庫等一些相關(guān)知識的時候沒好好學,現(xiàn)在想真正做好這個網(wǎng)站就顯得不那么容易了。曾經(jīng)看到網(wǎng)上有這么一句話,一個優(yōu)秀的網(wǎng)絡(luò)程序員不但要了解自己領(lǐng)域的一些專業(yè)技術(shù),而且很多時候還要充當半個網(wǎng)絡(luò)工程師,半個美術(shù)設(shè)計師和半個數(shù)據(jù)庫管理員。照這么說來,我單單學習asp.net是遠遠不夠的,還要學習計算機網(wǎng)絡(luò)、美術(shù)設(shè)計、數(shù)據(jù)庫,我很喜歡有關(guān)計算機方面的東西,認為我們當代的生活越來越離不開計算機,并且我也很癡迷計算機所帶來的強大功能。
它是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)境進行開發(fā),wysiwyg(what yousee is what you get所見即為所得)的編輯。簡單性和易學性
高效可管理性
asp.net使用一種字符基礎(chǔ)的,分級的配置系統(tǒng),使你服務(wù)器環(huán)境和應(yīng)用程序的設(shè)置更加簡單。因為配置信息都保存在簡單文本中,新的設(shè)置有可能都不需要啟動本地的管理員工具就可以實現(xiàn)。這種被稱為"zerolocal administration"的哲學觀念使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確做不到這一點。自定義性和可擴展性 asp.net設(shè)計時考慮了讓網(wǎng)站開發(fā)人員可以在自己的代碼中自己定義"plug-in"的模塊。這與原來的包含關(guān)系不同,asp.net可以加入自己定義的如何組件。網(wǎng)站程序的開發(fā)從來沒有這么簡單過。
安全性基于windows認證技術(shù)和每應(yīng)用程序配置,你可以確性你的原程序時絕對安全的。 asp.net 的語法在很大程度上與 asp 兼容,同時它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護??梢酝ㄟ^在現(xiàn)有 asp 應(yīng)用程序中逐漸添加 asp.net 功能,隨時增強 asp 應(yīng)用程序的功能。 asp.net 是一個已編譯的、基于 .net 的環(huán)境,把基于通用語言的程序在服務(wù)器上運行。將程序在服務(wù)器端首次運行時進行編譯,比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)試支持。
當創(chuàng)建 asp.net 應(yīng)用程序時,開發(fā)人員可以使用 web 窗體或 web,或以他們認為合適的任何方式進行組合。每個功能都能得到同一結(jié)構(gòu)的支持,使您能夠使用身份驗證方案,緩存經(jīng)常使用的數(shù)據(jù),或者對應(yīng)用程序的配置進行自定義. 如果你從來沒有開發(fā)過網(wǎng)站程序,那么這不適合你,你應(yīng)該至少掌握一些html和簡單的web開發(fā)術(shù)語(不過我相信如果有興趣的話是可以很快的掌握的)。你不需要先前的asp開發(fā)經(jīng)驗(當然有經(jīng)驗更好),但是你必須了解交互式web程序開發(fā)的概念,包含窗體,腳本,和數(shù)據(jù)接口的概念,如果你具備了這些條件的話,那么你就可以在asp.net的世界開始展翅高飛了。
首先我們學習了怎么設(shè)計主頁,一個好的主頁可以給瀏覽者一個耳目一新的感覺,所以網(wǎng)站主頁的布局就顯得格外重要了,好的布局加上親切的言語,以及強大的功能,都會是瀏覽者感到無比的親切。這次我跟劉昕做的是樂糕網(wǎng),一個粉紅色的布局顯出溫馨的格調(diào),其次我們添加了用戶注冊界面,同時應(yīng)用了模板頁,模板頁嵌套在注冊頁面上,同時與主頁的注冊按鈕相連接,在主頁引用了css樣式,使得格局更加清晰。之后我們做了在線投票頁面,同樣引用了模板頁,同時學會了使用cookie,session的使用。做好這些功能之后,我們開始用到了數(shù)據(jù)庫,要實現(xiàn)用戶的存儲和調(diào)用,以及商品信息的錄入,同時對商品id進行數(shù)據(jù)綁定,之后我們實現(xiàn)了購物車功能,使用 datalist控件實現(xiàn)了對后臺代碼文件中綁定其數(shù)據(jù)源,asp,net3.5提供的datalist控件使用模板顯示內(nèi)容,他允許每一行顯示多條記錄。可以使用html表對應(yīng)模板項的呈現(xiàn)方式進行布局,從而控制各個單元格的順序、方向和列數(shù)。在這之后我們又做了留言板,通過ado.net調(diào)用存儲過程,做到了留言板功能的實現(xiàn),。前面所學到的數(shù)據(jù)訪問都是web應(yīng)用程序直接訪問數(shù)據(jù)庫。這種在web窗體中直接訪問和操作數(shù)據(jù)庫中數(shù)據(jù)的方式是一種低效的資源使用方式,并且有可能產(chǎn)生安全風險。通過存儲過程訪問數(shù)據(jù)庫,可以有效地提高數(shù)據(jù)訪問效率和數(shù)據(jù)的安全性。
可以在執(zhí)行復(fù)雜任務(wù)時減少窗體的編碼量,降低對網(wǎng)絡(luò)寬帶的需求;通過只允許可信賴的本地存儲過程直接訪問數(shù)據(jù)庫,可以保護數(shù)據(jù)庫的安全。同時我們用到了一個容器控件repeater,當運行頁面時,repeater將綁定數(shù)據(jù)源中的數(shù)據(jù),并按照模板的要求將數(shù)據(jù)在界面上呈現(xiàn)出來。正是由于repeater控件沒有默認的外觀,所以進行界面設(shè)計的時候會感到不太直觀。但repeater控件非常靈活,可以通過對模板的靈活使用,創(chuàng)建多種不同形式的列表,包括以特定分隔符的列表,或者xml格式的列表,同時它還能夠非常精確地對界面元素進行定位。除此之外我們還添加了網(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對象進行裁剪區(qū)域的選擇和判斷,而頁面中圖形的繪制則都是通過graphics類的實例方法實現(xiàn),同時引用了web服務(wù)器控件image。image控件同img標簽一樣,其主要作用是在web頁面中顯現(xiàn)圖片信息,其主要屬性為imageurl,用于設(shè)置需要顯示的圖片的url地址。盡管asp.net提供的image控件可以快速地載入圖形,但卻并不支持click事件。而且gdi+除了可以繪制圖形和文字外,還可以繪制或編輯已有圖片,為圖片添加水印或裁剪圖片等操作。
在實際的web應(yīng)用開發(fā)中,開發(fā)人員為了防止非法用戶惡意批量注冊或者惡意程序暴力破解密碼等操作,我們相應(yīng)的做了圖形驗證碼功能,在用戶身份驗證時都會采用驗證碼技術(shù)。驗證碼技術(shù)可以有效防止某些特定注冊用戶采用惡意程序和暴力破解方式對網(wǎng)站進行不斷的登錄嘗試,為此我們引用了random類,隨即數(shù)在計算機應(yīng)用程序設(shè)計,尤其是在實踐環(huán)境模擬和測試等領(lǐng)域得到了非常廣泛的應(yīng)用。random類是一個偽隨即數(shù)生成器,能夠產(chǎn)生滿足一定隨即性系統(tǒng)要求的數(shù)字序列。既然是偽隨機數(shù)生成器,產(chǎn)生的數(shù)字就不是絕對的隨即數(shù),而是通過一定的算法產(chǎn)生的偽隨機數(shù)。初始化一個隨機數(shù)發(fā)生器有兩種方法:第一種是不指定隨即種子,系統(tǒng)自動選取當前時間作為隨機種子,代碼如下:random rand=new random();第二種方法是指定一個int型參數(shù)作為隨即種子,認識到了網(wǎng)站的真正的結(jié)構(gòu),最終才對bs結(jié)構(gòu)的網(wǎng)站程序有了進一步的認識。同時,對sql大型數(shù)據(jù)庫的認識才有了質(zhì)的改變。最后我們做了網(wǎng)絡(luò)在線人數(shù)統(tǒng)計,完成了對樂購網(wǎng)網(wǎng)站的制作。
在這短短的幾個月中,我知道在程序設(shè)計的時候,不要太在意程序是否最簡潔靈活,對于一般開發(fā)者而言,程序規(guī)范化和可讀性可能比追求程序的靈活性更加重要。在互聯(lián)網(wǎng)資源越來越豐富的情況下,我們可以參考一些規(guī)范的程序源代碼來學習。同時我也知道,想要學好這門課程,所要具備很多條件,首先打代碼要規(guī)范,要做注釋,這樣回頭來看程序時可以很快的看懂,一方面可以練習自己的邏輯表達能力,對以后遇到難以實現(xiàn)的功能也可以很好的表達出來向別人請教,而且出去從事編程工作的話,代碼的規(guī)范是相當重要的。還有一點要學會總結(jié),把自己做的程序用到的知識點列出來就可以很好的總結(jié)自己的知識點。當形成知識體系,對知識的理解就會更上一層樓。
初學asp心得體會相關(guān)文章:
6.c#學習心得范文