国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

在高中信息技術(shù)課中培養(yǎng)學(xué)生計算思維的有效方法探討

2017-12-21 00:00林偉樊磊
新課程研究·教師教育 2017年10期
關(guān)鍵詞:Python語言計算思維信息技術(shù)教學(xué)

林偉+樊磊

【摘 要】文章從追溯計算思維概念產(chǎn)生的歷史背景出發(fā),分析了國內(nèi)外相關(guān)的研究現(xiàn)狀及趨勢,提出了一種以Python語言編程教學(xué)為基礎(chǔ)、基于計算思維的信息技術(shù)問題求解模型的高中信息技術(shù)課程實施策略。該策略的核心是通過研究學(xué)生現(xiàn)實生活中的問題,培養(yǎng)、發(fā)展學(xué)生的計算思維,解決信息技術(shù)教學(xué)的工具化、碎片化問題,深化信息技術(shù)與其他學(xué)科的融合。

【關(guān)鍵詞】信息技術(shù)教學(xué);計算思維;Python語言;問題求解;信息技術(shù)問題;求解模型

中圖分類號:G632 文獻標識碼:A 文章編號:1671-0568(2017)30-0010-04

在信息社會中,學(xué)生的信息技術(shù)素養(yǎng),特別是計算思維的能力,已經(jīng)成為未來職業(yè)生涯的核心競爭力之一。近年來,國際上很多發(fā)達國家都在K12教育中加強了計算機科學(xué)及編程的教學(xué),目標在于培養(yǎng)與發(fā)展學(xué)生的計算思維,以應(yīng)對21世紀的信息化挑戰(zhàn)。我國正在修訂的《高中信息技術(shù)課程標準》也將計算思維作為學(xué)科核心素養(yǎng)之一加以強調(diào)。計算思維的發(fā)展和提高是一個長期學(xué)習(xí)、實踐和體驗的累積,不可能僅僅依靠一門或幾門課程來完成。高中信息技術(shù)課程是系統(tǒng)化培養(yǎng)學(xué)生計算思維的重要途徑之一,探討在高中信息技術(shù)教學(xué)實踐中如何適應(yīng)這個重大改變、貫徹培養(yǎng)目標,成為擺在信息技術(shù)教學(xué)的研究者和廣大信息技術(shù)教師面前的重要課題。

一、研究背景及現(xiàn)狀

計算思維概念源自20世紀80年代的算法思維概念。計算思維這個術(shù)語是S.Papert在1996年發(fā)表的一篇數(shù)學(xué)教育論文中首次使用的。2006年,美國卡內(nèi)基·梅隆大學(xué)的周以真教授在Communications of the ACM的觀點專欄上發(fā)表了題為“計算思維”的文章,并在2008年的文章中對計算思維做了進一步解讀。此后幾年里,觀點專欄還陸續(xù)發(fā)表了其他學(xué)者關(guān)于計算思維的論述,其中比較有代表性的包括P.Denning的文章。

根據(jù)周以真等人的觀點,計算思維是在敘述問題及求解問題過程中的一種思維過程,其目標在于將問題表示為可通過信息處理手段有效求解的形式。美國國家科學(xué)基金會在2009年將計算思維解釋為“計算概念、方法、技術(shù)和工具方面的素養(yǎng)”。此外,學(xué)者普遍認為,計算思維應(yīng)該是每個人都應(yīng)具備的基本技能,而不僅僅屬于計算機科學(xué)領(lǐng)域?qū)<一蛑餍抻嬎銠C專業(yè)的學(xué)生,這一觀念也得到了教育界的廣泛認同。

