朱 勇 李進輝
(沈陽農業大學信息與電氣工程學院 遼寧 沈陽 110866)
程序設計思想與專業實際應用有效銜接之途徑
朱 勇 李進輝
(沈陽農業大學信息與電氣工程學院 遼寧 沈陽 110866)
運用計算機的程序設計技術處理實際應用問題是新世紀創新型人才必須具備的基本能力之一,如何將程序設計思想與專業實際應用有機銜接,本文從教授方法、培養學生學習興趣以及建立與完善將程序設計思想和技術運用到專業實際應用的長效機制等方面進行了探討和思考。
程序設計思想;實際應用;解決途徑;有效銜接;長效機制
在人類步入信息化社會的今天,善于運用計算機技術和手段進行學習、工作、解決專業問題已是高級人才必備的素質。大學計算機基礎教學的一個核心任務就是培養學生運用計算機思維方式解決專業實際問題的能力。教育部高等學校計算機基礎課程教學指導委員會曾明確提出高校計算機基礎教學的培養目標之一就是應用計算機解決問題的能力,要求學生能有效地掌握并應用計算機工具、技術和方法,解決專業領域中的問題。作為一種實現方式和手段,程序設計教學在培養學生的動手實踐能力、提高應用計算機解決專業實際問題的綜合創新能力和學生自身素質等方面正發揮著越來越重要的作用。那么,如何組織開展程序設計課程的教學,使學生能夠將理論應用于實踐,并實現與專業實際需求的有效銜接呢?筆者根據多年的教學實踐擬就此問題談談拙見。
從目前課程設置及時間安排來看,各高校程序設計課程往往開設于第一學年。通過系統學習,大多數學生可基本掌握課程內涵,并能在教師指導協助下設計簡單的程序。但進入到高年級專業課學習階段,隨著專業課學習和研究的不斷深入,會進一步深切感受到程序設計技術在促進專業學科發展方面所發揮的巨大作用。而此時由于早已結束程序設計課程的學習,先前所學的程序設計知識恐怕已所剩無幾,面對專業實際問題茫然不知所措。誠然,造成這種局面的原因固然很多,但筆者認為主要原因首先是教學理念定位不當,沒有將培養學生綜合創新素質和運用計算機技術處理專業問題的能力作為教學目標,無法實現將程序設計理論與專業實際應用合理對接;其次是學生還未形成運用計算機科學的概念,從系統角度認識、處理問題的思維意識以及求解問題的基本方法,在學習中缺乏探索精神和主動學習態度,學習興趣不濃。因此,要想扭轉這種局面,真正幫助引導學生將所學的程序設計知識和技術運用到處理專業問題的實踐中,實現與專業實際需求的有效銜接,可通過下列途徑加以實現。
(一)以提升處理專業實際問題的水平為出發點開展程序設計教學
學習程序設計的目的是了解運用計算機分析和解決實際問題的基本過程和思路,旨在幫助學生養成運用計算機思維方式解決各種專業實際問題,掌握計算學科處理問題的基本方法和特點。而計算機程序設計不僅邏輯結構嚴謹、抽象思維程度高,同時還兼有語法枯燥、抽象性強等不同于其他門類課程的特點,因此,無論是教師講授,還是學生接受,確實存在相當大的難度。為扭轉這種局面,教學應以培養和提升學生處理問題的綜合能力為目標,以拓展學生正確的邏輯思維空間、培養學生形成處理實際問題應具備的基本思維方式為教學切入點,以傳授學生將抽象理論轉化為具體實際的方法,掌握運用計算機解決問題的基本方法為教學主線。為此,可按以下環節組織教學。首先,以學生所學專業和相關專業知識為背景,選取一個(些)既能反映教學知識,又能適當體現學科前沿發展動態的典型事例作為引例,通過對其設計思想和主要代碼的分析幫助學生對程序設計課程有初步的了解和認識,以避免由于初次接觸程序設計課程便被枯燥繁雜的語句、語法所困擾,使學生失去參與教學的積極性;其次,從系統構成角度詳細講解運用程序設計技術在處理具體專業問題時所運用到的基本知識、基本算法及基本設計技巧,為構建相應的計算模型打下良好的基礎;再次,鼓勵學生大膽參與計算模型的編撰并提出富有創意性的建議,使模型更好地滿足專業需要;最后,借助已設計好的計算模型由師生共同設計處理程序,并通過真實場景下的實地運行調試和檢測程序的正確性。
此外,為使學生更好地掌握運用程序設計技術處理專業實際問題所應具備的思維方式,教師可在運行正確的程序內適當設置一些能反映程序設計技巧和關鍵技術的一些漏洞,鼓勵學生大膽研究探索產生漏洞的原因,并總結出處理漏洞的各種有效思路和辦法,借此幫助學生提高處理專業問題的應變能力。實踐證明,以這種方式組織教學既可使學生盡快熟悉和掌握程序設計技術,同時也可為學生指明解決各種專業實際問題的有效途徑,為運用程序設計技術處理專業實際問題奠定雄厚的技術基礎。
(二)將各種有效的教學方法引入專業問題的處理中
教學實踐表明,在教學過程中,結合專業需要有針對性地運用各種先進的教學方法,必將產生事半功倍的教學效果。因此,可將下列教學方法運用到程序設計課堂教學中。
問題法 作為一種傳統的教學方法,問題法在程序設計課程教學中仍具有相當大的且不可替代的優勢。問題法的核心是通過提出典型問題,激發學生的積極參與意識,充分調動其主動學習的興趣和智力潛能。在問題選取上既要體現程序設計課程的基本知識、設計思想,又要結合專業的實際需要。如采用計算機處理各種專業問題時,由于處理問題要受到各種不同條件的制約,因此,應根據不同的條件分別制定各自不同的處理方案。而處理這類實際問題比較普遍的方法是采用程序設計中的條件分支處理技術。為使學生盡快掌握該處理技術在處理專業問題過程中的思想和操作步驟,可以一個簡單同時又能反映處理思想的實際問題為例加以詳細闡述。如任意三個自然數按數值排序問題。這里首先向學生詳細介紹排序操作的基本步驟及可能使用的各種程序分支結構,之后引導鼓勵學生構造處理該問題的數學模型(即處理該問題所使用的各類數學表達式),其后由教師具體講授將其轉換為計算模型的具體過程,并在學生積極參與下完成程序代碼的設計,最后通過實驗數據的運行驗證和檢測程序。在獲得正確結果后,由教師針對上述問題的處理過程提出以下問題組織學生討論:其一,通過對上述問題的處理尋找歸納處理同類問題的編程規律;其二,通過對程序中語句(特別是關鍵語句)的位置調整而衍生的不同結果的分析,引導學生思考不同的分支結構(或條件嵌套結構)對程序結果的影響以及編制程序應具備的正確的邏輯思維方式;其三,針對問題提出更多的富有建設性的設計方案,實現一題多解;最后,通過執行過程的動態演示甄別出最佳的處理方案和質量上乘的程序代碼,進一步提升和培養解決實際問題的能力。
案例程序法 案例程序法是通過相關案例程序引導學生將零散的計算機語言要素組裝成程序,借助模仿手段掌握編程技巧,解決本專業的各種實際問題,并借此提高處理專業問題的綜合能力和個人綜合創新素質。實施程序教學法的基礎是首先建立一套體系完整、緊扣教學內容,又能兼顧各專業的共性和個性特殊需求的實用案例程序。運用案例程序法開展教學時,可根據學生實際綜合運用精講型和演示型的講授方法。對于程序設計的基本理論及設計步驟等比較難懂的問題,應結合專業實際應用,以精講為主,教學內容要緊扣程序設計課程的難點、重點并結合專業應用的典型實例精講細剖,以幫助學生掌握和了解程序開發設計技術以及在專業應用中的步驟、實現方法和處理過程。在此基礎上,為幫助學生進一步深刻認識正確的邏輯結構對程序功能的影響和作用,教師可通過演示法教學,動態演示大量與專業應用有關的成功程序案例,使學生了解和掌握實用程序的組成和設計技巧。并通過程序中語句位置變換所衍生的不同結果使學生更加直觀、生動地了解和探索程序的具體設計和實現過程,進一步升華學生對程序的認識以及程序設計在解決專業問題過程中的作用,為未來應用計算機程序設計知識處理實際問題奠定較扎實的基礎。
(二)建立和完善程序設計思想與專業實際應用有效銜接的長效機制
真正能夠將程序設計技術應用到解決專業實際問題的學生少之又少,大多數學生由于學習目的不明確,主動學習的熱情不高,仍處于應試狀態。糾其原因,在于沒有真正認識到所學知識對所從事專業的重要性,沒有形成將所學程序設計知識運用于專業實踐的有效機制。為從根本上幫助學生建立并完善將程序設計技術運用到實際應用中的長效機制,可在程序設計課程結束后通過以下措施加以實現:其一,在程序設計課程結束后,通過為學生提供必要的相關書籍和定期舉辦程序設計技術應用專題講座,以維持學生主動學習的熱情和興趣。其二,鼓勵學生主動閱讀大量與專業應用相關的典型程序案例,并在客觀條件允許的情況下為學生提供一些必要的上機實踐機會,借此提升和加強學生應用程序設計技術解決專業實際問題的能力和技巧。其三,指導學生通過多種途徑了解計算機程序設計技術在本專業應用的最新技術、最新發展動態以及所取得的最新應用成果等前沿信息。其四,激發學生結合專業需要研究開發一些滿足專業需求的應用程序或軟件,進一步提高處理專業實際問題的能力。另外,可結合專業需要定期舉行應用程序設計建模和編程大賽,以提高學生運用程序設計知識解決本專業實際問題的水平。其五,在專業教材編撰上,應盡可能多地融入計算機程序設計技術在本學科(專業)應用的各種技術和取得的成果,用以強化和督促學生對程序設計技術保持持久的學習興趣,通過不斷學習提升處理實際問題的綜合素質和能力。
將計算機技術運用到解決專業問題的實踐中,既是提升專業發展水平的客觀需求,又是社會對復合型、創新型人才的客觀需要。因此,必須不斷強化和提升學生的創新思維意識,并引導他們自覺運用所學知識服務于社會實踐,自覺搭建程序設計理論與實際應用有效銜接的橋梁。只有這樣,才能做到學有所得,才能不斷提升學生的綜合素質和處理問題的綜合創新能力。
[1]賴曉晨.程序設計課程創新教學模式探索[J].中國大學教學,2008,(7):42-44.
[2]劉偉.以“問題”為著眼點,積極推行研究性教學[J].中國高等教育,2010,(1):48-49.
[3]馬致明.感悟VB程序設計教學[J].中國大學教學,2008,(7):39-41.
[4]何欽銘,等.計算機基礎教學的核心任務是計算思維能力的培養——《九校聯盟(C9)計算機基礎教學發展戰略聯合聲明》解讀[OL].(2010-10-22).(2011-3-28).http://www.crct.edu.cn/University/ detail.aspx?id=1198.
[5]解永剛.關于Visual FoxPro的案例的教學方法[J].昆明大學學報,2007,(1):59-60.
G712
A
1672-5727(2012)04-0139-02
朱勇(1960—),男,遼寧沈陽人,沈陽農業大學副教授,主要從事計算機基礎教學及教學法研究。