


摘要:為了更好地貫徹“其他各門課都要守好一段渠、種好責任田”的任務,作為高校開設面最廣的程序設計課程的老師在進行專業知識講授的同時進行課程思政教育是必須的。以Python程序設計課程為例,從教師加強思想政治理論學習、從小處著手融入思政元素、通過調試程序等培養學生養成嚴謹的科學作風、結合時事,精選案例等幾個方面對課堂思政元素進行了設計和實踐。
關鍵詞:課程思政;思想教育;程序設計;教學實踐
中圖分類號:G642 文獻標識碼:A
文章編號:1009-3044(2020)03-0075-03
1 概述
黨中央歷來高度重視大學生思想政治教育工作。自新中國建立以來,黨中央就把大學生思想政治教育作為大學實現教育培養目標的任務之一。[1]習近平總書記在全國高校思想政治工作會議上強調“要用好課堂教學這個主渠道,思想政治理論課要堅持在改進中加強,提升思想政治教育親和力和針對性,滿足學生成長發展需求和期待,其他各門課都要守好一段渠、種好責任田,使各類課程與思想政治理論課同向同行,形成協同效應?!边@就說明做好高校思想政治工作不僅僅是思想政治理論課老師的責任,任何一位專業課、通識教育課老師都責無旁貸,必定要將教書育人落實到課堂。
隨著智能時代的到來和新工科建設的興起,程序設計教學面臨著廣闊的發展機遇,將負擔起培養作為科學思維三大支柱之一的計算思維能力和主要任務,并為計算機學科與其他學科的交叉融合做必要的知識和應用能力儲備。[2j如今社會已經進入大數據時代,新知識、新技術層出不窮,由于Python程序設計語言在數據獲取、數據分析、數據挖掘方面的優勢,近幾年來Python以迅雷不及掩耳之勢快速崛起,2019年10月TIOBE編程語言排行榜中Python語言穩居第三。在我校,Python程序設計課程面向全校經管類專業開放,計算機類學科的程序設計與經管類學科相互融合、互為服務。我們就是要抓住這樣的大課堂,將思政元素融入課堂,把學生培養成社會主義事業的接班人。
2 課堂教學中思政元素的設計和實踐
為了避免“課程思政”成為無本之木,無源之水,就必須結合課程內容和特點,進行思政元素的挖掘。[3]
2.1 教師加強思想政治理論學習,學習新思想、新論述、新方法
教師要組織課程思政的教學,只有通過多學科研究人員的交叉系統研究和相互借鑒才能達至對其本質的認識,才能在實踐上進一步推進“課程思政”內涵研究的科學化、系統化,才能推動高校“立德樹人”的創新發展。[4]課程思政教學,首先就要求教師本身有較高的理論水平,而且教師的理論水平要跟得上時代的發展,這就需要教師向思政專業教師學習取經,相互探討時事熱點,交換不同看法,不斷地學習新理論、新思想、新方法。除了向他人學習,自身也要不斷提高理論水平。我們課題組的老師大部分是中共黨員,如今黨員學習有個“學習強國”的平臺,這個平臺中有推薦、要聞、新思想、綜合、人物、實踐、教育、時評、經濟、思考等各類欄目,我們在學習強國的平臺中認真學習,仔細揣摩,從中找到緊跟時代的課程思政的結合點。比如從“新思想”欄目中我們會學習到《求是》雜志中的若干篇文章:習近平:牢記初心使命,推進自我革命、習近平:增強推進黨的政治建設的自覺性和堅定性、堅定文化自信,建設社會主義文化強國等;從“人物”欄目中我們了解了燃盡一生,打開中國天眼的南仁東、最美教師,用生命影響更多生命的張麗莉、“時代楷?!标惲⑷?、敬畏教育,以愛傳承的封莉容、時代楷模杜富國……與此同時還要讀原著原本,讀《習近平新時代中國特色社會主義思想三十講》《習近平關于“不忘初心、牢記使命”論述摘編》等,提高自己的理論水平。
2.2 融入思政元素從小處著手,潤物細無聲
在Python程序設計課程中,有列表、元組、字符串、字典等常用數據結構,在講這些數據結構的時候,比如字符串,我們會把某些人名組成一個字符串,names=許海峰,張怡寧,鄒市明,王皓,馬琳,王勵勤,王楠,郭躍,容國團,郭晶晶,要求這些人名同姓的放一塊重新組成字符串,學生一看,都是奧運冠軍的名字,怎么做呢?我們就會講到先用字符串的split0方法形成列表,然后對列表排序后再用join0方法重新生成字符串,如圖1所示,大家驚訝地發現這樣確實能把同姓的人名放在一起,但是又跟我們平時的按照漢語拼音次序不同,原來這樣排序只能按照Unicode編碼來排,如何按照漢語拼音來排序呢?我們就作為一項課后練習布置給學生。當然這練習沒那么簡單,當學生碰到困難的時候,我們就會鼓勵學生,學習奧運冠軍不怕困難,勇于拼搏的精神,容國團的名言“人生能有幾回搏”就在耳邊回響……這樣就能從小處著手,以奧運冠軍的名字為契機,將思政元素融人細微之處,鼓勵學生勇攀科學高峰。
2.3 差之亳厘,謬以千里,通過調試程序、糾錯和改錯培養學生養成嚴謹的科學作風
在程序設計的課程中,程序通常要經過調試才能得到正確的結果。在上課的過程中,經常會聽到學生這樣說:“這么簡單的程序分分鐘搞定!”,還有的聲音則說:“老師,我跟你寫的代碼全部都一樣,為啥我的結果不對?”而說分分鐘搞定的學生也是錯誤百出。如在講for循環中,我們有這樣一個示例:
【例3-12】有一個列表sales= [5000,3000,8000。10600,6000,5000]。該列表中的元素依次表示某產品1-6月的銷售額。請用for循環遍歷該列表,找到第一個銷售額大于等于6000的元素,并打印該元素的值。如果沒有找到,則輸出“未找到”。[5]
學生很容易上手寫來這樣一段程序,如圖2所示;
程序:運行結果:
這個結果明顯是錯誤的,為什么呢?這樣寫的含義是遍歷sales列表,如果某元素大于等于6000則輸出第一個大于等于6000的銷售額是這個元素,否則輸出未找到。這樣就把每個元素跟6000相比的結果均輸出了。我們再啟發學生,如果已經找到第一個還需不需要再找下去,很明顯不需要,這時通過break結束循環即可。這樣寫出來的程序和運行結果如圖3所示。
程序:
運行結果:
這樣的結果雖然不對,但是確實是找到了第一個大于等于6000的銷售額后程序就結束了,那前面的兩個未找到又是怎樣出現的呢?原來遍歷列表的時候,對于每一個元素,還是先判斷是否大于等于6000,如果是則輸出第一個大于等于6000的銷售額是這個元素,否則輸出未找到,直到找到第一個大于等于6000的銷售額為止,如果沒有大于等于6000的銷售額,則遍歷完成后程序結束。我們就提醒學生考慮一個問題,到底什么時候輸出未找到呢?原來只有當遍歷結束而還是沒有找到大于等于6000的銷售額后才能顯示未找到。這樣,我們應該寫成for_else_結構,程序和運行結果如圖4所示。
程序:
運行結果:
至此,這段程序才算完成。圖3和圖4中的程序字符都一樣的,但是縮進不一樣,結構也就不一樣,圖3是if...else_結構,圖4是for_ else_結構。這就會出現學生經常說的為啥看起來寫的代碼一樣而結果不一樣。出現這種問題通常有兩種原因,一是對程序代碼的不理解,另一種是浮躁、粗心。對于第一種需要老師耐心細致的講解,學生要開動腦筋、虛心求教、不懂就問、克服困難、勇攀高峰,而對于第二種通常出現在“分分鐘搞定”的學生身上,我們就要告誡這些學生,科學來不得半點虛假,要腳踏實地,戒驕戒躁,如果自己掌握得又快又好,也要盡可能地幫助其他同學,互幫互助,共同進步。而對于學生中出現的漏輸冒號、錯輸中文標點符號、該有的縮進沒縮進等這樣的情況,我們會教導學生要認真仔細,語法上的任何錯誤都可能導致程序產生嚴重的錯誤,要遵守語法規則,養成嚴謹的科學作風,而在現實生活中要遵紀守法,嚴格遵守各項規章制度,堅持走中國特色社會主義道路,這是實現中華民族偉大復興的必由之路。這樣就能將思政元素滲透到每一堂課中,發揮“隱形”思政的功能,既能傳授知識,又能引導學生樹立正確的世界觀、人生觀和價值觀。
2.4 結合時事,精選案例,既能掌握學科知識又能提升政治素養,潛移默化中進行課程思政教育
興趣是最好的老師,只有學生對教學內容感興趣時,才能學得最好。[6]python程序設計課程中有一講“正則表達式”的內容,根據教學進度的安排,這一講正好在國慶節前后,如果單單紙上談兵則這一講的內容枯燥乏味,猶如雞肋,但是如果跟爬蟲結合起來則這一講的內容就變得豐富有趣、意味深長。由于學生接觸Python程序設計的時間不長,我們就選取了比較簡單的百度貼吧來爬取。我們做了一系列的簡單案例供學生實踐,雖說是簡單案例,相關的知識卻并不少,我們從獲取網頁開始,講到解析網頁,再到存儲內容。第一個簡單案例:獲取百度貼吧國慶節吧第一頁帖子的鏈接地址和標題,屏幕上顯示輸出。部分輸出結果如圖5所示(由于貼吧內容實時更新,運行結果不同)。在解析網頁中這個案例就涉及正則表達式,我們帶領學生分析網頁結構,發現我們可以先使用正則表達式
(*?)
這只是這一系列案例的開始,爬完一頁以后我們就進入第二個案例:在爬取一頁的基礎上爬取多頁,學生又要不厭其煩地分析網頁結構,培養學生踏實肯干、實干苦干、腳踏實地的優秀品質;等我們講到文件和數據庫的時候,就會進入到第三、第四個案例:爬取的內容存入文件、數據庫之中。層層遞進,一環扣一環。而在這一環扣一環的當中,我們會布置實踐作業給學生:自愿組成小組,選取某一國慶節熱播電影爬取評論。今年是“我和我的祖國”這部電影,電影年年不同。對于初學Python的學生來說,完成實踐作業我們鼓勵團隊協作,通過團隊合作找出解決問題的方法,培養學生團隊意識和探索精神,提高綜合素養。
3 結束語
立德樹人是高校立身之本,所有課堂都有育人功能。[7]從思政課程到課程思政,教師在認識上要確立思政教育不僅僅是思政教師的事,是所有教師份內的事。[8]課程思政任重而道遠,結合課程特點,課程思政還有很多內容值得探討,有很長的路要走。只要我們堅定不移地把握課堂主旋律,課堂思政將在培養學生的各個方面發揮極其重要的作用。
參考文獻:
[1]呂寧.高?!八颊n程”與“課程思政”協同育人的思路探析[J].大學教育,2018(1):122-124.
[2]秦呋,史曉楠,《程序設計基礎》課程教學改革實踐——以Py-thon語言為教學語言[J].軟件導刊-教育技術,2018,17(2):71-72.
[3]耿麗娟,“課程思政”在計算機基礎課程中的探索[J].通訊世界,2019(8):347-348.
[4]萬力.“課程思政”研究的三重邏輯綜述[J].天津市教科院學報,2019,8(4):36-41.
[5]楊年華,柳青,鄭戟明.Python程序設計教程[M].北京:清華大學出版社,2019.
[6]趙美林.興趣導向下的Python程序設計課程教學模式研究[J].科技視界,2018(29):161-163.
[7]吳濤.發揮專業特色,實施“課程思政”[J].電腦知識與技術,2017,13(28):143-144.
[8]倪成偉,吳慶念,高職思想政治教育的回歸:從“思政課程”到“課程思政”——以“經濟管理基礎”課程為例[J].職教通訊,2017(36):17-21.