從2006年開始,計算思維的觀念開始在大學(xué)計算機通識教育中產(chǎn)生影響。在2010年首屆計算機基礎(chǔ)課程研討會上,九校聯(lián)盟確定了將培養(yǎng)計算思維能力作為計算機基礎(chǔ)教學(xué)的核心任務(wù),大學(xué)的計算機教育全面啟動了從計算機文化導(dǎo)向到計算思維導(dǎo)向的新一輪改革。從2012年開始,召開每年一屆的“計算思維與大學(xué)計算機課程教學(xué)改革研討會”,并出版了大量以計算思維導(dǎo)向的大學(xué)計算機改革教材。世界各國也充分重視計算思維在K12教育中的價值,紛紛做出響應(yīng)和指導(dǎo)性的規(guī)劃,目的在于使學(xué)生能更好地應(yīng)對21世紀的信息化挑戰(zhàn)。例如,2008年,美國國家計算機科學(xué)技術(shù)教師協(xié)會發(fā)布了名為Computational thinking: a problem solving tool for every classroom的報告,對計算思維在課堂教學(xué)中的價值和應(yīng)用進行了詳細的闡述。

在我國,許多學(xué)者對計算思維在信息技術(shù)教育中的價值和作用做了積極的理論探討和實踐研究。

盡管已經(jīng)有為數(shù)不少的理論研究和實踐嘗試,但有關(guān)計算思維的概念界定及適用范圍(與設(shè)計思維、創(chuàng)新思維的關(guān)系)等方面仍存在爭議,其自身也尚無形式完整的理論體系和方法論。同時,計算思維是伴隨整個計算學(xué)科高速演化著的一個動態(tài)概念,需要不斷地從計算學(xué)科中汲取、補充創(chuàng)新觀念和方法,豐富計算思維的內(nèi)涵和應(yīng)用范例。

與大學(xué)的計算機通識教育相比,在基礎(chǔ)教育中計算思維的觀念還遠未得到認同和普及,即使是對信息技術(shù)課程的教學(xué)也還沒有產(chǎn)生本質(zhì)的影響,與計算思維相關(guān)的教學(xué)活動呈現(xiàn)概念化(究竟什么是計算思維的爭論)、工具化(計算思維與編程教學(xué)等同)、碎片化(以片面的形式出現(xiàn)在創(chuàng)新教育、創(chuàng)客及STEM課程中)等問題。正在修訂的《高中信息技術(shù)課程標準》(草稿)中,將計算思維列為信息技術(shù)學(xué)科核心素養(yǎng)之一,同時明確了將“發(fā)展計算思維”作為信息技術(shù)課程的目標之一。修訂標準的實施為高中信息技術(shù)教育的未來提供了全新的機會與挑戰(zhàn)。

二、Python語言特點與教學(xué)價值

在當前的信息技術(shù)教學(xué)中,與信息技術(shù)核心概念相關(guān)的理論部分主要通過課堂講授或編程教學(xué)來體現(xiàn),而注重應(yīng)用的內(nèi)容則通過一些具體的軟件工具和實操教學(xué)來完成。兩者并無緊密關(guān)聯(lián),但又共同構(gòu)成信息技術(shù)課程的主體。這種結(jié)構(gòu)造成了信息技術(shù)理論與應(yīng)用的割裂,所帶來的弊端非常明顯,同時也是造成信息技術(shù)教學(xué)工具化的主要原因之一。多年信息技術(shù)教學(xué)實踐表明:信息技術(shù)課程中的編程教學(xué)與訓(xùn)練在培養(yǎng)學(xué)生計算思維能力方面無可替代。

在中學(xué)編程教學(xué)中普遍采用的語言包括C語言、Java和VB等,其中尤以采納VB的居多,使信息技術(shù)教學(xué)出現(xiàn)了“工具是最新的、語言是最老的”之奇特現(xiàn)象。無論從學(xué)科整合的需要還是從實際應(yīng)用方面看,這些語言都不適合作為中學(xué)的教學(xué)語言,與社會發(fā)展及學(xué)生成長的要求脫節(jié)。因此,信息技術(shù)教學(xué)中迫切需要引入一種(或多種)既迎合技術(shù)應(yīng)用趨勢,又能滿足中學(xué)課堂教學(xué)需要的編程語言。

