鄧紅
關(guān)鍵詞:計(jì)算思維;Python語(yǔ)言;高職;抽象
現(xiàn)代社會(huì)新技術(shù)不斷涌現(xiàn),如物聯(lián)網(wǎng)、人工智能、區(qū)塊鏈、云計(jì)算等,新技術(shù)推動(dòng)著社會(huì)進(jìn)步,社會(huì)的方方面面發(fā)生著深刻的變革,新技術(shù)提高了社會(huì)的整體效率、推動(dòng)了各行業(yè)的發(fā)展進(jìn)程。新技術(shù)在改變社會(huì)的同時(shí),也影響著社會(huì)中的每一個(gè)人,新技術(shù)讓人們的生活更加便利、學(xué)習(xí)更加從容。人們?cè)谙硎苄录夹g(shù)帶來(lái)各種便捷的同時(shí),也必須掌握相應(yīng)的本領(lǐng)才能駕馭各種新技術(shù),迎接新技術(shù)帶來(lái)的挑戰(zhàn)。計(jì)算思維(Computational Thinking,CT) 是一種思維方式,是利用計(jì)算科學(xué)的基本理念和方法,結(jié)合工程思維、數(shù)學(xué)思維等多種思維方式,進(jìn)行問(wèn)題求解、系統(tǒng)建構(gòu)和人類行為理解的思維過(guò)程[1]。現(xiàn)在的大學(xué)生,尤其是理工科學(xué)生,基本都會(huì)學(xué)習(xí)一到數(shù)門編程語(yǔ)言,學(xué)習(xí)編程語(yǔ)言的目的是解決實(shí)際問(wèn)題,如果學(xué)生擁有較好的計(jì)算思維,將會(huì)大大提高解決問(wèn)題的效率。
1 相關(guān)研究現(xiàn)狀
1.1 計(jì)算思維相關(guān)研究現(xiàn)狀
2006年,美國(guó)卡內(nèi)基·梅隆大學(xué)周以真教授[2]首次提出“計(jì)算思維”,即利用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念來(lái)解決問(wèn)題、設(shè)計(jì)系統(tǒng)、理解人類行為等的思維和能力。計(jì)算思維不僅對(duì)計(jì)算機(jī)科學(xué)具有很高的價(jià)值,也是學(xué)生必須具備的基本素養(yǎng)和能力[3]。2013年,英國(guó)南安普敦大學(xué)的Cynthia Selby和John Woollard兩位博士指出計(jì)算思維由算法思維(Algorithmic Thinking)、評(píng)估(Evaluation)、分解(Decomposition)、抽象(Abstraction)、概括(Generalization)等要素組成[3]。2010 年在西安交通大學(xué)舉辦的首屆“九校聯(lián)盟計(jì)算機(jī)基礎(chǔ)課程研討會(huì)(C9) ”的會(huì)后聲明中提出:高校計(jì)算機(jī)基礎(chǔ)教育階段的首要任務(wù)是培養(yǎng)大學(xué)生的計(jì)算思維能力;國(guó)內(nèi)學(xué)者對(duì)計(jì)算思維進(jìn)行了許多卓有成效的研究[4-6]。
計(jì)算思維的特點(diǎn)是抽象化和自動(dòng)化,并不等同于計(jì)算機(jī)編程,而是人類求解問(wèn)題的一條途徑,因此每個(gè)人都應(yīng)該具備計(jì)算思維。
1.2 國(guó)內(nèi)高校培養(yǎng)學(xué)生計(jì)算思維模式
目前,國(guó)內(nèi)高校針對(duì)計(jì)算思維的研究,主要集中在以C語(yǔ)言、Java語(yǔ)言、Python語(yǔ)言、計(jì)算機(jī)基礎(chǔ)的教學(xué)中進(jìn)行[7-9],一般情況下,老師首先講解程序設(shè)計(jì)語(yǔ)言中的語(yǔ)法和基礎(chǔ)知識(shí),再學(xué)習(xí)各類語(yǔ)句和結(jié)構(gòu)。但是由于大部分學(xué)生是首次接觸程序設(shè)計(jì)語(yǔ)言,不太容易理解程序設(shè)計(jì)語(yǔ)言中的語(yǔ)法和基礎(chǔ)知識(shí),導(dǎo)致后續(xù)學(xué)習(xí)變得困難。國(guó)內(nèi)部分學(xué)者將C語(yǔ)言、Java語(yǔ)言中復(fù)雜知識(shí)點(diǎn)抽象為現(xiàn)實(shí)世界中的元素,再將元素融入計(jì)算機(jī)的運(yùn)行環(huán)境,如Visual C++6.0中,借助寄存器,將各元素連接起來(lái),形成一個(gè)整體的、可以自動(dòng)運(yùn)行的系統(tǒng),在考核方式上,以考查語(yǔ)言的語(yǔ)法知識(shí)為主轉(zhuǎn)變?yōu)橐钥疾閷W(xué)生的系統(tǒng)整體設(shè)計(jì)為主。培養(yǎng)了學(xué)生的抽象思維和整合能力,訓(xùn)練其解決問(wèn)題的思路和方法,提升其計(jì)算思維,學(xué)生很容易將這些方法和思路擴(kuò)展到其他編程語(yǔ)言中。
但是國(guó)內(nèi)學(xué)者研究的對(duì)象一般為本科院校中的在校生,他們基礎(chǔ)扎實(shí)、學(xué)習(xí)主動(dòng)性好,研究的成果也較為理想。但我國(guó)還有數(shù)量巨大的??圃盒#渲形迥曛聘呗氃盒?,招收的是初中畢業(yè)生,這些學(xué)生有自己的特點(diǎn),本文研究對(duì)象是五年制高職學(xué)生。
2 五年制高職學(xué)生計(jì)算思維培養(yǎng)研究
2.1 五年制高職的特點(diǎn)
所謂五年制高職通常是指直接招收初中畢業(yè)生,前三年按照普通中等職業(yè)教育的管理辦法進(jìn)行管理,學(xué)習(xí)語(yǔ)文、數(shù)學(xué)、英語(yǔ)、政治、歷史、地理等文化課與相關(guān)專業(yè)課;后兩年納入普通高等教育管理,開設(shè)??茖哟蔚墓舱n和專業(yè)課,學(xué)生修業(yè)期滿成績(jī)合格者,由學(xué)院頒發(fā)普通高等學(xué)校全日制??飘厴I(yè)證書[10]。其特點(diǎn)如下:
1) 招收的學(xué)生年齡小、可塑性強(qiáng)、有效學(xué)習(xí)時(shí)間較長(zhǎng);
2) 專業(yè)設(shè)置靈活、貼近社會(huì)需求,統(tǒng)籌兼顧公共基礎(chǔ)與專業(yè)課程;
3) 學(xué)生動(dòng)手能力優(yōu)于一般本科院校學(xué)生,知識(shí)結(jié)構(gòu)較為齊全;
4) 自主性較強(qiáng),學(xué)??梢愿鶕?jù)學(xué)生特點(diǎn)進(jìn)行個(gè)性化定制教學(xué);
5) 學(xué)生基礎(chǔ)弱于高中生和本科院校學(xué)生;
6) 教學(xué)方向以應(yīng)用技術(shù)為主,理論知識(shí)在應(yīng)用中融入。
2.2 基于Python 語(yǔ)言下培養(yǎng)學(xué)生計(jì)算思維的研究
Python語(yǔ)言是一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言。簡(jiǎn)單易學(xué)、上手快、移植性強(qiáng),既支持面向過(guò)程的編程也支持面向?qū)ο蟮木幊?。我們針?duì)Python語(yǔ)言的特點(diǎn),并考慮到高職學(xué)生在初中階段已經(jīng)系統(tǒng)學(xué)習(xí)過(guò)英語(yǔ),學(xué)生已知曉學(xué)習(xí)自然語(yǔ)言的方法,將Python語(yǔ)言學(xué)習(xí)類比成英語(yǔ)學(xué)習(xí),一方面可以提高學(xué)生對(duì)Python語(yǔ)言的掌握程度,另一方面可以訓(xùn)練學(xué)生的計(jì)算思維,對(duì)應(yīng)關(guān)系如表1。
編寫程序的過(guò)程是程序設(shè)計(jì)者和計(jì)算機(jī)溝通的過(guò)程,溝通的媒介就是Python語(yǔ)言,計(jì)算機(jī)可以讀懂編寫好的程序。這和人類的自然語(yǔ)言類似,這樣不僅可以讓學(xué)生減少畏難情緒,還可以讓學(xué)生建立學(xué)好Python語(yǔ)言的信心。
1) 將變量和常量當(dāng)成是Python語(yǔ)言的基本元素,將它們比作英語(yǔ)中的字母;
2) 元組、數(shù)組、字典是由變量等按照一定規(guī)則組合而成的新的數(shù)據(jù)結(jié)構(gòu),而詞語(yǔ)是由字母組成;
3) 表達(dá)式是由運(yùn)算符將各種變量、常量連接起來(lái),可以表達(dá)一定的含義;
4) 函數(shù)可以實(shí)現(xiàn)某項(xiàng)功能,對(duì)應(yīng)一篇英語(yǔ)文章;
5) 程序可以是多個(gè)函數(shù)組成,也可以解釋為由變量、常量、表達(dá)式、各種基本結(jié)構(gòu)語(yǔ)句組成,故將其抽象為一本英語(yǔ)課本。
Python語(yǔ)言中的三種基本機(jī)構(gòu)的執(zhí)行方式較難掌握,本文中將其抽象成了英語(yǔ)課本中的段落,每個(gè)段落都有其段落思想,每個(gè)段落和文章的其他部分有一個(gè)簡(jiǎn)單的分割,利用段落提高學(xué)生對(duì)Python語(yǔ)言中基本結(jié)構(gòu)和程序執(zhí)行方式的理解,提高其對(duì)計(jì)算思維中的自動(dòng)化含義的理解。
順序結(jié)構(gòu)比較好理解,程序按代碼的先后自動(dòng)執(zhí)行,這和正常閱讀英文文章形式類似。選擇結(jié)構(gòu)語(yǔ)句中,根據(jù)要求,執(zhí)行部分語(yǔ)句,忽略部分語(yǔ)句,閱讀英文文章時(shí),根據(jù)要求只需閱讀其中部分段落。Python 語(yǔ)言的循環(huán)結(jié)構(gòu)與重復(fù)閱讀某個(gè)段落類似,Python語(yǔ)言循環(huán)次數(shù)是由循環(huán)變量決定的,閱讀某個(gè)段落的次數(shù)是由老師決定的。
2.3 Python 教學(xué)中注意提升學(xué)生的計(jì)算思維
高職新生大多是首次接觸編程語(yǔ)言,將Python語(yǔ)言中元素抽象為英語(yǔ)學(xué)習(xí),可以幫助學(xué)生對(duì)Python語(yǔ)言整體把握,讓學(xué)生腦海中形成Python語(yǔ)言整體的框架。日常教學(xué)中,需要對(duì)其中的概念進(jìn)行擴(kuò)展,由淺入深進(jìn)行教學(xué),在框架上用相關(guān)知識(shí)進(jìn)行填充,幫助學(xué)生掌握學(xué)習(xí)Python語(yǔ)言編程的方法,不僅可以提高教學(xué)質(zhì)量,還可以提高學(xué)生計(jì)算思維能力。
在教授Python時(shí)候,具體做法如下:
1) 注重基礎(chǔ)知識(shí)的理解,培養(yǎng)學(xué)生具備解決問(wèn)題的理論基礎(chǔ),Python是基于C語(yǔ)言發(fā)展而來(lái),但是比C 語(yǔ)言簡(jiǎn)單、更容易上手,學(xué)生第一步需要掌握Python 的語(yǔ)言特點(diǎn),如熟悉Python中關(guān)鍵字含義、強(qiáng)制縮進(jìn)等概念。在進(jìn)行講解的過(guò)程中,可以結(jié)合英語(yǔ)學(xué)習(xí)中單詞、短語(yǔ)的學(xué)習(xí)進(jìn)行比較,讓學(xué)生明白語(yǔ)法和關(guān)鍵字等,就像是構(gòu)成Python程序中的基本材料,只有熟悉基本材料的特性,才能編寫出功能強(qiáng)大的程序。
2) 閱讀和實(shí)現(xiàn)具有某項(xiàng)功能的代碼段,培養(yǎng)學(xué)生的模仿和再現(xiàn)的能力,學(xué)生在掌握基礎(chǔ)知識(shí)后,可以嘗試閱讀并再現(xiàn)具有某些功能的代碼段,一方面可以強(qiáng)化對(duì)基礎(chǔ)知識(shí)的掌握,另一方面將知識(shí)點(diǎn)串聯(lián)起來(lái),使學(xué)生可以再現(xiàn)具有簡(jiǎn)單功能的Python程序,提高學(xué)生學(xué)習(xí)好Python編程語(yǔ)言的信心。
3) 獨(dú)自編寫具有某項(xiàng)功能的代碼段,培養(yǎng)學(xué)生邏輯判斷能力,Python程序具有較強(qiáng)的邏輯性,通過(guò)獨(dú)立編寫代碼段,提高學(xué)生代碼編寫能力和邏輯思維能力,讓學(xué)生對(duì)Python語(yǔ)言有一個(gè)整體概念。
4) 通過(guò)引入模塊,讓Python程序的層次和結(jié)構(gòu)更加清晰,學(xué)生掌握單個(gè)模塊的功能,組合成一個(gè)具備完整功能的程序,培養(yǎng)學(xué)生整合各項(xiàng)資源的整合能力。
2.4 實(shí)驗(yàn)
2.4.1 參與者
選取同一專業(yè)(軟件工程)的兩個(gè)班級(jí),學(xué)生的入學(xué)成績(jī)基本相同,隨機(jī)分配為兩個(gè)班級(jí),人數(shù)大體相同。一班34人,其中男生29人,女生6人;二班35人,其中男生30人,女生5人。學(xué)生年齡在15~16周歲,學(xué)生都來(lái)自江蘇省,教育背景相似。
2.4.2 實(shí)驗(yàn)方法
學(xué)習(xí)課程前,對(duì)兩個(gè)班級(jí)采用西班牙學(xué)者Roman-Gonzalez所開發(fā)的學(xué)習(xí)者計(jì)算思維發(fā)展水平評(píng)價(jià)工具ComputationalThinkingtest(CTt) 進(jìn)行評(píng)價(jià)。該評(píng)價(jià)工具中共有28個(gè)測(cè)試題,每題以“迷宮”或“畫布”的形式顯示,測(cè)試內(nèi)容包含if條件、if-else 條件、while條件、循環(huán)-固定循環(huán)、簡(jiǎn)單函數(shù)、帶參數(shù)的函數(shù)等。測(cè)試時(shí)長(zhǎng)45分鐘,每題1分,共28分,通過(guò)CTt測(cè)試方法可以測(cè)量學(xué)習(xí)者對(duì)基本的計(jì)算概念的掌握情況,以及使用編程來(lái)解決相關(guān)問(wèn)題的能力。
兩個(gè)班級(jí)同時(shí)學(xué)習(xí)Python編程語(yǔ)言,由同一老師進(jìn)行授課,一班采用常規(guī)教學(xué)法,任課老師直接介紹Python里的語(yǔ)法知識(shí)、函數(shù)等知識(shí),再由學(xué)生練習(xí)Py?thon程序的編寫。在二班進(jìn)行教學(xué)時(shí),有意識(shí)地加入訓(xùn)練計(jì)算思維的方法,將Python學(xué)習(xí)方法抽象成為學(xué)習(xí)英語(yǔ),以計(jì)算思維的方式鍛煉學(xué)生解決問(wèn)題的能力,在學(xué)生已有的知識(shí)框架上更新成新的知識(shí)學(xué)習(xí),降低學(xué)生學(xué)習(xí)新知識(shí)的心理障礙,將已有的框架上拓展變換成新的知識(shí)框架,便于學(xué)生理解新知識(shí),同時(shí)鍛煉學(xué)生解決新問(wèn)題的思維模式,在二班授課中,培養(yǎng)學(xué)生用計(jì)算機(jī)的處理流程來(lái)培養(yǎng)學(xué)生解決問(wèn)題的思維,將問(wèn)題進(jìn)行抽象,結(jié)合英語(yǔ)學(xué)習(xí),以計(jì)算機(jī)的思維指引學(xué)生學(xué)習(xí)Python編程語(yǔ)言。
2.4.3 實(shí)驗(yàn)結(jié)果
學(xué)習(xí)Python學(xué)期前和學(xué)期后,兩次對(duì)兩個(gè)班級(jí)進(jìn)行CTt測(cè)試,學(xué)習(xí)前后兩個(gè)班級(jí)得分如下:
經(jīng)過(guò)一個(gè)學(xué)期的學(xué)習(xí)后,兩個(gè)班級(jí)學(xué)生的CTt測(cè)試分?jǐn)?shù)較學(xué)期開始前均有所提高,其中一班提升幅度為4%,二班提升幅度為15%,二班的提升幅度較一班高11%,兩個(gè)班級(jí)分?jǐn)?shù)提升既與學(xué)生年齡增加、智力提升有關(guān)系,也與學(xué)生了學(xué)習(xí)新的知識(shí)、知識(shí)結(jié)構(gòu)更新有關(guān),但二班進(jìn)步比一班快,說(shuō)明在教學(xué)過(guò)程中,如果有意識(shí)的加入計(jì)算思維模塊,讓學(xué)生在學(xué)習(xí)過(guò)程中,潛移默化的接受計(jì)算思維的思想,學(xué)生可以更早更好地以計(jì)算思維來(lái)處理和解決問(wèn)題。
3 總結(jié)
計(jì)算機(jī)已經(jīng)從誕生之初的科學(xué)計(jì)算輔助工具,變成了人們生產(chǎn)生活必不可少的好“伙伴”,這個(gè)“伙伴”不僅影響了我們的生產(chǎn)生活方式,而且還影響了我們的思維,本文主要研究培養(yǎng)五年制高職學(xué)生的計(jì)算思維能力。
主要工作:1) 研究國(guó)內(nèi)外計(jì)算思維研究現(xiàn)狀和計(jì)算思維的重要性,總結(jié)目前國(guó)內(nèi)培養(yǎng)學(xué)生計(jì)算思維的各種模式;2) 研究高職學(xué)校學(xué)生的特點(diǎn);3) 以高職新生學(xué)習(xí)Python語(yǔ)言為例,研究如何在Python語(yǔ)言學(xué)習(xí)中提高學(xué)生的計(jì)算思維能力,具體方法為將Python語(yǔ)言學(xué)習(xí)抽象為英語(yǔ)學(xué)習(xí),再將Python語(yǔ)言中的三種基本結(jié)構(gòu)自動(dòng)化為英語(yǔ)中段落閱讀方式。本文對(duì)Py?thon語(yǔ)言的教學(xué)內(nèi)容進(jìn)行分類和總結(jié)、結(jié)合高職新生的特點(diǎn)和高職生的知識(shí)結(jié)構(gòu),提出提高高職學(xué)生計(jì)算思維的新方法,學(xué)生反映學(xué)習(xí)Python語(yǔ)言的興趣增加,同時(shí)對(duì)Python語(yǔ)言學(xué)習(xí)的整體把握增強(qiáng),實(shí)驗(yàn)表明學(xué)生的計(jì)算思維有一定提高。