求秋音
摘?要:ASP是一種基于瀏覽器的網(wǎng)絡(luò)數(shù)據(jù)庫編程技術(shù)。筆者以“以學定教、為學而教”的理念,針對中職學生的特點自創(chuàng)了“揚長避短”和“飲水思源”的教學方法。
關(guān)鍵詞:ASP編程教學?中職學生?學習興趣
對于中職信息類計算機專業(yè)的學生來說,ASP編程學科是一門望而卻步的課程。鑒于中職學生的特點,筆者以“以學定教、為學而教”的理念并結(jié)合多年在ASP網(wǎng)頁編程教學中的一些經(jīng)驗,自創(chuàng)了“揚長避短”和“飲水思源”的教學方法,并在所教兩個班級的《ASP動態(tài)網(wǎng)頁編程》課的教學實踐中取得了良好的效果,受到了學生的普遍歡迎。
一、在編程入門教學時應(yīng)用“揚長避短”的方法
中職學生入學時的數(shù)學、語文和英語等基礎(chǔ)知識水平較低,他們的數(shù)學邏輯能力、英語和語文的記讀能力相對薄弱,但中職學生比較擅長且樂于實際的動手操作,因而教師可以在入門教學時展示現(xiàn)有網(wǎng)絡(luò)中實際系統(tǒng)的例子去激發(fā)學生投入學習的興趣,然后再讓學生通過自己的動手操作利用DW專業(yè)網(wǎng)頁工具自動生成程序代碼。這就是所謂的“揚長避短”。
1.教師上好起始課,激發(fā)學生學習興趣
一是展示現(xiàn)有網(wǎng)絡(luò)中實際系統(tǒng)的例子,即以身邊的例子讓學生在其生動的情景中產(chǎn)生想去自己制作動力,同時也逐步明白本門課程的基本概念。如讓學生了解校園網(wǎng)中新聞發(fā)布系統(tǒng)、成績管理系統(tǒng)等來引導學生了解ASP動態(tài)網(wǎng)頁編程技術(shù),尤其要突出何為ASP的動態(tài)概念,要與以前靜態(tài)網(wǎng)頁中的動態(tài)圖像區(qū)別開來,使學生對靜態(tài)和動態(tài)有所區(qū)分。
二是以社會的需求來激發(fā)學生的興趣點,可以從已畢業(yè)學生的工作崗位、工作性質(zhì)和年薪為例來講解這門課程所帶給學生現(xiàn)實的實惠,從而激發(fā)學生迫切學好這門課程的興趣。
2.讓學生動手操作,自動生成程序代碼
例:制作一個用戶登錄的系統(tǒng)。
前期準備:在DW軟件中制作好靜態(tài)網(wǎng)頁和access數(shù)據(jù)庫。
步驟一:網(wǎng)頁與數(shù)據(jù)庫連接代碼產(chǎn)生,在站點下新建擴展名為.udl的連接文件(圖1);然后雙擊打開這個文件,設(shè)定打開對話框(圖2)中“提供程序”、“連接”等相應(yīng)選項設(shè)置后,會自動生成一段連接數(shù)據(jù)庫的代碼;最后以文本方式打開.udl文件,代碼如后所示。
圖1
圖2
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:wang8chatchatchat.mdb;Mode=ReadWrite|Share Deny None;Persist Security Info=False
接下來可以在DW軟件中單擊應(yīng)用程序面板中“數(shù)據(jù)庫”——“自定義連接字符串”,在對話框(圖3)中復(fù)制剛才生成的這代碼就可實現(xiàn)DW與數(shù)據(jù)庫的連接。
圖3
步驟二:在DW環(huán)境中單擊應(yīng)用程序面板中“服務(wù)器行為”——“服務(wù)器身份驗證”——“用戶登錄”,在打開的對話框(圖4)中設(shè)置相應(yīng)的一系列參數(shù)后,會自動生成用戶登錄的一段代碼。
圖4
自動生成的代碼有38行,如下所示。
<%
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Request.QueryString
MM_valUsername=CStr(Request.Form("um"))
If MM_valUsername <> "" Then
MM_fldUserAuthorization=""
……
……
……
End If
%>
通過以上兩個步驟,基本完成了本例子的功能,代碼有近120條,但在整個操作過程中,所有代碼的產(chǎn)生都是由DW專業(yè)網(wǎng)頁制作軟件自動來產(chǎn)生(不同版本的軟件產(chǎn)生的代碼有所不同),這種方法能激發(fā)學生學習興趣。
二、在編程提高教學時應(yīng)用“飲水思源”的方法
通過入門教學中的自動生成程序代碼,雖然使學生掌握了一定的實踐技能,但很難承擔實際項目的開發(fā),不利于學生學會了解語言的語法、理解代碼的功能、分析程序的結(jié)構(gòu)等。所以教師得用“飲水思源”,回到學生學習理論中來掌握代碼的語法功能、程序結(jié)構(gòu)等等知識?!帮嬎荚础钡姆椒ㄖ饕w現(xiàn)在代碼分析和修改上。
1.分析數(shù)據(jù)庫連接代碼
如果我們在站點中更改了數(shù)據(jù)庫的位置或文件夾,那么我們需要修改代碼,首先來了解每一行代碼的功能。
Provider=Microsoft.Jet.OLEDB.4.0;數(shù)據(jù)庫連接驅(qū)動程序
Data Source=F:wang8chatchatchat.mdb;數(shù)據(jù)源的位置
Mode=ReadWrite|Share Deny None;數(shù)據(jù)庫數(shù)據(jù)的讀寫權(quán)限
Persist Security Info=False數(shù)據(jù)庫讀寫時有無安全密碼,false是無
分析好代碼后教師可安排學生根據(jù)程序需要修改代碼。
例:把網(wǎng)站放在internet網(wǎng)上時,需要修改數(shù)據(jù)庫位置為網(wǎng)絡(luò)空間上網(wǎng)站的相對地址,同時我們要求數(shù)據(jù)庫只能讀不能寫。修改之后代碼為:
Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=……;
Mode=Read|Share Deny None;
Persist Security Info=False
2.分析用戶登錄程序結(jié)構(gòu)
(1)以下一段程序為變量初始化,把變量賦值為表單的值。
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Request.QueryString
MM_valUsername=CStr(Request.Form("um"))
(2)以下程序段是通過IF語句的嵌套對用戶名和密碼的表單值進行判斷。
如條件判斷正確則跳轉(zhuǎn)到正確的頁面,如錯誤則跳轉(zhuǎn)到錯誤提示信息頁面。在此段程序中我們分析了其中關(guān)鍵的一些語句功能,分析IF語句的嵌套結(jié)構(gòu),通過這些分析使學生掌握修改程序的方法。
If MM_valUsername <> "" Then
MM_redirectLoginSuccess="files/main.asp"
MM_redirectLoginFailed="files/errors.asp"變量賦值為不同的跳轉(zhuǎn)頁面
……
MM_rsUser.Source = "SELECT 在線用戶,密碼"用SQL語句查詢
……
Session("MM_Username") = MM_valUsername獲取session變量中的用戶名
MM_rsUser.Close關(guān)閉數(shù)據(jù)庫查詢記錄
Response.Redirect(MM_redirectLoginSuccess)用戶和密碼正確則跳轉(zhuǎn)的頁面
……
Response.Redirect(MM_redirectLoginFailed)用戶和密碼錯誤則跳轉(zhuǎn)的頁面
End If
(3)動態(tài)代碼與靜態(tài)HTML語句的結(jié)合。動態(tài)代碼往往寫在靜態(tài)HTML語句的前面,程序的運行經(jīng)常需要表單中按鈕來提交或觸發(fā)動態(tài)代碼中的動作。所以靜態(tài)表單按鈕的行為動作都與動態(tài)代碼有著關(guān)聯(lián),當多次自動代碼之后往往會產(chǎn)生很多冗余的代碼,這就需要我們教師教會學生去分析每段代碼的結(jié)構(gòu)和功能,以便在程序出錯時修改代碼。如本例中的用戶登錄代碼結(jié)構(gòu)中第一句MM_LoginAction = Request.ServerVariables("URL"),此語句中的變量MM_LoginAction與靜態(tài)表單中語句中變量是一致的。
三、應(yīng)用時應(yīng)注意的幾個問題
與實際的項目任務(wù)相結(jié)合效果會更好。學校計算機專業(yè)教師或多或少都為企業(yè)開發(fā)過動態(tài)網(wǎng)站并積累了一些經(jīng)驗。可讓教師所承擔的網(wǎng)站建設(shè)引入教學,以項目任務(wù)中的實例來教學,引導學生共同開發(fā)項目,由此“教、學、做”合一。承擔小型動態(tài)網(wǎng)站建設(shè)項目,每個項目完成后所帶來的成功后的愉悅和滿足感,不但提高了學生的學習興趣和學習積極性,同時也培養(yǎng)了學生自主學習的能力。
用于教學的實際案例難度要適中。教師選擇時既要精心考慮案例對教學目標所起的作用,又要顧及學的方面的各種因素,即具有針對性、實效性和可行性教學案例難度的選擇要適中。講授的兩個案例之間的知識點要有關(guān)聯(lián)和層層遞進,案例不能過難,盡量一個案例安排一周的課時數(shù)。
重視預(yù)備知識的講授。在講解ASP動態(tài)網(wǎng)頁編程課程之前,要求學生已了解VB語法的基礎(chǔ)知識、數(shù)據(jù)庫知識和靜態(tài)網(wǎng)頁基礎(chǔ)知識。
參考文獻:
[1]鄭益群.ASP網(wǎng)頁制作教學方法探索與實踐[J].電腦知識與技術(shù),2008(8).
[2]范勁松,黃友初.案例教學法在C語言教學中的系統(tǒng)應(yīng)用[J].鄖陽醫(yī)學院學報,2005(3).
(作者單位:紹興市職業(yè)教育中心)
endprint
摘?要:ASP是一種基于瀏覽器的網(wǎng)絡(luò)數(shù)據(jù)庫編程技術(shù)。筆者以“以學定教、為學而教”的理念,針對中職學生的特點自創(chuàng)了“揚長避短”和“飲水思源”的教學方法。
關(guān)鍵詞:ASP編程教學?中職學生?學習興趣
對于中職信息類計算機專業(yè)的學生來說,ASP編程學科是一門望而卻步的課程。鑒于中職學生的特點,筆者以“以學定教、為學而教”的理念并結(jié)合多年在ASP網(wǎng)頁編程教學中的一些經(jīng)驗,自創(chuàng)了“揚長避短”和“飲水思源”的教學方法,并在所教兩個班級的《ASP動態(tài)網(wǎng)頁編程》課的教學實踐中取得了良好的效果,受到了學生的普遍歡迎。
一、在編程入門教學時應(yīng)用“揚長避短”的方法
中職學生入學時的數(shù)學、語文和英語等基礎(chǔ)知識水平較低,他們的數(shù)學邏輯能力、英語和語文的記讀能力相對薄弱,但中職學生比較擅長且樂于實際的動手操作,因而教師可以在入門教學時展示現(xiàn)有網(wǎng)絡(luò)中實際系統(tǒng)的例子去激發(fā)學生投入學習的興趣,然后再讓學生通過自己的動手操作利用DW專業(yè)網(wǎng)頁工具自動生成程序代碼。這就是所謂的“揚長避短”。
1.教師上好起始課,激發(fā)學生學習興趣
一是展示現(xiàn)有網(wǎng)絡(luò)中實際系統(tǒng)的例子,即以身邊的例子讓學生在其生動的情景中產(chǎn)生想去自己制作動力,同時也逐步明白本門課程的基本概念。如讓學生了解校園網(wǎng)中新聞發(fā)布系統(tǒng)、成績管理系統(tǒng)等來引導學生了解ASP動態(tài)網(wǎng)頁編程技術(shù),尤其要突出何為ASP的動態(tài)概念,要與以前靜態(tài)網(wǎng)頁中的動態(tài)圖像區(qū)別開來,使學生對靜態(tài)和動態(tài)有所區(qū)分。
二是以社會的需求來激發(fā)學生的興趣點,可以從已畢業(yè)學生的工作崗位、工作性質(zhì)和年薪為例來講解這門課程所帶給學生現(xiàn)實的實惠,從而激發(fā)學生迫切學好這門課程的興趣。
2.讓學生動手操作,自動生成程序代碼
例:制作一個用戶登錄的系統(tǒng)。
前期準備:在DW軟件中制作好靜態(tài)網(wǎng)頁和access數(shù)據(jù)庫。
步驟一:網(wǎng)頁與數(shù)據(jù)庫連接代碼產(chǎn)生,在站點下新建擴展名為.udl的連接文件(圖1);然后雙擊打開這個文件,設(shè)定打開對話框(圖2)中“提供程序”、“連接”等相應(yīng)選項設(shè)置后,會自動生成一段連接數(shù)據(jù)庫的代碼;最后以文本方式打開.udl文件,代碼如后所示。
圖1
圖2
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:wang8chatchatchat.mdb;Mode=ReadWrite|Share Deny None;Persist Security Info=False
接下來可以在DW軟件中單擊應(yīng)用程序面板中“數(shù)據(jù)庫”——“自定義連接字符串”,在對話框(圖3)中復(fù)制剛才生成的這代碼就可實現(xiàn)DW與數(shù)據(jù)庫的連接。
圖3
步驟二:在DW環(huán)境中單擊應(yīng)用程序面板中“服務(wù)器行為”——“服務(wù)器身份驗證”——“用戶登錄”,在打開的對話框(圖4)中設(shè)置相應(yīng)的一系列參數(shù)后,會自動生成用戶登錄的一段代碼。
圖4
自動生成的代碼有38行,如下所示。
<%
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Request.QueryString
MM_valUsername=CStr(Request.Form("um"))
If MM_valUsername <> "" Then
MM_fldUserAuthorization=""
……
……
……
End If
%>
通過以上兩個步驟,基本完成了本例子的功能,代碼有近120條,但在整個操作過程中,所有代碼的產(chǎn)生都是由DW專業(yè)網(wǎng)頁制作軟件自動來產(chǎn)生(不同版本的軟件產(chǎn)生的代碼有所不同),這種方法能激發(fā)學生學習興趣。
二、在編程提高教學時應(yīng)用“飲水思源”的方法
通過入門教學中的自動生成程序代碼,雖然使學生掌握了一定的實踐技能,但很難承擔實際項目的開發(fā),不利于學生學會了解語言的語法、理解代碼的功能、分析程序的結(jié)構(gòu)等。所以教師得用“飲水思源”,回到學生學習理論中來掌握代碼的語法功能、程序結(jié)構(gòu)等等知識?!帮嬎荚础钡姆椒ㄖ饕w現(xiàn)在代碼分析和修改上。
1.分析數(shù)據(jù)庫連接代碼
如果我們在站點中更改了數(shù)據(jù)庫的位置或文件夾,那么我們需要修改代碼,首先來了解每一行代碼的功能。
Provider=Microsoft.Jet.OLEDB.4.0;數(shù)據(jù)庫連接驅(qū)動程序
Data Source=F:wang8chatchatchat.mdb;數(shù)據(jù)源的位置
Mode=ReadWrite|Share Deny None;數(shù)據(jù)庫數(shù)據(jù)的讀寫權(quán)限
Persist Security Info=False數(shù)據(jù)庫讀寫時有無安全密碼,false是無
分析好代碼后教師可安排學生根據(jù)程序需要修改代碼。
例:把網(wǎng)站放在internet網(wǎng)上時,需要修改數(shù)據(jù)庫位置為網(wǎng)絡(luò)空間上網(wǎng)站的相對地址,同時我們要求數(shù)據(jù)庫只能讀不能寫。修改之后代碼為:
Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=……;
Mode=Read|Share Deny None;
Persist Security Info=False
2.分析用戶登錄程序結(jié)構(gòu)
(1)以下一段程序為變量初始化,把變量賦值為表單的值。
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Request.QueryString
MM_valUsername=CStr(Request.Form("um"))
(2)以下程序段是通過IF語句的嵌套對用戶名和密碼的表單值進行判斷。
如條件判斷正確則跳轉(zhuǎn)到正確的頁面,如錯誤則跳轉(zhuǎn)到錯誤提示信息頁面。在此段程序中我們分析了其中關(guān)鍵的一些語句功能,分析IF語句的嵌套結(jié)構(gòu),通過這些分析使學生掌握修改程序的方法。
If MM_valUsername <> "" Then
MM_redirectLoginSuccess="files/main.asp"
MM_redirectLoginFailed="files/errors.asp"變量賦值為不同的跳轉(zhuǎn)頁面
……
MM_rsUser.Source = "SELECT 在線用戶,密碼"用SQL語句查詢
……
Session("MM_Username") = MM_valUsername獲取session變量中的用戶名
MM_rsUser.Close關(guān)閉數(shù)據(jù)庫查詢記錄
Response.Redirect(MM_redirectLoginSuccess)用戶和密碼正確則跳轉(zhuǎn)的頁面
……
Response.Redirect(MM_redirectLoginFailed)用戶和密碼錯誤則跳轉(zhuǎn)的頁面
End If
(3)動態(tài)代碼與靜態(tài)HTML語句的結(jié)合。動態(tài)代碼往往寫在靜態(tài)HTML語句的前面,程序的運行經(jīng)常需要表單中按鈕來提交或觸發(fā)動態(tài)代碼中的動作。所以靜態(tài)表單按鈕的行為動作都與動態(tài)代碼有著關(guān)聯(lián),當多次自動代碼之后往往會產(chǎn)生很多冗余的代碼,這就需要我們教師教會學生去分析每段代碼的結(jié)構(gòu)和功能,以便在程序出錯時修改代碼。如本例中的用戶登錄代碼結(jié)構(gòu)中第一句MM_LoginAction = Request.ServerVariables("URL"),此語句中的變量MM_LoginAction與靜態(tài)表單中語句中變量是一致的。
三、應(yīng)用時應(yīng)注意的幾個問題
與實際的項目任務(wù)相結(jié)合效果會更好。學校計算機專業(yè)教師或多或少都為企業(yè)開發(fā)過動態(tài)網(wǎng)站并積累了一些經(jīng)驗??勺尳處熕袚木W(wǎng)站建設(shè)引入教學,以項目任務(wù)中的實例來教學,引導學生共同開發(fā)項目,由此“教、學、做”合一。承擔小型動態(tài)網(wǎng)站建設(shè)項目,每個項目完成后所帶來的成功后的愉悅和滿足感,不但提高了學生的學習興趣和學習積極性,同時也培養(yǎng)了學生自主學習的能力。
用于教學的實際案例難度要適中。教師選擇時既要精心考慮案例對教學目標所起的作用,又要顧及學的方面的各種因素,即具有針對性、實效性和可行性教學案例難度的選擇要適中。講授的兩個案例之間的知識點要有關(guān)聯(lián)和層層遞進,案例不能過難,盡量一個案例安排一周的課時數(shù)。
重視預(yù)備知識的講授。在講解ASP動態(tài)網(wǎng)頁編程課程之前,要求學生已了解VB語法的基礎(chǔ)知識、數(shù)據(jù)庫知識和靜態(tài)網(wǎng)頁基礎(chǔ)知識。
參考文獻:
[1]鄭益群.ASP網(wǎng)頁制作教學方法探索與實踐[J].電腦知識與技術(shù),2008(8).
[2]范勁松,黃友初.案例教學法在C語言教學中的系統(tǒng)應(yīng)用[J].鄖陽醫(yī)學院學報,2005(3).
(作者單位:紹興市職業(yè)教育中心)
endprint
摘?要:ASP是一種基于瀏覽器的網(wǎng)絡(luò)數(shù)據(jù)庫編程技術(shù)。筆者以“以學定教、為學而教”的理念,針對中職學生的特點自創(chuàng)了“揚長避短”和“飲水思源”的教學方法。
關(guān)鍵詞:ASP編程教學?中職學生?學習興趣
對于中職信息類計算機專業(yè)的學生來說,ASP編程學科是一門望而卻步的課程。鑒于中職學生的特點,筆者以“以學定教、為學而教”的理念并結(jié)合多年在ASP網(wǎng)頁編程教學中的一些經(jīng)驗,自創(chuàng)了“揚長避短”和“飲水思源”的教學方法,并在所教兩個班級的《ASP動態(tài)網(wǎng)頁編程》課的教學實踐中取得了良好的效果,受到了學生的普遍歡迎。
一、在編程入門教學時應(yīng)用“揚長避短”的方法
中職學生入學時的數(shù)學、語文和英語等基礎(chǔ)知識水平較低,他們的數(shù)學邏輯能力、英語和語文的記讀能力相對薄弱,但中職學生比較擅長且樂于實際的動手操作,因而教師可以在入門教學時展示現(xiàn)有網(wǎng)絡(luò)中實際系統(tǒng)的例子去激發(fā)學生投入學習的興趣,然后再讓學生通過自己的動手操作利用DW專業(yè)網(wǎng)頁工具自動生成程序代碼。這就是所謂的“揚長避短”。
1.教師上好起始課,激發(fā)學生學習興趣
一是展示現(xiàn)有網(wǎng)絡(luò)中實際系統(tǒng)的例子,即以身邊的例子讓學生在其生動的情景中產(chǎn)生想去自己制作動力,同時也逐步明白本門課程的基本概念。如讓學生了解校園網(wǎng)中新聞發(fā)布系統(tǒng)、成績管理系統(tǒng)等來引導學生了解ASP動態(tài)網(wǎng)頁編程技術(shù),尤其要突出何為ASP的動態(tài)概念,要與以前靜態(tài)網(wǎng)頁中的動態(tài)圖像區(qū)別開來,使學生對靜態(tài)和動態(tài)有所區(qū)分。
二是以社會的需求來激發(fā)學生的興趣點,可以從已畢業(yè)學生的工作崗位、工作性質(zhì)和年薪為例來講解這門課程所帶給學生現(xiàn)實的實惠,從而激發(fā)學生迫切學好這門課程的興趣。
2.讓學生動手操作,自動生成程序代碼
例:制作一個用戶登錄的系統(tǒng)。
前期準備:在DW軟件中制作好靜態(tài)網(wǎng)頁和access數(shù)據(jù)庫。
步驟一:網(wǎng)頁與數(shù)據(jù)庫連接代碼產(chǎn)生,在站點下新建擴展名為.udl的連接文件(圖1);然后雙擊打開這個文件,設(shè)定打開對話框(圖2)中“提供程序”、“連接”等相應(yīng)選項設(shè)置后,會自動生成一段連接數(shù)據(jù)庫的代碼;最后以文本方式打開.udl文件,代碼如后所示。
圖1
圖2
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:wang8chatchatchat.mdb;Mode=ReadWrite|Share Deny None;Persist Security Info=False
接下來可以在DW軟件中單擊應(yīng)用程序面板中“數(shù)據(jù)庫”——“自定義連接字符串”,在對話框(圖3)中復(fù)制剛才生成的這代碼就可實現(xiàn)DW與數(shù)據(jù)庫的連接。
圖3
步驟二:在DW環(huán)境中單擊應(yīng)用程序面板中“服務(wù)器行為”——“服務(wù)器身份驗證”——“用戶登錄”,在打開的對話框(圖4)中設(shè)置相應(yīng)的一系列參數(shù)后,會自動生成用戶登錄的一段代碼。
圖4
自動生成的代碼有38行,如下所示。
<%
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Request.QueryString
MM_valUsername=CStr(Request.Form("um"))
If MM_valUsername <> "" Then
MM_fldUserAuthorization=""
……
……
……
End If
%>
通過以上兩個步驟,基本完成了本例子的功能,代碼有近120條,但在整個操作過程中,所有代碼的產(chǎn)生都是由DW專業(yè)網(wǎng)頁制作軟件自動來產(chǎn)生(不同版本的軟件產(chǎn)生的代碼有所不同),這種方法能激發(fā)學生學習興趣。
二、在編程提高教學時應(yīng)用“飲水思源”的方法
通過入門教學中的自動生成程序代碼,雖然使學生掌握了一定的實踐技能,但很難承擔實際項目的開發(fā),不利于學生學會了解語言的語法、理解代碼的功能、分析程序的結(jié)構(gòu)等。所以教師得用“飲水思源”,回到學生學習理論中來掌握代碼的語法功能、程序結(jié)構(gòu)等等知識?!帮嬎荚础钡姆椒ㄖ饕w現(xiàn)在代碼分析和修改上。
1.分析數(shù)據(jù)庫連接代碼
如果我們在站點中更改了數(shù)據(jù)庫的位置或文件夾,那么我們需要修改代碼,首先來了解每一行代碼的功能。
Provider=Microsoft.Jet.OLEDB.4.0;數(shù)據(jù)庫連接驅(qū)動程序
Data Source=F:wang8chatchatchat.mdb;數(shù)據(jù)源的位置
Mode=ReadWrite|Share Deny None;數(shù)據(jù)庫數(shù)據(jù)的讀寫權(quán)限
Persist Security Info=False數(shù)據(jù)庫讀寫時有無安全密碼,false是無
分析好代碼后教師可安排學生根據(jù)程序需要修改代碼。
例:把網(wǎng)站放在internet網(wǎng)上時,需要修改數(shù)據(jù)庫位置為網(wǎng)絡(luò)空間上網(wǎng)站的相對地址,同時我們要求數(shù)據(jù)庫只能讀不能寫。修改之后代碼為:
Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=……;
Mode=Read|Share Deny None;
Persist Security Info=False
2.分析用戶登錄程序結(jié)構(gòu)
(1)以下一段程序為變量初始化,把變量賦值為表單的值。
MM_LoginAction = Request.ServerVariables("URL")
If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Request.QueryString
MM_valUsername=CStr(Request.Form("um"))
(2)以下程序段是通過IF語句的嵌套對用戶名和密碼的表單值進行判斷。
如條件判斷正確則跳轉(zhuǎn)到正確的頁面,如錯誤則跳轉(zhuǎn)到錯誤提示信息頁面。在此段程序中我們分析了其中關(guān)鍵的一些語句功能,分析IF語句的嵌套結(jié)構(gòu),通過這些分析使學生掌握修改程序的方法。
If MM_valUsername <> "" Then
MM_redirectLoginSuccess="files/main.asp"
MM_redirectLoginFailed="files/errors.asp"變量賦值為不同的跳轉(zhuǎn)頁面
……
MM_rsUser.Source = "SELECT 在線用戶,密碼"用SQL語句查詢
……
Session("MM_Username") = MM_valUsername獲取session變量中的用戶名
MM_rsUser.Close關(guān)閉數(shù)據(jù)庫查詢記錄
Response.Redirect(MM_redirectLoginSuccess)用戶和密碼正確則跳轉(zhuǎn)的頁面
……
Response.Redirect(MM_redirectLoginFailed)用戶和密碼錯誤則跳轉(zhuǎn)的頁面
End If
(3)動態(tài)代碼與靜態(tài)HTML語句的結(jié)合。動態(tài)代碼往往寫在靜態(tài)HTML語句的前面,程序的運行經(jīng)常需要表單中按鈕來提交或觸發(fā)動態(tài)代碼中的動作。所以靜態(tài)表單按鈕的行為動作都與動態(tài)代碼有著關(guān)聯(lián),當多次自動代碼之后往往會產(chǎn)生很多冗余的代碼,這就需要我們教師教會學生去分析每段代碼的結(jié)構(gòu)和功能,以便在程序出錯時修改代碼。如本例中的用戶登錄代碼結(jié)構(gòu)中第一句MM_LoginAction = Request.ServerVariables("URL"),此語句中的變量MM_LoginAction與靜態(tài)表單中語句中變量是一致的。
三、應(yīng)用時應(yīng)注意的幾個問題
與實際的項目任務(wù)相結(jié)合效果會更好。學校計算機專業(yè)教師或多或少都為企業(yè)開發(fā)過動態(tài)網(wǎng)站并積累了一些經(jīng)驗??勺尳處熕袚木W(wǎng)站建設(shè)引入教學,以項目任務(wù)中的實例來教學,引導學生共同開發(fā)項目,由此“教、學、做”合一。承擔小型動態(tài)網(wǎng)站建設(shè)項目,每個項目完成后所帶來的成功后的愉悅和滿足感,不但提高了學生的學習興趣和學習積極性,同時也培養(yǎng)了學生自主學習的能力。
用于教學的實際案例難度要適中。教師選擇時既要精心考慮案例對教學目標所起的作用,又要顧及學的方面的各種因素,即具有針對性、實效性和可行性教學案例難度的選擇要適中。講授的兩個案例之間的知識點要有關(guān)聯(lián)和層層遞進,案例不能過難,盡量一個案例安排一周的課時數(shù)。
重視預(yù)備知識的講授。在講解ASP動態(tài)網(wǎng)頁編程課程之前,要求學生已了解VB語法的基礎(chǔ)知識、數(shù)據(jù)庫知識和靜態(tài)網(wǎng)頁基礎(chǔ)知識。
參考文獻:
[1]鄭益群.ASP網(wǎng)頁制作教學方法探索與實踐[J].電腦知識與技術(shù),2008(8).
[2]范勁松,黃友初.案例教學法在C語言教學中的系統(tǒng)應(yīng)用[J].鄖陽醫(yī)學院學報,2005(3).
(作者單位:紹興市職業(yè)教育中心)
endprint