作為一種現(xiàn)代編程思想的產(chǎn)物,Python語言具有語法簡單、開源、跨平臺、擴展性強等諸多特點,且擁有眾多功能強大的應(yīng)用擴展庫,是名副其實的“膠水語言”,被眾多領(lǐng)域的主流應(yīng)用(如可視化、生物信息學(xué)、大數(shù)據(jù)分析等等)采納為開發(fā)首選語言。具體地講,在高中信息技術(shù)課程中使用Python語言,具有以下幾個方面的優(yōu)勢:

第一,從計算機科學(xué)觀點看,Python是一種較中性的語言,既吸納了近二十年來編程語言領(lǐng)域中的重要研究成果和新概念(如Lambda機制),同時也不冒進,在語言的最基本內(nèi)核層面上極少采用不成熟的或未經(jīng)考驗的新編程機制,使用Python語言實踐學(xué)科核心概念、思想和方法(數(shù)據(jù)與計算、算法、計算思維等)值得期待。endprint

第二,從運行機制方面看,Python同時具備解釋型、編譯型和腳本型語言的共同特點;Python支持類、模塊化及多重繼承等面向?qū)ο蠛诵母拍?,可以看作是一種面向?qū)ο蟮木幊陶Z言;Python還是一種函數(shù)式編程語言,其語言結(jié)構(gòu)和使用方法與數(shù)學(xué)語言很類似,非常方便與數(shù)理學(xué)科融合。

第三,從開發(fā)環(huán)境看,Python的開發(fā)環(huán)境支持所有主流操作系統(tǒng)和平臺,不但包括Windows,OS X,Linux等三大PC操作系統(tǒng),也可以通過擴展庫支持Web應(yīng)用及安卓、iOS移動應(yīng)用開發(fā);使用Python編寫的應(yīng)用幾乎不用做任何改變就可以跨平臺運行。

第四,從擴展硬件方面看,Python的開源硬件接口庫種類繁多、功能完善,基本覆蓋了當前基礎(chǔ)教育領(lǐng)域中用到的擴展硬件,其中Python對3D打印,Arduino和Raspberry Pi的支持和資源尤為完善?;赑ython發(fā)展各類創(chuàng)客活動或STEAM課程既簡單易行又豐富多彩,以便在信息技術(shù)課程中實現(xiàn)。

第五,從語言支持服務(wù)方面看,Python是典型的開源平臺,與C/C++,JavaSript等重要編程語言有很好的應(yīng)用庫共享機制,同時在全球范圍內(nèi)還有眾多的Python愛好者/志愿者、編程社區(qū)和資源網(wǎng)站(包括中文資源)作為堅強的支持后盾。

第六,從應(yīng)用層面看,Python有大量各種各樣的庫/框架,使得開發(fā)者僅寫相對較少的代碼就可以完成令人印象深刻的準專業(yè)級應(yīng)用。例如,Pygame框架可用于寫2D游戲,GTK庫可用于創(chuàng)建窗口應(yīng)用,Django框架可以用于設(shè)計Web應(yīng)用,Kivy可以用于創(chuàng)建Android程序,NumPy和Matplotlib可以用于數(shù)學(xué)和任何理科類計算,Pandas和D3庫可以用于數(shù)據(jù)可視化,OpenCV(SimpleCV)可用于創(chuàng)建機器視覺高級應(yīng)用,scikit-learn可以開發(fā)專業(yè)機器學(xué)習(xí)應(yīng)用,ArcGIS可用于建立GIS程序……眾多的專業(yè)庫/框架以及對移動設(shè)備的支持,讓學(xué)生有機會利用信息技術(shù)手段發(fā)現(xiàn)、分析、解決生活學(xué)習(xí)中遇到的真實問題,而這是達成計算思維培養(yǎng)目標的必經(jīng)之路。

