為了解決程序設計本身枯燥、難懂的問題,激發(fā)學生學習興趣,很多老師都會精心選擇一些獨特的項目教學,這些項目是來自于實際的應用,在解決實際問題時,有助于培養(yǎng)和發(fā)展學生主動參與,提出問題,分析問題,解決問題,往往獲得較好的教學效果。“系統(tǒng)登陸程序”是我們在信息系統(tǒng)開發(fā)的一個部分,根據(jù)學生知識的掌握程度,將其分為三個階段:
第一階段:簡單“系統(tǒng)登陸程序”的設計
通過大家都熟悉的QQ軟件,引入該項目要實現(xiàn)的基本功能,每次登錄時都需要驗證用戶名和密碼,當輸入錯誤的用戶名或密碼時提示登陸失敗,只有用戶名和密碼匹配時系統(tǒng)登陸成功。
項目實施過程中進行界面設計時,引導學生掌握基本控件屬性的設置,著重介紹密碼文本框password char屬性的設置。
界面設置好后,再編寫程序實現(xiàn)密碼驗證的功能。首先讓學生分析程序運行過程中可能出現(xiàn)的情況,根據(jù)所學知識給出合理的分支,在不同分支中給出相應的信息提示。主要代碼如下:
Private Sub Command1_Click( )
If Text1 = \"admin\" And Text2 = \"888888\" Then
MsgBox \"登錄成功!\"
Else
MsgBox \"登錄失敗!\"
End If
End Sub
程序運行正常,但存在一些功能缺陷。例如:用戶名大小寫區(qū)分,系統(tǒng)登錄次數(shù)無限制等。下面我們對程序作了改進:
定義一個全局變量a,并給出一個初值限定登陸次數(shù)。
Private Sub Command1_Click()
If Trim(LCase(Text1)) = \"admin\" And Text2 = \"888888\" Then
MsgBox \"登錄成功!\"
Else
MsgBox \"登錄失敗!\"
a = a - 1
End If
If a = 0 Then
End
End If
End Sub
第二階段:利用數(shù)組實現(xiàn)“系統(tǒng)登陸程序”
上一階段程序存在用戶和密碼單一且不能修改的問題,結合所學數(shù)組和循環(huán)結構的知識我們將對原有程序進行進一步修改。
程序修改基本思路:利用數(shù)組存放用戶名和密碼,在系統(tǒng)運行過程中可以給數(shù)組重新賦值。系統(tǒng)登錄時從頭至尾遍歷數(shù)組,一旦找到相匹配的用戶名和密碼時則系統(tǒng)登錄成功,若從頭至尾遍歷數(shù)組未能找到匹配的用戶名和密碼則系統(tǒng)登錄失敗一次,累計遍歷三次數(shù)組仍然不能成功則強制退出系統(tǒng)。
項目實施工程進行界面設計時主要增加了“添加用戶”和“修改密碼”按鈕,同時增加了添加用戶窗體、修改密碼窗體和模塊。
界面設置好后,再編寫程序實現(xiàn)密碼驗證的功能。
“添加用戶”主要代碼:
Private Sub Command1_Click()
If Text2 = Text3 Then
For i = 1 To 4
If strName(i) = \"\" And strPass(i) = \"\" Then
strName(i) = Text1: strPass(i) = Text2
Unload Me
Exit For
End If
Next i
Else
MsgBox \" 兩個密碼不匹配!\"
End If
\"修改密碼\"主要代碼:
Private Sub Command1_Click()
If Text1 = Text2 Then
strPass(xiabiao)= Text1
End If
Unload Me
End Sub
\"登錄\"主要代碼
Private Sub Command3_Click()
For i = 1 To 4
If Trim(LCase(Text1.Text)) = LCase(strName(i))
And Text2 = strPass(i) Then
MsgBox \"登陸成功!\"
user = Text1
pass = Text2
xiabiao = i
Exit For
End If
Next i
If i = 5 Then
MsgBox \"登陸失敗!\"
End If
End Sub
程序運行后可以向數(shù)組中添加用戶和修改用戶,可以使用不同的用戶名登陸,但也存在一定的缺陷,如添加的用戶不能保存,登陸系統(tǒng)重啟后數(shù)組又恢復原來的初始值。
第三階段:利用數(shù)據(jù)庫實現(xiàn)“系統(tǒng)登陸程序”
針對第二階段程序的問題,結合所學數(shù)據(jù)庫訪問技術和SQL結構化查詢語言,對數(shù)據(jù)庫表進行操作(增加、刪除、修改)。
第一步,添加標準模塊并設置好名稱;第二步,編寫代碼,首先在工程中添加引用,其次定義從connection對象,定義command對象,并設置該對象的命令(insert、update、select、delete)。系統(tǒng)登陸時在記錄集對象中相應的字段循環(huán)驗證用戶名和密碼,若找到相匹配的用戶名和密碼則系統(tǒng)登陸成功,若循環(huán)一遍從頭至尾未能找到匹配的用戶名和密碼則系統(tǒng)登陸失敗一次,累計登陸錯誤三次強制退出系統(tǒng)。程序在這里就不一一列出。此外,我們還可以進行界面的優(yōu)化、實現(xiàn)記載系統(tǒng)登陸日志等功能。
總之,通過該項目三個階段的實施,由簡單到復雜,由淺入深,逐步深入,讓學生在一步步走向成功的道路上感受收獲的喜悅,學生學習更主動,更容易進入角色,學生隨時開動腦筋解決問題,在項目實施過程中學生真正成為了教學主體,教師起引導作用,項目實施過程充分體現(xiàn)“做中學,學中做”的理念。