□江蘇省昆山市兵希中學 葉 梓
初中“程序設(shè)計”教學實踐探索
□江蘇省昆山市兵希中學葉梓
【摘要】“程序設(shè)計”是蘇教版《信息技術(shù)》最后一章內(nèi)容,其思維方式和概念是全新的,是一個從感性思維到邏輯思維的過渡,這些都使得這章內(nèi)容呈現(xiàn)出“教師難講學生難學”的特點,需要教師根據(jù)教材和學生實際,探索有效的教學方法。
【關(guān)鍵詞】基本概念設(shè)計界面相關(guān)知識常用語句結(jié)構(gòu)算法
初中“程序設(shè)計”是蘇教版《信息技術(shù)》最后一章的內(nèi)容,也是整個初中階段信息技術(shù)課程的最后一章。新課標要求體驗并初步學會通過程序設(shè)計解決問題的基本過程,以“讀得懂簡單的程序代碼”為目標,其本身理論抽象,程序設(shè)計要求思維靈活;對于初中生來說更加困難,因為其思維方式和概念是全新的,是一個從感性思維到邏輯思維的過渡。這些都使得這章內(nèi)容呈現(xiàn)出“教師難講學生難學”的特點。
本章內(nèi)容與前面幾章注重操作的內(nèi)容相比較,明顯變化是由于程序設(shè)計相對復雜,概念術(shù)語明顯變多變深,要在每周一節(jié)信息技術(shù)課的前提下完全講述概念術(shù)語那是不切實際的,所以不要求學生全面深徹地理解,但必須知曉。因此,可以結(jié)合具體事例,在例子中適時、適量滲透一些相關(guān)的概念,也可以結(jié)合操作過程進行講述,簡明扼要地點到點透。
例如,講解本章第一個概念“程序”時,書本舉了一個獵人帶狼、羊、白菜過河的例子。但實踐下來學生對此幾乎沒有反應,無法引導到“程序”這個概念上,于是我就問“你們都有QQ嗎?”學生情緒馬上上來了,紛紛說有。接著再問學生:“當你們輸入了用戶名和密碼后,點擊‘登錄’就能進入QQ,知道為什么嗎?”有幾個學生想出來,“‘登錄’上有程序”。至此,“程序”的概念引導出來了,順理成章地也把“計算機程序”帶了出來。
信息技術(shù)學習從小學到初二,部分學生對其較有興趣;有的學生既不喜歡又不討厭,只是因為學校的課程安排;還有相當數(shù)量學生的興趣主要是在游戲上而非學習上,更不是
在學習枯燥的VB程序設(shè)計中,不排除他們把信息技術(shù)課當成游戲課的想法。
針對這種種學情,當開始講解程序設(shè)計內(nèi)容時,我從學生感興趣的游戲入手,先讓這部分愛玩的學生講講:你玩些什么游戲?你知道為什么能進行這些游戲嗎?學生的興奮點被激發(fā)出來,多名學生踴躍發(fā)言,答案多種多樣,于是我就話鋒一轉(zhuǎn):“這些游戲都是別人設(shè)計了程序然后供你們使用的,其實你們也能進行類似設(shè)計。”這時,那些愛玩的學生和其他學生一樣,也瞪大了眼想知道是怎么回事。于是我引導學生進入了程序設(shè)計界面Visual Basic軟件,將工具箱中的控件拖拉到窗體中,按鈕、文本框、圖片框都是學生感興趣的內(nèi)容,又喊了幾名學生演示拖拉到窗體內(nèi),順便將復選框、時鐘等需要以后掌握的控件也進行演示拖拉。既很好地完成了本課的內(nèi)容,又分解了接下來的實踐學習“求圓面積程序”和探究學習“求梯形面積程序”的難點,更揭開了相對深奧的程序設(shè)計的神秘面紗,解決了程序界面設(shè)計問題。學生的興趣上來了,學習積極性、探索性提高了。
信息技術(shù)學科特別是程序設(shè)計中有些教學內(nèi)容比較抽象,雖然還不需要初中學生自行編寫程序代碼,但需要學生能理解書本上程序的意思。如對象、屬性、事件、方法、函數(shù)、算法等內(nèi)容不容易被學生接受和理解,教師應將其化繁為簡,在教學中緊貼與學生緊密相關(guān)的生活、學習實例,將深奧的理論講得通俗易懂。
例如,在講解“面向?qū)ο蟪绦蛟O(shè)計”時,我先從學生熟悉的英語單詞著手,讓學生打開代碼窗口的事件列表框,一一尋找與事件有關(guān)的Click、MouseDown、MouseMove、Load等單詞,一一提問學生這些事件的意思。初二學生對這些單詞比較熟悉,那么接下來讓學生對照書本編寫“涂鴉”程序時,由于已化解了程序設(shè)計中的難點,他們就覺得很輕松。
“一個程序是由若干程序行組成,一般一個程序行有一條語句”,突出了程序行的主要組成是語句,語句是程序的靈魂。初中程序設(shè)計涉及到的是一些常用語句,有賦值語句、結(jié)束語句、注釋語句、條件語句、循環(huán)語句等。初中生不會想到這是語句,更難以理解定義符、語句體等概念,所以我在組織課堂教學時,沒有直接講這些語句,而是通過具體事例來認識、理解語句,采用實例作為知識的載體,追蹤學生的興趣和問題,由實例去引導學生發(fā)現(xiàn)、分析和處理問題,進而再達到對語句的學習和理解的目的。
比如Let語句第一節(jié)開頭就出現(xiàn)了,我一直等學生做完第二節(jié)“孫悟空上織女星”,對程序有了一定的感知后,才開始詢問學生:“你覺得這個程序中是不是有什么反復出現(xiàn)?是哪些?”這么一問,學生開始尋找:出現(xiàn)了好幾個Let、Rem、Print?!斑@些都是什么?”于是引申出了賦值語句、注釋語句、顯示語句等概念,然后再認識理解這些語句的定義符和語句體,學生就有了一個相對清晰的概念。
循環(huán)語句的認識又是一個難點,其語句體至少有三行,我也是讓學生做完“紙對折”程序后,結(jié)合實例,與學生一起探討這個程序的構(gòu)成,結(jié)合類比、自然過渡等方法進而認識和理解計數(shù)循環(huán)語句、條件循環(huán)語句。
教學內(nèi)容是有差異的,是循序漸進的,本章最后二節(jié)內(nèi)容分別是算法和結(jié)構(gòu)化程序設(shè)計,對學生的邏輯思維提出了更高的要求。而學生也是有差異的,一學到程序設(shè)計,其兩極分化就會特別嚴重。有些學生對程序設(shè)計特別感興趣,喜歡編程,有時會編出讓教師都驚訝的程序,而有些學生則是根本不愿意學習。
針對這樣的情況,教學中要能夠根據(jù)不同情況,做到有的放矢。例如,可以在課后布置一些必做題和選做題,發(fā)揮優(yōu)秀學生的內(nèi)在潛力;同時,也可以調(diào)動中等學生的學習積極性,還可以挑出優(yōu)秀的學生幫助其他學生。這既遵循了信息技術(shù)學科強調(diào)的團結(jié)合作的精神,又解決了現(xiàn)實問題。
而對于最后二節(jié)內(nèi)容,不宜進行全面教學,比較適宜在課堂教學中引入算法和結(jié)構(gòu)化程序設(shè)計,讓全體學生了解。而具體做法可以是在課后或者興趣小組活動時探討,這樣就激發(fā)了這部分學生對編程語言的興趣,提高了學生信息技術(shù)的應用水平,同時輔導部分學生參加各級信息技術(shù)競賽,進一步深化和補充程序設(shè)計教學內(nèi)容。這樣做既讓學生看到自身的能力,又增強克服困難的信心和勇氣。
由于學生學習時間緊、主科任務重等原因,許多學校往往沒有對初中程序設(shè)計內(nèi)容進行教學實踐,對這章內(nèi)容的教學研究相對更少,而教材也沒有制訂教學方法和必修內(nèi)容,這反而給我們一線信息技術(shù)教育工作者提供了充分發(fā)揮的空間。開展既富構(gòu)造性又具有創(chuàng)造力的教學活動,是廣大信息技術(shù)教師頗感興趣的課題,也是對教師做好教學工作的挑戰(zhàn),我們應探索出適合初中信息技術(shù)教育的教學方法,以適應現(xiàn)代教育。