本站小編為你精心準備了中學生程序設計教學思維研究參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
1程序設計與計算思維
理論思維、實驗思維和計算思維是作為科學思維的方式,共同構成了人類的三大思維。計算思維作不一種早已存在的思維活動,它的出現并不能簡單地認為是一種新的發明,而是,是每一名普通人應該具備的一種技能。因而,在中學信息技術教學中,可以說計算思維是無處不在。在中學信息技術課程中明確地提出“計算思維”,關鍵是要學生將無意識的計算思維變成有意識的計算思維,主動地用計算思維去解決問題,應用在各自的專業中。同時,還可以讓更多的中學生能夠主動地、習慣地找到利用計算機解決問題的辦法,并且形成主動使用計算機解決問題的思維能力。因此,計算思維除了能解答現時信息技術課程的困惑外,還對課程的內涵,學生的學習目標提出了更深刻的要求。我們也需要認識到,計算思維與算法思維是有區別的。計算思維應該成為中學生具備的基本能力,因為在可以預見的未來,更多的創新、更多的生活上變革都會來自于計算思維,計算思維將成為青年人立足社會、生存與發展的重要能力。而算法思維只是計算思維的一種,掌握計算思維不應只學習編程,還要學習在多個層次的抽象思維[5],但是學生可以透過學習編程較好地理解和掌握計算思維。
2.1教學內容的調整為達成總體的教學目標,程序設計的教學內容需要得到擴充。在初中階段,學生應該能理解程序設計的基本思想、基本方法和程序設計三種基本結構,了解一維數組的使用及枚舉算法的作用。高中階段,結合《數學》課本中《算法初步》的內容,學生應在理解流程圖的基礎上,寫出輾轉相除、冒泡排序、直接排序、進制轉換等相對抽象的程序代碼,具備在一定編程環境中調試程序的能力。在學習選修模塊方面,學生應能了解子程序的作用、了解遞歸的概念和使用方法。對于力所能及的學生,應能編寫更多的能模擬實際問題的程序代碼。在教學內容的編排上,應該拋棄以往以知識點為主線編排內容的辦法,而是以一個個互相聯系又可以獨立的問題序列,引導學生分析、模擬、解決問題。下面以“小明的網店”為線索為例說明。項目一:初開網店。問題概括:小明為幫助家鄉的果農打開銷路,在網上開啟了一間網店;項目要求:假定網站暫時只賣一種水果,設定水果的單價,及每筆運費,根據購買者輸入的數量計算出每筆購買的費用。教師引導學生把水果的價格、數量、運費、總價抽象成變量數據;使用輸入輸出語句及表達式處理相關信息(變量數據);最后引導學生理解變量、輸入輸出及表達式的概念。項目二:遭遇競爭。問題概括:同類型的網店,向消費者做出買滿150元打九折和買滿100元免運費的促銷活動。從這個項目開始,要求學生分小組根據自己過往的經驗,提出應對的辦法。這種情況下學生通常提出這樣的方法:(1)做出同樣的促銷活動;(2)為避免惡性競爭,應該在不虧本的情況下,進行價格競爭。教師由此引導學生找出項目二與項目一的區別,建立分支結構模型,讓學生觀察流程圖,比較輸入輸出的數據,理解邏輯表達式的作用;使用分支語句及邏輯表達式處理相關信息,加深對程序邏輯思維的理解。項目三:籌劃未來。問題概括:經歷一次價格競爭,網店堅持下來,小明需要為網店的未來發展籌劃;經過學生小組討論,學生大概會提出增加銷售種類、控制成本、廣告宣傳等方法。教師應鼓勵學生的各種想法,并把一些簡單可行的想法設計成計算機可以執行的程序,例如控制成本和廣告宣傳的方法。我們可以給予學生各種成本的數據,包括人員平均薪酬,每月水、電費,水果的成本,一次性投資(購買電腦和網店保證金)等等;也可以給出水果售價和手機平臺推送消息對銷售情況影響的數據,例如按月計算售價每降低10%,就會提高15%的銷售額,每月使用成本的10%做微信推送費,可以提高12%的銷售額等等。然后引導學生從這些問題中,提取出(抽象)出相應的數學模型,形成變量、表達式和運算結構,先是要求學生計算最低售價和回本時間,制作一個計算水果最低售價的軟件及有關宣傳及利潤關系的計算程序,并生成可執行文件,代替人工計算。在這個項目中,開始體現計算對現代生活的重要性,重點是讓學生開始完整地體會使用計算思維的全過程,即“能行—抽象—模擬—設計—自動化”的過程,并且了解在信息時代,數據和信息也是重要的資產和財富。項目四:挖掘信息;問題概括:網店已經運營了一年,掌握了大量信息,例如客戶的購買情況,“粉絲”的數量,好評率等等。我們應該如何運用這些信息?仍然要求學生先自行尋找方案,引導學生把一些可行的想法設計成計算機可以執行的程序。例如:(1)分析每天的購買情況,得出每個時段的購買情況,從而安排“店小二”的上班時間;(2)遍歷一遍所有“粉絲”,找出“大客戶”,安排人員跟蹤服務;(3)根據四個季節種類水果的銷售情況和倉庫容量,設計出可行的每種水果的最小庫存量和最大庫存量;(4)根據“粉絲”數量和銷售情況,計算出每產生一位“粉絲”所需的成本,和“粉絲”每日的購買率,定出未來發展藍圖。繼續從“能行—抽象—模擬—設計—自動化”的過程引導學生解決這些問題,從而讓學生學習循環結構、枚舉法、輾轉相除法(最大公約數、最小公倍數)的使用。項目四的重點是引導學生體會通過計算思維加工信息,可以創造出新的價值。以上的每一個項目都是較為開放的主題內容,學生根據老師的引導,把問題模型抽象成算法描述,然后形成程序達到自動化,通過計算思維體會從“具體—抽象—具體”的過程,深切體會到計算機學科獨特的思維對社會生產帶來不可替代的貢獻。
2.2教學方式的調整以皮亞杰為代表的心理學家認為:思維是不可直接教的,而需要在生活中領悟和積累。而計算思維則是解決問題的思維方法,信息處理的過程即利用計算機特點求解問題的過程。由此可見,以編程為載體的計算思維教學不應再著重傳授知識點和處理信息的方法,而應以問題為引導展開教學線索,并以問題的解決最終目的,讓學生多參與實踐活動,通過判斷和推理找到有效的思維方法,從而理解計算機學科獨特的思維方式,理解計算思維對信息時代科技革新的推動作用,形成學習計算機科學創造美好生活的愿望。
2.3教學實踐的反思程序設計的必經階段包含調試編譯。而計算思維中也有使用容錯、糾錯的方式幫助保護系統和編譯,它們都有從時間、空間的消耗考慮,提出更高效算法的要求,其目標都是使解決方案或程序以螺旋上升的狀態不斷完善。同樣地,以計算思維為核心的程序設計教學也需要呈現這種過程,只是對象變成了教學的主體——學生。及時地反饋和評價可以幫助我們實現這個過程。評價可以在教學的各個階段發生,評價的實施者可以是老師,也可以是小組;可以是量性客觀評價(例如程序的時間、空間復雜度),也可以是主觀評價(例如是代碼的易讀性、創造性和友好的界面等等)。這些評價都在促進螺旋上升的過程,幫助學生在良好的科學探索氣氛下得到更全面的發展。調整后的學習內容是由幾個開放的結構單元組成,學生除了學習程序設計知識外,也要從中形成解決方案。他們可以使用不同的數據結構、算法,編寫不同的程序代碼;也可以從不同的角度,用不同的觀點形成解決方案。教師要鼓勵學生們存在不同的認知,不同的觀點,鼓勵思維的多樣性。
3結語
雖然學習程序設計不是培養計算思維的唯一途徑,但是作為計算機科學最本源的一門課程,它的諸多理念、思維和算法仍然是現代科技發展的基礎,并沒有隨著時展而被拋棄。中學生可以在學習程序設計的過程中,理解計算思維的本質和內涵,為終身發展打下堅實的基礎。
作者:梁健 單位:廣州市越秀區少年宮