胡國際
摘要:非計算機專業(yè)程序設計課程目前存在的問題,結合榆林學院程序設計類課程的實際教學情況,提出將易讀、易學、接近自然語言、應用范圍廣的 Python語言作為公共程序設計課程面向全校非計算機專業(yè)學生開設。本著“思維培養(yǎng)、能力培養(yǎng),服務專業(yè)”的教學目標,設計合理的教學內(nèi)容。Python 程序設計課程的開展,可激發(fā)師生的興趣和創(chuàng)造力,可提升教學質(zhì)量,讓學生喜歡編程、會編程。
關鍵詞:教學改革;Python語言;程序設計
引言
目前非計算機專業(yè)第二層次課程包括C 語言、VB、Access 和高級 office,其中藝術體育類專業(yè)開設 Access,文科管理類院系開設高級 office,理工科院系開設 C 語言或 VB。C 語言和 VB 屬于程序設計課程,目前教學過程中存在理論知識理解不夠深刻、編程缺乏算法思想、依賴教師指導示范、實踐興趣難以培養(yǎng)、學習積極性較差、課堂參與力度不夠、自學能力不足等諸多問題 。程序設計類課程對于非計算機專業(yè)的學生來說是一種挑戰(zhàn),學生之前沒有編程和設計的概念,編程和設計思維難以形成,因此學生學習難度較高,教學效果難以提高,面對這種情況,應選擇一種簡單、易學、上手快,能解決實際問題的程序設計語言。Python 語法結構簡單,接近自然語言,解決問題直觀,功能強大,應用范圍廣。
一、程序類課程特點分析
1.C語言程序設計。
國內(nèi)很多高校針對非計算機專業(yè)普遍開設 C語言,C 語言接近底層,主要內(nèi)容包括數(shù)據(jù)類型、表達式、運算符、程序結構、函數(shù)、數(shù)組、指針等,是基于計算機系統(tǒng)結構時代的計算思維、計算機原理知識的抽象和自動化,注重學生理解能力培養(yǎng)和程序的高效運行的方法。但是,由于非計算機專業(yè)學生缺少計算機體系結構知識的學習,沒有專業(yè)背景需求,缺乏學習興趣,學習效果差,每年我校公共計算機 C 語言程序設計考試的卷面過關率不到 50%,教學效果不理想。
2.Python 程序設計。
Python 是一種重要的動態(tài)腳本語言,發(fā)展了近30 年,是目前美國大學生最喜歡的程序設計語言。近年來隨著 Web 應用的不斷深入,由 Python 等動態(tài)語言為基礎構建的項目較多。軟件行業(yè)對掌握動態(tài)語言的技術人員的需求增加。Python 具有 C、Java、VB 等程序類語言所不具備的動態(tài)語言特征,且 Python 語法簡練、接近自然語言、應用范圍廣、易學易上手,在數(shù)據(jù)處理、數(shù)據(jù)分析、機器學習和網(wǎng)絡爬蟲等方面能力突出 。
Python 教學內(nèi)容主要包括分支、循環(huán)、函數(shù)等基本語法知識和函數(shù)庫的應用。Python 語言輕量級的語法、高層次的語言表示表達了應用計算機解決問題的計算思維理念,其抽象了問題和解決方案,自動化問題求解,是利用計算機解決問題最直觀的表達工具。從目前已開設高校的實際教學效果來看,Python 語言的開設,教學效果較好。
3.VB 程序設計。
VB 程序設計的特點是可視化的、事件驅(qū)動的、結構化的和面向?qū)ο蟮?,其主要用于開發(fā) Windows系統(tǒng)中的視窗應用。其教學內(nèi)容主要包括數(shù)據(jù)類型、表達式、運算符、程序結構、函數(shù)、數(shù)組,船體對象、各種控件等,其抽象了交互邏輯和響應關系,其開發(fā)的程序可見即可得。VBA 繼承了 VB 的語法,在辦公自動化及一些網(wǎng)頁腳步文件中應用廣泛,對非專業(yè)學生有一定實際應用作用,VB 學習難度較低,教學效果比 C 程序設計好。
但是 VB 程序設計語法知識多,控件多,每個控件都對應相應的屬性、事件和方法,學習內(nèi)容多且雜,學生在學習的過程中對界面設計、屬性設置方面掌握較好,但編程方面就比較差,缺乏編程思維。VB 程序設計適合于編寫視窗應用方向,語言應用面窄、使用局限性大。
二、Python語言的優(yōu)勢分析
1.語法簡潔,代碼短小,功能強大,易于學習。對于非計算機專業(yè)學生的第一門計算機程序設計課程,入門容易是非常必要的,興趣的保持是課程延續(xù)的基礎。Python語言更接近自然語言,學習曲線平滑,同時具有高效性,實現(xiàn)周期短。學生的編程熱情和創(chuàng)新思想能夠快速實現(xiàn),能更好地保持學生的學習熱度;
2.應用廣泛,與專業(yè)結合度高。Python具有龐大的生態(tài)圈,提供了數(shù)量驚人的各種第三方庫,由于Python是開源的,在避免重復造輪子的前提下又具有相互競爭機制,使其生態(tài)圈健康穩(wěn)健成熟的高速發(fā)展。同時對于新手非常友好,學生運用計算生態(tài)結合不同專業(yè)特征可以在科學計算、數(shù)據(jù)挖掘、Web開發(fā)、機器學習、部署腳本、科學建模等數(shù)之不盡的領域應用,可以說與專業(yè)結合非Python莫屬。
3.社會需求量大,就業(yè)形勢前景看好。隨著人工智能、云計算、大數(shù)據(jù)、機器學習的興起推動了Python語言的發(fā)展。最近IEEE Spectrum發(fā)布了2017年編程語言交互式排行榜,Python位居榜首。Coding Dojo(編碼道場)近期發(fā)布了2018年最具就業(yè)前景的7大編程語言,Python位居第二,位于第一的Java語言,由于局限于安卓開發(fā)平臺出現(xiàn)就業(yè)萎縮現(xiàn)象,而Python語言則逐年遞增。雖然國內(nèi)與國外情況有所差異,國內(nèi)由于高校Python語言教學的滯后,Python優(yōu)勢并不如國外明顯,從智聯(lián)招聘、前程無憂等專業(yè)的平臺上Python就業(yè)薪資和需求量及投簡歷的人數(shù),可以判斷人才缺口很大、未來python就業(yè)形勢將大幅度上升。
三、結語
非計算機專業(yè)程序課程存在諸多問題,在討論了 Python 語言程序設計的應用特點和優(yōu)勢后,得出 Python 語言適合在地方院校非計算機專業(yè)教學中推廣和應用。
參考文獻
[1]嵩天,黃天羽.Python語言程序設計教學案例新思維[J].計算機教育,2017( 12) :11 -14.
[2]冉娟,張鋼.獨立學院非計算機專業(yè) Python程序設計課程教學改革探索[J].計算機教育,2017( 9) : 15-20.