梁善禮
摘要:計算思維是信息技術學科極其突出的核心素養之一,最能體現信息技術的學科價值。在《普通高中信息技術課程標準(2017年版)》中,計算思維被確定為四大核心素養之一。從多年教學實踐來看,計算思維培養應是信息技術教學過程中應注重的潛移默化中培養的思維方式。它必然會促進學生在信息社會的適應能力,計算思維的教與學是信息時代的需要,每個學生需要培養計算思維。
關鍵詞:信息技術課;計算思維
一、什么是計算思維
(一)計算思維概念
計算思維是美國梅隆大學周以真教授于2006年提出的:“計算思維是指運用計算機科學的基礎概念進行問題求解、系統設計以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動”。
計算思維是一種建立在計算機科學概念基礎上的思維方式,它不局限于計算機。實質上計算機只是工具,真正的核心是人類借助于計算機強大計算能力求出自己的思考問題的解。而這些問題如何抽象出來,如何轉化成算法,如何自動化運算實現的過程就是計算思維的過程。
計算思維是一種思維習慣和思維品質,依附于問題解決過程,強調抽象概括能力和邏輯思辨能力。
(二)特征
計算思維的本質特征是抽象和自動化。它反映了計算的根本問題,即什么能被有效的自動進行。計算是抽象的自動執行,自動化需要某種計算機去解釋抽象。
計算思維中的抽象完全超越物理的時空觀,可以完全用符號來表示,其中,數字抽象只是一類特例。與數學相比,計算思維中的抽象顯得更為豐富,也更為復雜。數學抽象的特點是拋開現實事物的物理、化學和生物等特性,僅保留其量的關系和空間的形式,而計算思維中的抽象卻不僅僅如此。堆棧是計算學科中常見的一種抽象數據類型,這種數據類型就不可能像數學中的整數那樣進行簡單的相“加”。算法也是一種抽象,也不能將兩個算法簡單地放在一起實現一種并行算法。
抽象層次是計算思維中的一個重要概念,它使人們可以根據不同的抽象層次,進而有選擇的忽視某些細節,最終控制系統的復雜性。在分析問題時,計算思維要求將注意力集中在感興趣的抽象層次或其上下層,還應當了解各抽象層次之間的關系。
計算思維中的抽象最終是要能夠機械的一步一步自動執行。為了確保機械的自動化,就需要在抽象過程中進行精確和嚴格的符號標記和建模,同時也要求計算機系統或軟件系統生產廠家能夠向公眾提供各種不同抽象層次之間的翻譯工具。
(三)計算思維的優點內容
優點:
計算思維建立在計算過程的能力和限制之上,由人將問題抽象然后再交由機器執行。計算方法和模型使我們敢于去處理那些原本無法由個人獨立完成的問題求解和系統設計。
內容:
計算思維中的抽象完全超越物理的時空觀,并完全用符號來表示,其中,數字抽象只是一類特例。
與數學和物理科學相比,計算思維中的抽象顯得更為豐富,也更為復雜。數學抽象的最大特點是拋開現實事物的物理、化學和生物學等特性,而僅保留其量的關系和空間的形式,而計算思維中的抽象卻不僅僅如此,他需要抽象后,找出解決問題的辦法,并通過自動化運行求出解。是一種利用海量數據加工計算,在時間和空間之間,在處理能力和存儲容量之間進行折中的思維方法。
二、生活中的計算思維
【實例】假如公寓樓有4部電梯,你現在正在12樓,準備下樓。當前各電梯狀態為:1號電梯在底樓靜止狀態,2號電梯在24樓向下行,3號電梯在11樓向上行,4號電梯在16樓向上行。請思考,最好的電梯安排是讓幾號電梯接你。
【分析】很多人想到的是讓靜止的1號電梯上來接人,但這不是最優方案,因為經濟成本不劃算。電梯運行既要考慮是否為空閑狀態,又要考慮運行成本。還有電梯運行的方向和趨勢。在電梯設置算法時要根據多方面要求進行設計,再判斷出最優方案。同時,也不是離你最近的3號電梯來接你,因為他的趨勢是向上。所以這里最優的方案是讓下行的2號電梯來接人,這樣是成本最劃算的。
這反映到計算機中,就是利用數據結構的棧和隊列等原理來實現,通過貪心算法等進行處理后,得出最優方案,指揮電梯工作。
這個實例問題的解決就是運用計算思維解決問題的方式,其思維過程實質就是將問題抽象描述出來,再將問題解決方案通過計算機運算表達出來。
三、培養計算思維實踐
在高中信息技術教學的二十余年的實踐中,特別是開展編程及EXCEL等數據處理類軟件教學中,深刻體會到計算思維對學生帶來的潛在影響。創新教學策略,其本質是運用計算思維的基本方法進行問題求解、系統設計和理解他人行為,解決生活和學習中的實際問題。
下面是我教學實踐中的一個案例,探索運用計算思維求解問題的三個步驟:描述問題,組織數據;抽象數據類型,尋找自動化方案;實施自動化方案,解決問題。逐步實現計算思維的潛移默化的影響和作用。
【案例】某單位需要統計實發工資。工資分為兩部分,固定收入部分,變化的支出部分。工資高于5000元的還要上個人所得稅,最終算出結果,并給出上報統計表。根據問題描述,幫助該單位會計做上報統計表。
【思路分析】嘗試讓學生運用“任務驅動”方式和“項目教學”方式去“分析問題”和“解決問題”,應用于解決問題的具體實踐。
(一)描述問題,組織數據
第一步是根據現實問題描述,合理組織數據,首先將復雜問題化簡,轉化為子問題。第一步,建立上報統計表的表頭,第二步,獲取工資表中固定收入工資信息;第三步,導入及輸入變化的支出部分;第四步,利用函數及公式自動統計實發工資。
(二)抽象數據類型
根據常規解決問題步驟,分析:從計算機解決問題的角度理解,需要獲取哪些計算機能自動執行的必要數據?也就是對常規問題的步驟進行模型抽象,找出自動化執行的本質性操作。引導學生分析和列舉哪些計算機工具可實現操作的有序步驟(計算算法思想)。具體如下:
【表頭創建】選用EXCEL作為工具,新建工作薄,制作表頭,表頭包含工號、姓名、日期、崗位工資、基礎績效、薪級工資、保留津貼、公積金等。
【計算】實發工資=崗位工資+基礎績效+薪級工資+保留津貼等
【篩選】篩選出工資大于5000的記錄,并計算出個人所得稅。
(三)實施自動化方案,解決問題
建立完整的表格形勢,并對變化項目進行自動計算,由此得出最終結果。每月只需要改變變化的數據,EXCEL即給出實發工資。
四、計算思維在教學中的價值
計算思維的提出為信息技術教學提供了思路,也為高中信息技術課程指明了方向,也意味著信息技術不是單一的應用工具學科。它培養學生具備現代信息社會所需要的計算思維能力,正如語文培養語言能力和文學素養,數學和物理培養邏輯思維和空間想象能力,英語培養語言能力一樣,計算思維是信息技術學科教學的核心價值所在。計算思維可以讓學生以一個多元化的視角理解信息世界,解決信息社會面臨的問題。同時也是培養學生具備適應人工智能時代的能力。
參考文獻:
[1]培養計算思維的高中信息技術樣本課程研究曹曉明安娜
[2]培養計算思維的教學策略與創新實踐張長水
[3]高中信息技術課程蘊含的計算思維分析張學軍郭夢婷李華