第七,從教學(xué)實施情況看,Python特別適合做數(shù)據(jù)處理(數(shù)據(jù)管理、數(shù)據(jù)可視化、大數(shù)據(jù)分析等)相關(guān)的應(yīng)用,與新課標的理念非常吻合。同時,Python也是最易學(xué)易用的現(xiàn)代編程語言之一(其設(shè)計初衷之一就是讓非專業(yè)人員容易讀懂程序代碼),已經(jīng)成為國內(nèi)外眾多高校計算機通識課程中所使用的首選編程語言,這個特點非常有利于高中-大學(xué)學(xué)科學(xué)習(xí)的銜接和持續(xù)。此外,Python還支持風(fēng)靡歐美教育界的“神器”-Minecraft(我的世界),學(xué)生在Minecraft可以使用Python直接為自己的化身發(fā)送指令、與他人合作或?qū)埂?/p>

三、基于Python的高中信息技術(shù)教學(xué)重構(gòu)

基于以上背景,在高中信息技術(shù)課程教學(xué)中運用Python語言似乎順理成章。但是,采用一種全新的編程語言教學(xué)就意味著要對整個教學(xué)內(nèi)容、教學(xué)環(huán)境、教學(xué)資源和評價方法進行重構(gòu),還要對信息技術(shù)教師進行重新培訓(xùn),涉及的問題相當復(fù)雜。

