摘要:該文通過分析計算機專業《高級語言程序設計》課程教學存在的問題,闡述了直覺思維在高級語言教學中的重要作用,提出了教學過程中直覺思維的培養方法。
關鍵詞:直覺思維;高級語言;培養
Disscussin the Culture of Intuitive Thinking in the Advanced Languange Teaching
LIAO Ling
(Guangzhou Auto College South China University of Technology, Guangzhou 510800, China)
Abstract: This paper analyzes the problems of \"Advanced Language Programming\" teaching in the computer profession. It describs the important role of intuitive thinking in the advanced language teaching, and puts forward the process of teaching methods in the cultivation of intuitive thinking.
Key words: intuitive thinking; advanced language; cultivation
1 高級語言教學存在的問題
《高級語言程序設計》(C++)是華南理工大學廣州汽車學院為計算機專業一年級新生開設的專業基礎課程。本課程是計算機相關專業中很重要的職業技能課,是一門理論性、實踐性和實用性都很強的課程。本學院一直以培養應用型人才作為教學目標,所以該課程的教學目的不僅要讓學生掌握軟件開發的有關理論,更重要的是培養學生的實戰技能和職業素質,使學生一畢業就能夠在各個崗位施展自己的才能。
根據多年計算機語言教學的經驗和學生學習狀況的分析,筆者發現計算機專業學生在學習《高級語言程序設計》課程時主要存在以下幾個問題:
1)急于求成,喪失興趣。
由于信息技術飛速發展,計算機已經走進了千家萬戶,學生對于許多軟件有所了解。所以在剛接觸程序設計語言時,學生對其產生了濃厚的興趣,迫切希望借助高級語言解決實際中存在的問題。然而,語言中乏味的語法和頻繁出現的編程錯誤讓學生在學習中挫折連連,久而久之對學習程序設計產生了畏懼感和排斥感,初衷的學習興趣也隨之遞減。
2)學時數偏少,基礎知識不扎實。
利用高級語言進行編程,從事軟件開發,必須對該語言中的字符集、詞匯和語法有所了解。但目前高級語言程序設計課程的理論學時數為48學時,上機學時為16學時。對于C++教學來說只能介紹最基本的類C語言知識如數據類型、程序控制結構、函數和數組。而對于C++中的精華章節如類與對象、繼承、輸入輸出流[2]等只能讓學生采取自主學習的方式。并且在有限的48學時內,對于許多的知識概念需要學生在課后投入一定的精力和時間加以鞏固,這無疑加大了學生的學習難度,從而導致學生掌握基礎知識不牢固。
3)缺乏學習的主動性,動手能力差。
由于受高中應試教育的影響,學生自主學習意識不足,依賴性較強,部分學生仍未能擺脫高中應試教育的影響。在整個學習過程中只是被動地去理解和記憶老師講授的知識,對于提出的問題不會主動進行分析思考。
學生學習語言的目的只是為了應付考試,而當自己動手編程時,發現根本無從下手,無法從能力的培養和提高上得到鍛煉。
4)教學方法不當。
近年來,雖然教學手段已經實現多媒體化,但是教學方式還大多沿用傳統的教學方法。即教師根據制作的課件講授高級語言每章的基礎知識基本概念,然后通過舉例加以鞏固。學生在這種教學模式下往往處于被動狀態,使得整個課堂氣氛不夠活躍,從而造成學生被動接受書本知識,死記硬背知識要點,喪失了對學習的興趣,束縛了學生的思維的發展。
2 直覺思維在高級語言教學中的作用
開設高級語言課程不僅是傳授語言的基礎知識,更重要的是培養和訓練學生實踐技能,掌握語言編程的思維方法,提高編程的思維能力,為后續課程的學習打下良好的基礎。
為了解決高級語言在教學過程中存在的問題,完成學院的既定目標,應當從改革教學方法方面入手。而教學方法改革的核心在于學生在學習過程中積極主動性的發展。要改變課程過于強調接受學習、死記硬背、機械訓練的現狀,提倡學生主動參與、勤于動手、樂于探究,培養學生搜集和處理問題的能力、分析和解決問題的能力以及交流與合作的能力。
筆者通過自己的實踐教學經驗,認識到學生主動性的培養與其直覺思維的提高是密不可分的。
2.1 直覺思維的概念
直覺思維是非理性思維中的一種,是基于實踐和知識在思維高度活動中對客觀事物進行迅速直接的綜合判斷的思維方式[3]。其主要的特點在于不受一般思維規律的束縛,跳躍性較強,直觀的揭示事物的本質特征,具有非邏輯性、跳躍性、直接性、突發性,往往對傳統體系有重大的突破。
2.2 直覺思維在教學中的作用
在高級語言教學中,發展思維能力是至關重要的。傳統的教學偏重于學生的邏輯思維訓練,而忽略培養學生的創新思維能力,尤其是忽略了直覺思維的培養。直覺思維并不是憑空產生的,它是以已有的語法知識、認知水平、編程經驗和技能為根據,以大量觀察資料為基礎,對編程問題提出合理的猜想和假設或突然領悟的思維過程。目的是提高學生的編程能力和自主學習觀念,使學生形成良好的思維品質。
直覺思維在高級語言教學中,起著重要的作用:
1)有助于培養學生思維的批判性。
思維的批判性是指在進行思維時,善于發現問題,提出質疑,不盲從附和,不盲目接受。學生在學習高級語言知識時,同樣也離不開思維的批判性。比如,在學習函數參數傳遞的三種機制時,值傳遞過程中形參值的改變不會影響實參,有些學生只是盲目的把這一結果背下來,而有部分學生憑直覺提出質疑——為什么這種方法不能改變實參的值。進一步,教師通過畫內存單元示意圖可以告訴學生:實參和形參是兩個不同的內存單元,在值傳遞過程中,實參在把自己的值放到了形參的內存單元后,與形參沒有任何聯系了,故在自定義函數中對形參的操作不會影響實參。不講清楚這一點,學生就不可能明白值傳遞的本質,在學習后面兩種傳遞機制時也會存在問題。因此,學生如果保持一種批判性的學習態度,能夠較容易地掌握語言知識,并能提高學習的主動性。
2)有助于培養學生思維的靈活性。
直覺思維的本質決定了它是一種自由的思維方式,不需要按照嚴格的模式和步驟來解決問題。對學生來說,它是一種比較隨意性的思維模式,符合現代學生的思維習慣,拓寬了思考空間,使思維得到充分的發揮,有利于提高學生思維的靈活性。在高級語言中,解決某個問題的方法并不是唯一的,如在解決選擇性問題時既可以采用if語句也可以采用switch語句,甚至是兩者的結合。在講授選擇結構時,教師應當鼓勵學生運用多種方法來解決編程問題。
3)有助于培養學生思維的敏捷性。
直覺思維是突然的、快速出現的,這樣快速地對編程問題方法做出肯定或否定,可以訓練思維的敏捷性。在高級語言教學中,這一點是非常重要的,敏捷性的培養可以幫助學生快速的解決編程問題。如在練習循環結構時,有些學生能夠快速地找到問題的突破口,迅速的解決老師布置的問題,而有些學生花了數小時也找不到解決問題的方法,從而形成了鮮明的對比。因此,教師在平時的教學中應當注意學生思維敏捷性的培養,讓學生在以后的軟件開發中達到事半功倍的效果。
3 如何培養直覺思維
3.1 構建扎實的知識體系
直覺不是靠機遇,直覺的獲得雖然具有偶然性,但決不是無緣無故的憑空想象,而是以扎實的知識為基礎的。高級語言中,解決問題方法固然重要,但基本的語法知識也是必不可少的。如果不懂得這些語法知識,程序就無法得到印證,也開發不出優秀的軟件。所以,在教學過程當中,應當注意學生對語言基礎知識的掌握。當然教師要摒棄傳統的“填鴨式”教學方法,即先講授大量枯燥乏味的語句符號,再通過舉例進行說明,這樣的教學方法會直接影響課堂教學的效果。我們應當采取以案例教學為主線的方式,即先提出具體問題,引導學生進行算法的設計,從而提出解決這一問題用到的新的知識點,最后再通過舉例加以鞏固。
3.2 培養學生的多向思維
由于直覺思維活動不受條條框框的束縛,從而能夠使學生在面對編程問題時能夠自由地想出各種解決方法。編程能力的培養是一個漫長的過程,需要教師的長期引導。教學過程中教師可設置一些實驗題目,然后留給學生充分的時間,讓學生去觀察分析,引導學生利用所學知識多方位思考并編寫程序,從而去誘發學生的直覺思維;另外通過給出一些程序并在程序中設置一些問題,鼓勵學生各抒己見,通過實際操作,進行學習和驗證,促使學生主動發現新知,這不僅能激發學生的學習興趣,而且能加深對知識的理解,學生們通過仔細地觀察,形成自己獨到的見解, 從而提高學生的多向思維能力和創新意識。
3.3 設置意境,提高學生的學習興趣
在教學過程中教師應當把主動權交給學生,讓學生參與程序的設計過程,對學生的大膽設想要給予充分的肯定,培養學生的直覺思維。另外教師在教學中應及時因勢利導,幫助學生解除心中的疑惑,讓學生對自己的直覺產生成功的喜悅。興趣是學好高級語言的前提,因此在教學中,教師可利用程序設計的方式來展示一些趣味的內容,來誘導學生的興趣,引導其去研究和實踐。教師還可通過視頻、名師講座等多樣化的教學方式,讓學生開闊視野,提高學生學習計算機知識的興趣。
4 總結
高級語言是用來開發軟件的一種工具,學習語言的目的不僅僅是為了掌握它的語法和概念,關鍵是要培養應用語言的能力,學生學好高級語言,必須要注重直覺思維的培養,不但要提高自己思維品質,打破常規的思維定勢,敢于嘗試、勇于創新。而且要堅信“天生我材必有用”,敢于面對挫折,樹立學無止境、創無止境的思想。
參考文獻:
[1] 蘇成.《高級語言程序設計》課程改革設想[J].理工高教研究,2002,21(5):94-95.
[2] 周靄如,林偉健.C++程序設計基礎[M].2版.北京:電子工業出版社,2006.
[3] 王敏.直覺思維的文化意蘊[J].人文雜志,1998(3).
[4] 李杰.重視課本習題挖掘 培養數學直覺思維[J].數學教學研究,2009,28(3):13-16.