黃 蔚 王朝暉
摘要:本文針對當(dāng)前中小學(xué)已開設(shè)信息技術(shù)課程的現(xiàn)狀,提出了在非計算機專業(yè)開設(shè)“網(wǎng)頁程序設(shè)計”課程,部分替代與中小學(xué)課程內(nèi)容重復(fù)的“計算機應(yīng)用基礎(chǔ)”的新思路,給出了“網(wǎng)頁程序設(shè)計”課程的教學(xué)內(nèi)容設(shè)置,并對在非計算機專業(yè)中如何因材施教及有效地組織教學(xué)進行了探討。
關(guān)鍵詞:ASP;網(wǎng)頁程序設(shè)計;計算機文化;教學(xué)改革
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:B
1概述
當(dāng)前,我國非常重視信息技術(shù)的教育,從小學(xué)三年級直至高中二年級均開設(shè)信息技術(shù)課程。盡管各年級學(xué)習(xí)的內(nèi)容有所重復(fù),但深度逐年遞增,主要的學(xué)習(xí)方式是“任務(wù)驅(qū)動”,通過一個個簡單的、生動有趣的案例來學(xué)習(xí)信息技術(shù)的基本知識。表1所示為各年級的主要學(xué)習(xí)內(nèi)容。
進入大學(xué)后,信息技術(shù)依然非常受重視,相當(dāng)多高校開設(shè)了大學(xué)信息技術(shù)課程。然而,大學(xué)信息技術(shù)課程仍以信息技術(shù)基礎(chǔ)和硬件、軟件、網(wǎng)絡(luò)等基本概念及Word、Excel、PowerPoint和FrontPage等常用軟件為主,如表2所示。
由表1和表2可以看出,教學(xué)內(nèi)容不僅在常用軟件的操作上大量重復(fù),而且基本理論,如軟、硬件和網(wǎng)絡(luò)及多媒體知識都有相當(dāng)部分的重復(fù),這就導(dǎo)致大學(xué)生往往不重視信息技術(shù)課程的學(xué)習(xí)。
隨著Internet越來越普及,WWW成為Internet最重要的一種服務(wù),它將數(shù)以萬計的信息以超文本形式存放在網(wǎng)頁,即Web中,通過圖形界面給網(wǎng)絡(luò)用戶提供了快速查找信息的服務(wù),成為Internet上最受歡迎、最為流行的信息檢索服務(wù)系統(tǒng)。網(wǎng)頁設(shè)計不僅僅是對靜態(tài)頁面的設(shè)計,還常常使用動態(tài)網(wǎng)頁設(shè)計技術(shù),跟數(shù)據(jù)庫等后臺技術(shù)結(jié)合起來,發(fā)揮Web的強大功能,因此,社會上對網(wǎng)站開發(fā)人才需求量很大。以往,建立功能完備的網(wǎng)站只有計算機專業(yè)的專門人才才能勝任,現(xiàn)在很多中小企業(yè)的網(wǎng)站建設(shè)常常由業(yè)務(wù)人員兼任,因此,許多非計算機專業(yè)也要求學(xué)生掌握一定的網(wǎng)絡(luò)編程技術(shù)。因此我們認(rèn)為,在非計算機專業(yè)開設(shè)“網(wǎng)頁程序設(shè)計”課程是一種新的趨勢。
作為江蘇省省屬重點綜合性大學(xué)和國家“211工程”重點建設(shè)高校,蘇州大學(xué)已經(jīng)在二級獨立學(xué)院文正學(xué)院嘗試開設(shè)“網(wǎng)頁程序設(shè)計”課程,分成文科生和理科生兩大類別,取得了不錯的效果。其中在文科生中開設(shè)的是選修課,主要為了拓展學(xué)生的思維視野,培養(yǎng)他們的綜合素質(zhì),并在一定程度上提高他們的就業(yè)競爭力;而在理科生中開設(shè)的課程可以是必修課,用以替換原來的計算機應(yīng)用基礎(chǔ)。
2課程設(shè)置
盡管網(wǎng)頁程序設(shè)計與通常的程序設(shè)計有較大區(qū)別,但動態(tài)網(wǎng)頁中經(jīng)常用到的腳本語言與一般的程序設(shè)計語言有很多相似之處,并且不需要很復(fù)雜的算法,學(xué)生可以通過對這些腳本語言的掌握初步了解程序設(shè)計的一般方法,加深對算法設(shè)計的理解。
網(wǎng)頁程序設(shè)計時通常要用到數(shù)據(jù)庫,雖然“計算機應(yīng)用基礎(chǔ)”包括了數(shù)據(jù)庫及軟件開發(fā)部分,但學(xué)生無法真正理解它們的應(yīng)用。學(xué)習(xí)動態(tài)網(wǎng)頁設(shè)計之后,通過簡單的網(wǎng)站設(shè)計,學(xué)生可以真正體會到如何進行軟件開發(fā)和數(shù)據(jù)庫設(shè)計。
Web是Internet的主要構(gòu)成部分,通過對網(wǎng)頁的設(shè)計,學(xué)生可以進一步理解HTTP、FTP、C/S、B/S等諸多網(wǎng)絡(luò)知識。因此,網(wǎng)頁程序設(shè)計課程將有助于學(xué)生理解計算機文化中的網(wǎng)絡(luò)。
綜上所述,用網(wǎng)頁程序設(shè)計課程替換“計算機文化”,不僅可以加深學(xué)生對計算機軟硬件、網(wǎng)絡(luò)和Internet、多媒體等概念的理解,也有助于提高他們在系統(tǒng)開發(fā)方面的實踐能力。根據(jù)學(xué)生的基礎(chǔ)及企業(yè)信息化建設(shè)的實際需求,在設(shè)置網(wǎng)頁程序設(shè)計課程的教學(xué)內(nèi)容時,我們主要安排了如下內(nèi)容,如表3所示。
Web基礎(chǔ)部分主要讓學(xué)生了解Internet以及WWW的工作原理,以便繼續(xù)后續(xù)內(nèi)容的學(xué)習(xí)。該部分重點要掌握HTML和CSS,因為網(wǎng)頁是用HTML來表示的,而為了將精力更多地投入到內(nèi)容,而非外觀的設(shè)計,也需要有CSS的協(xié)助。
VBScript基礎(chǔ)重點講授腳本語言有VBScript,目的是學(xué)習(xí)通過在HTML中嵌入腳本來控制網(wǎng)頁中運行在客戶端的代碼部分。通過編寫過程化的代碼(包括子程序或函數(shù)),能夠?qū)崿F(xiàn)在網(wǎng)頁上控制顯示內(nèi)容,而文檔對象模型DOM是VBScript的擴展部分,提供了大量的對象,如Window、Screen、Frames、History、Navigator、Location、Scripts、Document、Link、Anchors、Forms等,通過對這些對象的屬性設(shè)置或調(diào)用提供的方法,可以實現(xiàn)更為強大的功能。由于時間關(guān)系,教師不可能對每個對象進行全部介紹,只能有重點地選取最常用的Window和Document對象講解面向?qū)ο蠹夹g(shù),掌握了對象的概念后,學(xué)生在將來的實際應(yīng)用中可以查閱相關(guān)資料,實現(xiàn)更多功能。
ASP初步及ASP內(nèi)置對象與組件主要包括運行在服務(wù)器端的ASP程序,即ASP的基本概念、運行環(huán)境以及ASP代碼的語法特點等。而ASP的強大功能主要是由內(nèi)置的6個對象和一些組件來實現(xiàn)的,通過這些對象的學(xué)習(xí),結(jié)合一些簡單實例,如聊天室、網(wǎng)站計數(shù)器等,學(xué)生可以掌握有效地利用ASP進行網(wǎng)頁編程。
Web數(shù)據(jù)庫應(yīng)用技術(shù)包括數(shù)據(jù)庫的基本概念、在桌面型數(shù)據(jù)庫Access中建表、查詢以及SQL語句。Web數(shù)據(jù)庫程序設(shè)計重點介紹在ASP中利用ADO組件操作數(shù)據(jù)庫,包括用Connection對象連接數(shù)據(jù)庫的方法、用Command對象執(zhí)行數(shù)據(jù)操作、用RecordSet控制數(shù)據(jù)等。
通過對該門課程的學(xué)習(xí),學(xué)生不僅進一步加深了對信息技術(shù)相關(guān)概念及原理的理解,同時在網(wǎng)頁程序設(shè)計和網(wǎng)站建設(shè)的過程中,增強了實踐動手能力,提高了學(xué)習(xí)興趣。
3教學(xué)方法
在教學(xué)過程中,由于對文科生和理科生的教學(xué)目的不同,所以教學(xué)的側(cè)重點也不同。文科生選修網(wǎng)頁程序設(shè)計的多是新聞、廣告、外語、漢語、城建等專業(yè)的學(xué)生,這些學(xué)生有不同的興趣愛好,比如廣告專業(yè)一般都喜歡藝術(shù),因此在教學(xué)時可以多使用圖文并茂的網(wǎng)頁,甚至可以在上機實驗時指導(dǎo)學(xué)生利用Photoshop、Fireworks以及Flash等工具制作出美觀的圖片和動畫,提高他們在廣告設(shè)計方面的才能;而新聞和漢語言專業(yè)都比較重視文字,教師可以在布置上機實驗作業(yè)時要求學(xué)生建立一個新聞頻道,內(nèi)容可以是關(guān)于學(xué)校或院系發(fā)生的事情??傊?對文科生的不同專業(yè)學(xué)生授課時,盡量結(jié)合他們的專業(yè)特點,兼顧他們的興趣,強調(diào)擴充他們在計算機信息技術(shù)領(lǐng)域的知識面以及掌握實用工具的能力,使他們初步具備設(shè)計簡單網(wǎng)頁的能力。
另外,由于選修課的課時較少,教學(xué)內(nèi)容又較多,教師無法對每一個知識點作詳細(xì)闡述,因此多采用案例教程的方式,盡量使用一個個小例子教會學(xué)生建立網(wǎng)站。在講授中,淡化腳本語言的語法,不拘泥于算法,更強調(diào)學(xué)生的自學(xué)能力,要求他們利用Internet等現(xiàn)代工具,從網(wǎng)上獲取已有的源代碼,提高代碼的復(fù)用性,通過分析這些代碼建立自己的網(wǎng)站。圖1是某文科生設(shè)計的同學(xué)錄主頁界面。
對理工科的學(xué)生,要強調(diào)知識的理解和綜合運用能力,可以適當(dāng)?shù)丶訌妼φZ法的要求,使他們掌握一些常用的算法。但需要注意的是,不能把網(wǎng)頁程序設(shè)計等同于普通的程序設(shè)計課程,過分強調(diào)了算法的要求,而應(yīng)該把重點放在綜合運用腳本控制客戶端或服務(wù)器端的程序運行上。由于ASP是運行在服務(wù)器端的一種文件,因此教師重點講授的內(nèi)容是ASP內(nèi)置的6大對象,對數(shù)據(jù)庫只作簡單介紹,僅僅要求學(xué)生能自行設(shè)計并建立數(shù)據(jù)庫,能夠利用ADO組件連接數(shù)據(jù)庫并操縱數(shù)據(jù)庫。
以下給出了一個注冊用戶的后臺處理程序register.asp的例子。這段代碼利用request對象,從表單中獲取各項注冊信息,然后連接并打開數(shù)據(jù)庫,查找數(shù)據(jù)庫中是否已經(jīng)存在該用戶名,如果已存在,給出已經(jīng)存在該用戶的提示信息,否則把獲取的信息寫入數(shù)據(jù)庫中,最后關(guān)閉該連接。
該例子很好地說明了ADO編程模型的基本步驟:①連接數(shù)據(jù)庫;②設(shè)置SQL命令;③執(zhí)行SQL命令;④控制數(shù)據(jù)。方法簡單,淺顯易行。
<%
'*****從表單中獲取來自客戶端的注冊信息*****
username1=trim(request.form("username"))
password1=trim(request.form("password"))
realname1=trim(request.form("realname"))
sex1=trim(request.form("sex"))
email1=trim(request.form("email"))
tele1=trim(request.form("tele"))
work1=trim(request.form("work"))
address1=trim(request.form("address"))
postcode1=trim(request.form("postcode"))
qq1=trim(request.form("qq"))
other1=trim(request.form("other"))
'***********創(chuàng)建ADO連接對象**********
Set Cnn=Server.CreateObject("ADODB.Connection")
StrCnn="Dbq=" & Server.Mappath("dbdbc.mdb")
StrCnn=StrCnn & ";Driver={Microsoft Access Driver (*.mdb)}"
Cnn.Open StrCnn ' 打開數(shù)據(jù)庫
'**********設(shè)置查詢用戶名的SQL語句************
sqlstr="select * from user where username='" & username1 & "'"
Set rs=Cnn.Execute(sqlstr) ' 執(zhí)行SQL語句
if not rs.eof then ' 查找結(jié)果不為空
response.write "對不起!你所注冊的用戶已經(jīng)存在!"
response.write "請返回上一頁重新注冊!"
else
'*********設(shè)置插入用戶信息的SQL語句***********
ins="insert into user"
ins=ins & "(username,password,realname,sex,email,tele,work,address,"
ins=ins & "postcode,qq,other)"
ins=ins & " values('" & username1 & "','" & password1 & "','" & realname1 & "','"
ins=ins & sex1 & "','" & email1 & "','" & tele1 & "','" & work1 & "','" & address1 & "','"
ins=ins & postcode1 & "','" & qq1 & "','" & other1 & "')"
set rs=Cnn.execute(ins) ' 執(zhí)行SQL語句
response.write "注冊成功!請返回首頁登錄!" ' 顯示提示信息
end if
Cnn.close ' 關(guān)閉數(shù)據(jù)庫
%>
學(xué)習(xí)網(wǎng)頁設(shè)計的最終目的是能夠建立自己的網(wǎng)站。作為本課程的大型作業(yè),學(xué)生要提交一個完整的同學(xué)錄網(wǎng)站,該網(wǎng)站具有基本功能,如用戶注冊、用戶登錄、用戶信息維護、好友列表、留言板、聊天室等,除此之外,學(xué)生也可以自由發(fā)揮想象,或者參考5460等網(wǎng)站,設(shè)計出更為完善的同學(xué)錄。
4結(jié)束語
本文探索了在中小學(xué)已經(jīng)開設(shè)信息技術(shù)的背景下,大學(xué)非計算機專業(yè)開設(shè)信息技術(shù)課程的教學(xué)理念,提出用網(wǎng)頁程序設(shè)計課程來部分替代計算機文化基礎(chǔ)的新思路,并進一步闡述了課程內(nèi)容的安排和講授方法等,力爭做到因材施教。然而,具體實施中仍存在不少問題,如文科學(xué)生的邏輯思維能力較弱,用腳本編程時無法理解一些算法;整個課程需要掌握的內(nèi)容較多,學(xué)生在編程和數(shù)據(jù)庫應(yīng)用方面要具有較強的綜合應(yīng)用能力;由于教學(xué)時間短暫,學(xué)生無法很深入地掌握網(wǎng)絡(luò)編程的精髓,這些都是今后教學(xué)中需要繼續(xù)解決的問題。
參考文獻(xiàn):
[1] 苗逢春.信息技術(shù)[M].河北:河北大學(xué)出版社,2005.
[2] James F.Kurose,Keith W.Ross.計算機網(wǎng)絡(luò)——自頂向下方法與Internet特色[M].北京:清華大學(xué)出版社,2003.
[3] 徐進華,崔建忠.Web程序設(shè)計教程——ASP[M].蘇州:蘇州大學(xué)出版社,2005.
[4] 趙妮,熊高君.激活課堂氣氛,提升學(xué)習(xí)情趣——談C語言課堂教學(xué)方法[J].計算機教育,2008(12):41-43.