筆者及合作者很早就開始嘗試在各個層面上的信息技術(shù)課堂及課外活動中使用Python語言進行編程教學(xué),研究了在廣義信息技術(shù)教育中,利用編程教學(xué)發(fā)展學(xué)生計算思維的各種途徑,包括支持創(chuàng)客課程開發(fā)、學(xué)科整合(如與數(shù)學(xué)和物理的整合)等方面?;谙惹暗膶嵺`經(jīng)驗和理論研究,筆者認為:Python語言的內(nèi)在邏輯與現(xiàn)代信息技術(shù)基礎(chǔ)架構(gòu)高度協(xié)調(diào),基于Python重構(gòu)高中信息技術(shù)教學(xué),有望將信息技術(shù)及相關(guān)課程、活動、項目連接為一個整體,通過為學(xué)生提供充分的、由淺入深的問題求解體驗,逐項落實計算思維培養(yǎng)的目標,從而實現(xiàn)課標所倡導(dǎo)的信息技術(shù)學(xué)科的核心價值。

圖1說明了Python作為“膠水語言”,在連接課堂教學(xué)、課外活動與學(xué)生實踐(與其他學(xué)科的整合)中的橋梁作用。

基于這種理解,我們建議圖2所示的信息技術(shù)教學(xué)的重構(gòu)模型。

其中,Python語言的部分需結(jié)合課程標準必須掌握的模塊的要求,能完成對學(xué)科概念、基本算法、數(shù)據(jù)輸入輸出和基本計算與處理工作,這包括了Python的環(huán)境配置、基本語句、數(shù)據(jù)類型、控制結(jié)構(gòu)、函數(shù)和基本庫等內(nèi)容。

對非專業(yè)人員而言,Python的版本選擇和環(huán)境配置是一個相對復(fù)雜的問題。我們采用開源的Anaconda發(fā)行包及Python 3.x版本。Anaconda發(fā)行包同時支持Python 3.x和Python 2.x版本,自帶安裝程序,包含了多種流行開發(fā)環(huán)境(我們測試過的環(huán)境包括是Spyder和IPython),以及在高中教學(xué)中可能用到的所有Python擴展庫或框架。

四、編程教學(xué)、問題求解與計算思維

如前所述,計算思維聚焦在敘述問題和解決問題過程中的信息處理,從這個觀點上看,計算思維可以理解為求解信息處理問題時的思維方式,編程語言可以看成描述信息處理過程的形式語言,而編程則是基于信息的推理活動(計算也是一種推理)。編程語言/編程在表示/求解信息處理問題中的作用類似于抽象/邏輯在求解數(shù)學(xué)問題的表示和推理。

著名數(shù)學(xué)家G.Polya在其專著“怎樣解題”中提出過一個(數(shù)學(xué))問題求解的模型,圖3顯示了這個模型的核心內(nèi)容:

基于Polya的模型,我們提出下列基于計算思維的問題敘述與求解模型(如圖4),在這個模型中,我們特別強調(diào)問題的敘述(正確地提出問題、表示問題)、基于信息的問題求解過程(設(shè)計算法與編程實現(xiàn))及求解方案評估(效率、時間和精度等)這幾個重要的方法論特點,這既體現(xiàn)了與一般問題求解過程的顯著不同,同時也表明計算思維的培養(yǎng)是一個逐漸積累和不斷優(yōu)化的迭代過程。筆者認為,只有將問題理解(包括敘述和表示)和求解(算法設(shè)計、實現(xiàn)、評估、優(yōu)化)看成一個整體,才能真正體現(xiàn)出計算思維的真正價值,同時也較好地解決了編程教學(xué)中的碎片化等問題。endprint

基于以上模型,筆者將高中信息技術(shù)課程標準所涉及的學(xué)科知識、基礎(chǔ)算法和數(shù)據(jù)處理等方面的知識和典型應(yīng)用場景等,以各種項目的形式由淺入深地融入Python編程教學(xué)中,還精選了若干應(yīng)用計算思維的典型案例供學(xué)習(xí)分析,這些案例涉及個人隱私、信息安全、網(wǎng)上購物、在線交流、共享經(jīng)濟等應(yīng)用情境,既與學(xué)生的生活息息相關(guān),增強他們的信息意識,也能體現(xiàn)社會信息化的發(fā)展,以及計算思維和Python編程在信息技術(shù)教育中的獨特作用。

五、總結(jié)與展望

初步實踐表明,基于Python環(huán)境及計算思維的觀念對高中信息技術(shù)教育進行重構(gòu),不僅必要,而且可行。同時,在“K12教育”中系統(tǒng)地使用計算思維指導(dǎo)教學(xué)還是新生事物,無論是理念上、實踐上還是資源上,都還存在很多問題,比較突出的問題包括:領(lǐng)導(dǎo)信息意識不夠,對信息技術(shù)教學(xué)的整體關(guān)注不足;信息技術(shù)教師知識體系的重建;適合高中課堂教學(xué)的資源匱乏;缺乏本地化全中文Python平臺等,至今沒有一種經(jīng)過教學(xué)檢驗的計算思維及信息技術(shù)核心素養(yǎng)的評估體系是最大的問題。

在信息時代,傳統(tǒng)思維方式仍然具有重要的教育價值,計算思維既不是傳統(tǒng)思維的替代,也非學(xué)生創(chuàng)新思維培養(yǎng)的全部,計算思維必須融入更宏觀的思維框架中(如系統(tǒng)化思維、設(shè)計思維),才能更有效地發(fā)揮其應(yīng)有的作用。隨著新課程標準的頒布,以及面向立德樹人、核心素養(yǎng)的各項教育改革措施的陸續(xù)實施,計算思維與編程教學(xué)一定會超越信息技術(shù)學(xué)科本身,在培養(yǎng)未來創(chuàng)新型人才方面發(fā)揮更大作用。

參考文獻:

[1] S.Papert,An exploration in the space of mathematics educations [J].International Journal of Computers for Mathematical Learning,1(1),1996.

[2] J.Wing,Computational Thinking[J].Communications of the ACM,Vol.49(3),2006.

[3] J.Wing,Computational thinking and thinking about computing[J].Philosophical Transactions of the Royal Society A,2008.

[4] P. Denning,Beyond Computational Thinking[J].Communications of the ACM,Vol.52(6),2009.

[5] A.Tucker(ed),Computing Handbook (2nd Ed)[M].CRC Press,2014.

[6] 王萬良,樊磊,信息素質(zhì)有助于抽象概念理解[J].黑龍江高教研究,2005,(12).

[7] 李廉.計算思維—概念與挑戰(zhàn)[J].中國大學(xué)教學(xué),2007,(1).

[8] 范紅.計算思維的培養(yǎng)國際研究綜述[J].中國信息技術(shù)教育,2013,(6).

[9] 董榮勝.計算思維與計算機導(dǎo)論[J].計算機科學(xué),2009,36,(4).

[10] 牟琴,譚良.計算思維的研究及其進展[J].計算機科學(xué),2011,(3).

[11] 牟琴,譚良,周雄峻.基于計算思維的任務(wù)驅(qū)動式教學(xué)模式的研究[J].現(xiàn)代教育技術(shù),2011,(6).

[12] 九校聯(lián)盟.九校聯(lián)盟(C9)計算機基礎(chǔ)教學(xué)發(fā)展戰(zhàn)略聯(lián)合聲明[J].中國大學(xué)教學(xué),2010,(9).

[13] 第一屆“計算思維與大學(xué)計算機課程教學(xué)改革研討會”在西安舉辦[J].中國大學(xué)教學(xué),2012,(8).

[14] 陳國良,董榮勝,計算機思維與大學(xué)計算機基礎(chǔ)教育[J].中國大學(xué)教學(xué),2011,(1).

[15] 朱亞宗.論計算機思維——計算機思維的科學(xué)定位、基本原理及創(chuàng)新路徑[J].計算機科學(xué),2009(4).

[16] 馮博琴.對于計算思維能力培養(yǎng)“落地”問題的探討[J].中國大學(xué)教學(xué),2012(9).

[17] 陳杰華,程序設(shè)計課程中強化計算思維訓(xùn)練的實踐探索[J].計算機教育,2009(20): 84-85.

[18] 張學(xué)軍,郭夢婷,李華.高中信息技術(shù)課程蘊含的計算思維分析[J].電化教育研究,2015,(8).

[19] 楊健.高中信息技術(shù)基礎(chǔ)教學(xué)中計算思維培養(yǎng)的案例研究[J].中小學(xué)信息技術(shù)教育,2016,(7).

[20] 倪俊杰.在信息技術(shù)課堂上提升學(xué)生的計算思維[J].教育研究與評論(技術(shù)教育),2015,(1).

[21] 陳玥,基于計算機思維的中學(xué)信息技術(shù)教育的研究[D].蘇州:江蘇揚州大學(xué),2012.

[22] 李俊杰,高中信息技術(shù)課程教學(xué)中計算思維培養(yǎng)的策略探析[J].中國信息技術(shù)教育,2014,(12).

[23] G.波利亞.怎樣解題——數(shù)學(xué)思維的新方法[M].涂泓,馮承天譯,上海:上海科技教育出版社,2011.

(編輯:易繼斌)endprint

猜你喜歡
Python語言計算思維信息技術(shù)教學(xué)
基于Python語言和支持向量機的字符驗證碼識別
論Python程序設(shè)計語言
基于Python語言的面向?qū)ο笳n程實踐教學(xué)探討
高職院校信息技術(shù)課程教學(xué)內(nèi)容革新的探索與研究
程序設(shè)計課程中計算思維和應(yīng)用能力培養(yǎng)問題研究
運用“分層教學(xué)”優(yōu)化信息技術(shù)課堂教學(xué)設(shè)計
基于Android的Python語言英漢維電子詞典設(shè)計與實現(xiàn)
民族高校C語言程序設(shè)計課程教學(xué)改革的研究
略談中小學(xué)信息技術(shù)教學(xué)中微視頻的應(yīng)用
算法的案例教學(xué)探析
陆河县| 定西市| 依兰县| 睢宁县| 新郑市| 鄂尔多斯市| 库车县| 青田县| 潞西市| 绥芬河市| 凌云县| 泸水县| 邯郸县| 东光县| 和龙市| 清丰县| 曲松县| 百色市| 邹平县| 高淳县| 恭城| 紫金县| 乡宁县| 徐州市| 镇坪县| 永顺县| 南安市| 富蕴县| 建昌县| 吉隆县| 高碑店市| 梁平县| 富平县| 晋州市| 闸北区| 泰宁县| 德安县| 萍乡市| 栾川县| 横峰县| 福安市|