黃靜 段濤
摘? 要: 隨著大數據和智能化的推進下,計算思維的力量被加速地放大,在計算機基礎課程中,僅僅掌握對計算機基礎的應用技術已經遠遠不夠,選擇Python為非計算機專業學生提供信息化時代的交流工具,通過學生自主學習探索、課程講授引導、課程學習反饋,有效培養學生的計算思維,為應對和參與醫療信息化和智能化做好鋪墊。
關鍵詞: 計算思維;有效培養;計算機程序設計課程
中圖分類號: TP3-05? ? 文獻標識碼: A? ? DOI:10.3969/j.issn.1003-6970.2020.10.068
本文著錄格式:黃靜,段濤. 計算機程序設計課程中有效培養學生計算思維的研究與探索[J]. 軟件,2020,41(10):268269+281
【Abstract】: With the advancement of big data and intelligence, the power of computing thinking is accelerated to enlarge. In the basic computer courses, it is not enough to only master the application technology of computer foundation. Python is chosen to provide the non computer major students with the communication tools in the information age. Through students independent study and exploration, course teaching and guidance, and course learning feedback, students computing thinking can be effectively cultivated, which paves the way for coping with and participating in medical informatization and intelligence.
【Key words】: Computational Thinking; Effective training; Computer programming course
0? 引言
計算思維在2006年由美國科學家周以真教授提出,指人在利用計算機科學的思維方式來解決問題的思維活動。作為一項必備技能,計算思維是培養學生學會解決問題的思路和方法,是為數字中國培養人才的必要環節。計算機程序設計是培養學生計算思維的關鍵課程,創新教學方式方法,強化對學生計算思維的培養,提升學生的學習能力和專業素養,是課程改革的大勢所趨。
1? 計算思維是計算機基礎教育的核心任務
2010年7月西安交通大學舉辦了首屆“九校聯盟(C9)計算機基礎課程研討會”,陳國良院士作了“計算思維能力培養研究”的報告,并主持了該專題的討論。同時,在《九校聯盟(C9)計算機基礎教學發展戰略聯合聲明》中提出:旗幟鮮明地把“計算思維能力的培養”作為計算機基礎教學的核心任務[1]。
2012年教育部高教司設立了以計算思維為切入點的“大學計算機課程改革項目”。2013年5月中旬,教育部高等學校大學計算機課程教學指導委員會針對在高校計算機教育中加強計算思維的研究和教育進行了深入的討論,并在此發表旨在大力推進以計算思維為切入點的《計算機教學改革宣言》,旨在通過培養學生計算思維的意識和方法,提高計算機應用水平[2]。
計算思維古已有之,可追溯到二十世紀五十年代,與理論思維、實驗思維共同構成了人類的三大科學思維,但是相對于理論思維在數學中和實驗思維在物理學中的培養和應用來說一直以來計算思維不為人所知,直到2006年,美國卡內基·梅隆大學(CMU)的周以真教授,發表了題為Computational Thinking 的文章, 清晰系統地闡述了建立在計算機處理能力及其局限性基礎之上的思維方式——計算思維,將計算思維引入了人們的視線[3]。
一直以來教師們在計算機教學中都無意識的應用著計算思維,但并未對計算思維的培養和考核進行過系統化思考,伴隨著以計算機科學為基礎的信息技術的迅猛發展,計算思維的力量被加速地放大,了解、學習、掌握和應用計算思維去解決與自己專業相關的信息技術問題是非計算機專業學生迫切需要面對的問題。
2? 計算機基礎教育現狀
長期以來高校的計算機基礎教育課程理論內容主要包括數字化世界、計算機硬件的組成、計算機軟件家族、操作系統、計算機網絡、數據庫與多媒體技術等內容,實踐內容主要包括操作系統的應用、辦公軟件的使用、數據庫的使用和多媒體制作等內容[4]。
在大數據時代邁向智能化時代的背景下,對于大學生來說計算機基礎的應用技術已經遠遠不夠,未來的工作中在對大數據進行分析、呈現和應用的情況下,在與大量的智能體進行交流和合作的情景下,對于非計算機專業的人來說編程語言是一個重要的交流工具[5]。高校目前針對編程語言的教學主要圍繞著C語言、C++、C#、VB、Java等,作為非計算機專業的初學者比較有難度,而Python從誕生之初就被譽為最容易上手的編程語言,Python入門快、功能強大、高效靈活的特點,無論是想進入數據分析、人工智能、網站開發、網絡安全、集群運維這些領域,還是希望掌握第一門編程語言,都是很好的起點[6]。
在綜合了解了高校計算機基礎課程的現狀前提下,結合我校學生學情,引入了計算機程序設計課程(python)作為計算機基礎課程選修課程,在鋪墊了計算機知識、能力、素質的前提下,提升非計算機專業學生應用計算機解決問題的能力與水平。
3? 計算機程序設計課程中計算思維培養存在的問題
目前在計算機程序設計課程中,重視培養學生的算法思維,在掌握python語言基本的編寫規則的前提下,撰寫針對具體問題的一系列詳細指令。算法思維是計算思維的一部分,強調在對問題的抽象分析前提下,用python指令來解決問題。但是,計算思維的培養存在如下問題:
(1)計算思維的培養尚未形成體系,在日常教學的過程中,都有運用到計算思維,但是沒有對計算思維做一個系統的思考研究并且推廣于實際教學中,切實提高學生運用計算機解決實際問題的能力。
(2)對計算思維的重要性認識不足,將對學生的培養停留在掌握python語言的工具層面,未能提升到學科的思維層面,計算思維的教學引導欠缺。
(3)教學模式單一,教師主導的課堂,在激發學生學習的積極主動性上不足,為將計算思維有效融入在教學中,教學內容和教學案例的選擇上需要再思考[7]。
(4)在18學時的授課時間內,對課程體系的把握不夠精煉,作為計算機基礎課程,面向不同專業背景的學生,面向不同計算機基礎的學生,應對不足。
(5)大部分同學的思維仍舊停留在把計算機當作工具用即可,僅僅了解學習計算機的基本知識、基本操作,在python語言的學習過程中停留在把代碼抄寫正確能夠運行即可的目標上,不求甚解。
4? 基于計算思維有效培養的教學改革
在18個學時的授課中精簡課程體系,教學內容包括Python語言基本語法、算法的基本結構、函數和簡單第三方庫的使用,在對Python語言第三方庫的應用中啟發學生解決實際醫學相關專業問題能力。
4.1? 學生自主學習探索
通過課程資源網站發布學習資源、學習任務和目的,讓學生通過視頻資源或推薦閱讀,在課前進行相關內容的學習,比如Python語言的基本語法結構的學習,并對教師提出的問題進行思考和回答,對課程的講解進行鋪墊,將教師從基礎性知識的教學中解放出來,提升課堂效率;讓學生在課后對課堂上的講解進行消化并完成課程任務,以小組合作或個人獨立完成的形式進行問題選擇、調研和解決,激發學生獨立思考,同時培養學生自主解決問題的能力。
4.2? 課程講授引導
算法思維的講授培養學生的計算思維,Python課程的講解面向非計算機專業學生,課程學時有限,學生基礎薄弱,算法思維的講解選擇哪些內容如何推進是培養學生計算思維的重難點工作。在課程的進行中,采取案例教學,選取綜合性、趣味性、探究性的教學案例,選取與學生專業相關的案例,將算法思維的講解通過案例呈現給學生,讓學生通過案例了解到,面對問題如何分析建模優化求解的過程,是對算法思維講解潤物無聲進行推進的過程。
計算思維是對問題進行拆解、分析建模、抽象為算法并解決問題的過程[8]。計算思維包含算法,但不僅僅是算法。它包含有對要解決問題的分析,在一開始要對問題有詳細確切的了解;在此基礎上構建基本的物理模型或模式并建立數學模型;然后才是選擇計算方法確立算法最后解決問題。計算機程序設計課程中計算思維的有效培養,將傳統的計算機程序設計課程從側重算法提升到計算思維的培養,提升了課程教學的廣度和深度,課堂的重點放在通過討論,通過對典型案例的分析,讓學生掌握問題的重點和關鍵詞,從多方面探討問題求解的方式,在分析求解的過程中,讓學生逐漸掌握計算思維解決問題的流程和方式方法,為以后自己專業的信息化改革做好知識儲備,也為以后融入和引領醫療的信息化改革和醫療的智能化改革做好鋪墊。
4.3? 課程學習反饋
課堂時間緊湊,通過課前課后的反饋,有問題實時提出,集中解決。學生可以通過釘釘或者微信,提出自己在學習過程中疑惑和有困難的問題,教師集中解決。為了提升學生學習的積極性,教師將學生做的案例放到釘釘或者微信群中,讓學生一起來研討,總結糾正代碼編寫中的問題和錯誤,共同推進問題的解決。同時將優秀的代碼呈現出來,讓學生體會簡潔高效代碼的編寫,相互學習,促進高效編程。
5? 結語
社會信息化不斷向縱深發展,各行各業的信息化進程不斷加速。計算機程序設計課程順應了當前計算思維的發展趨勢,踐行了計算機基礎課程教學基本要求,滿足了不同層次不同專業同學對提升計算機知識結構的要求,推動了計算機基礎課程的可持續發展。
在對計算機程序設計課程講授的過程中,將對知識的講授目的從掌握技術提升到熟練思維,探索用系統的計算思維作為理論化背景引導教學實踐,為計算思維的培養研究拋磚引玉。
參考文獻
[1]九校聯盟(C9)計算機基礎教學發展戰略聯合聲明[J]. 中國大學教學, 2010(9): 4+9.
[2]教育部高等學校大學計算機課程教學指導委員會. 計算思維教學改革宣言[J]. 中國大學教學, 2013(7): 7-10.
[3]范文翔, 張一春, 李藝. 《國內外計算思維研究與發展綜述》[J]. 遠程教育雜志, 2018(2): 3-15.
[4]諶文芳, 高海波, 諶興宇. 面向計算思維的大學計算機基礎課程教學內容改革[J]. 課程教育研究, 2017(51): 242-243.
[5]陳萱華, 楊玲. 計算機教學中計算機思維能力的培養[J]. 公安海警學院學報, 2019, 18(3): 29-33.
[6]楊春麗, 邢英俊. 計算機應用與計算思維關系探討[J]. 信息與電腦(理論版), 2017(3): 254-256.
[7]徐瑾. PBL教學模式下的計算思維培養教學策略實踐及思考分析[J]. 學苑教育, 2020(16): 84.
[8]張文蘭, 閆怡, 劉盼盼. 教育者計算思維教學能力及其發展路徑——美國ISTE《教育者標準:計算思維能力》解讀與啟示[J]. 中國遠程教育, 2020, 41(7): 60-68.