前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇計算機程序設(shè)計基礎(chǔ)范文,相信會為您的寫作帶來幫助,發(fā)現(xiàn)更多的寫作思路和靈感。
摘要:“計算機程序設(shè)計語言”課程是計算機科學(xué)與技術(shù)學(xué)科核心的課程之一,極大地影響著學(xué)生對計算機領(lǐng)域的理解和興趣。本文針對教學(xué)過程中存在的問題,提出了層次化教學(xué)目標思想。以面向?qū)ο笳Z言C++為例,介紹基于層次化教學(xué)目標體系的具體思想和內(nèi)容,并提出與之相適用的課程及實驗設(shè)計,達到優(yōu)化教學(xué)方法,提高教學(xué)質(zhì)量的目的。
關(guān)鍵詞:計算機程序設(shè)計語言;層次化教學(xué);C++
中圖分類號:G642
文獻標識碼:A
1“計算機程序設(shè)計語言”教學(xué)現(xiàn)狀
“計算機程序設(shè)計語言”是普通高校計算機教育的基本專業(yè)課程,在計算機領(lǐng)域的各個專業(yè)的課程體系中都處于核心的地位。這門課程不僅可使學(xué)生獲得基本的程序設(shè)計能力及鍛煉學(xué)生的邏輯思維能力,它還極大地影響著學(xué)生對計算機領(lǐng)域的興趣和理解,對引導(dǎo)和培養(yǎng)學(xué)生在計算機工程及理論方面的研究興趣起著先導(dǎo)性和基礎(chǔ)性的作用。因此,“計算機程序設(shè)計語言”的教學(xué)質(zhì)量成為影響大學(xué)本科計算機教學(xué)質(zhì)量和效果的一個關(guān)鍵的因素。
影響課程教學(xué)質(zhì)量的主要三個因素為教學(xué)內(nèi)容、教學(xué)方法和實驗設(shè)計。當前,大部分教師受傳統(tǒng)教學(xué)模式的影響,教學(xué)的重點都放在程序語言的基本語法的講授,課堂所設(shè)計的程序?qū)嵗蟛糠謬@語法規(guī)則的演示和說明,這種模式同樣也影響到實驗環(huán)節(jié)的設(shè)計。這種就事論事,形而上學(xué)的教學(xué)模式具有許多明顯的弊端,主要體現(xiàn)在以下幾方面:
(1) 不利于培養(yǎng)學(xué)生的學(xué)習(xí)興趣
許多從事程序設(shè)計語言教學(xué)的教師(包括筆者)都有這樣的感受:每講授一門新的程序設(shè)計語言課,初期學(xué)生都抱著積極,對獲取知識的極大熱情投入課程的學(xué)習(xí),但隨著教學(xué)過程的深入,這種熱情往往不能持久。導(dǎo)致這種局面的原因固然有教師本身的教學(xué)方法和教學(xué)手段的缺陷,但根本原因還是教學(xué)內(nèi)容的設(shè)置不科學(xué)。在單純以講授語法規(guī)則這種教學(xué)模式下,學(xué)生難以保持長久的學(xué)習(xí)興趣和動力。
(2) 不利于學(xué)生建立綜合化,系統(tǒng)化的知識體系
程序設(shè)計語言是表達設(shè)計者思想和計算機計算邏輯的符號系統(tǒng),具有多層面、多視角的內(nèi)涵。要把學(xué)生培養(yǎng)為具有高素質(zhì)的程序設(shè)計人員,僅僅熟悉沒有精神的符號及符號規(guī)則遠遠不夠,這需要學(xué)生具備設(shè)計高質(zhì)量程序的綜合化的知識體系,而當前的程序設(shè)計語言的教學(xué)現(xiàn)狀并不能滿足這種需求。
(3) 不利于培養(yǎng)學(xué)生解決實際問題的綜合能力及創(chuàng)新意識和思想
當前,素質(zhì)教育成為各級教育系統(tǒng),包括高等院校所關(guān)注的熱點,知識高等院校所關(guān)注的“素質(zhì)”內(nèi)涵不同。筆者認為高校大學(xué)畢業(yè)生應(yīng)具備的素質(zhì)包括:綜合化、系統(tǒng)化的專業(yè)知識體系;應(yīng)有已有的知識體系解決實際問題的能力;具有創(chuàng)新的意識和思想??傮w而言,大部分教師對程序設(shè)計語言課程所采取的教學(xué)不利于這種素質(zhì)的培養(yǎng)。
針對這種現(xiàn)狀,結(jié)合我國高等教育發(fā)展的現(xiàn)狀,本文提出程序設(shè)計語言的層次化教學(xué)目標的思想,并以面向?qū)ο蟪绦蛘Z言為例,論述在層次化教學(xué)目標驅(qū)動下的課程設(shè)計。
2層次化的教學(xué)目標
各項教學(xué)活動有效展開的基本條件是合理的教學(xué)目標的確定,但單一的教學(xué)目標并不能適用當前中國復(fù)雜的高等教育現(xiàn)狀。社會經(jīng)濟的快速發(fā)展產(chǎn)生了明顯的多類型、層次化的人才需求,這種趨勢在各類軟件公司里表現(xiàn)得尤其明顯。為了適用這種人才需求的轉(zhuǎn)變,高等教育領(lǐng)域在這些年相應(yīng)地發(fā)生了巨大的變化,各種類型、各種不同層次的教育機構(gòu)大量出現(xiàn),改變了過去高等教育機構(gòu)單純負責培養(yǎng)具有從事復(fù)雜腦力勞動的高級專業(yè)人才的狀況。這些變化最終體現(xiàn)為教師的工作,體現(xiàn)為教師針對不同的教學(xué)對象所制定的教學(xué)目標體系。
當前,由于社會信息化的發(fā)展,各類計算機類課程已經(jīng)滲透到各個學(xué)科,例如筆者所在的蘇州大學(xué),幾乎所有的院系都設(shè)置了信息技術(shù)類的有關(guān)課程,大約超過一半的院系設(shè)置了“計算機程序設(shè)計語言”的課程,因此“計算機語言設(shè)計課程”的教學(xué)質(zhì)量是總體教學(xué)質(zhì)量評估的重要組成部分。筆者多年來一直在蘇州大學(xué)承擔程序設(shè)計語言的課程,包括一類本科計算機專業(yè)基礎(chǔ)課程、二類本科專業(yè)基礎(chǔ)課和公共基礎(chǔ)課程。大量的教學(xué)實踐表明單一的教學(xué)目標不能適用多樣化的教學(xué)對象、多樣化的人才需求和程序設(shè)計語言知識邏輯在廣度和深度方面所具有的層次化的特點。下面將論述程序設(shè)計語言課程的層次化的教學(xué)目標體系及各層的具體內(nèi)涵。
2.1低級目標
該目標要求掌握標準化的程序語言語法體系,以學(xué)生掌握基本的標準語法體系為基本要求,并能初步應(yīng)用語言開發(fā)較小型的簡單應(yīng)用程序,具備初步的程序設(shè)計能力。低級目標要使得學(xué)生對所學(xué)知識“知其然”,課程教學(xué)內(nèi)容主要圍繞標準的語法規(guī)則,課堂和實驗環(huán)節(jié)所選定的程序?qū)嵗蠖鄧@著驗證和演示語法規(guī)則及語法規(guī)則之間的聯(lián)系進行設(shè)計。在以低級目標驅(qū)動的教學(xué)中,因為重在基本知識的傳授,因此核心教學(xué)內(nèi)容的選擇是第一位的要素。當然每門程序設(shè)計語言課程都有其固有的核心內(nèi)容,例如,在C++語言中,核心的教學(xué)內(nèi)容為:面向?qū)ο蟮母拍?、繼承、多態(tài)、模板及異常等,即使如此,還需要根據(jù)教學(xué)對象,對教學(xué)內(nèi)容和授課方式進行選擇和取舍??偟脑瓌t是圍繞重點概念和知識采取“精講多練”和“突出重點”的方式進行教學(xué)。
2.2中級目標
中級目標則要要求學(xué)生圍繞目標程序設(shè)計語言,具備系統(tǒng)化的程序設(shè)計方法和技巧,逐漸使學(xué)生“知其所以然”。該層目標不僅要讓學(xué)生掌握“語法”,還要讓學(xué)生掌握“語義”;不僅讓學(xué)生掌握語言本身,還要讓學(xué)生擴展思維,了解、理解更多的外延的知識;不僅要讓學(xué)生掌握基本的程序設(shè)計方法,要讓學(xué)生初步掌握系統(tǒng)化的程序設(shè)計方法和建立起程序質(zhì)量的觀點。程序設(shè)計語言的外延知識涉及計算機專業(yè)許多重要的核心課程,包括編譯原理、算法分析與設(shè)計、計算機組成與結(jié)構(gòu)、離散數(shù)學(xué)、數(shù)據(jù)結(jié)構(gòu)和軟件工程等。當然,不可能指望通過一門課程的學(xué)習(xí),使學(xué)生有效地、完整地掌握所有這些知識,只能使與實現(xiàn)中級目標有緊密聯(lián)系的知識能滲入到重點的知識講授和實驗的安排中。
2.3高級目標
不管是初級目標的“知其然”,還是中級目標的“知其所以然”,都是知識學(xué)習(xí),而高級目標階段的重點是運用知識,體驗知識,要求學(xué)生具備利用目標程序設(shè)計語言解決一定復(fù)雜度和規(guī)模的實際問題的能力,建立抽象的程序設(shè)計思想、方法和質(zhì)量的觀點。高級目標的教學(xué)內(nèi)容的重點在如何在所講授的語言框架里解決一定規(guī)模的應(yīng)用問題,并從具體的實現(xiàn)里提煉出抽象的設(shè)計思想,分析實現(xiàn)的質(zhì)量,總結(jié)好的實現(xiàn)方法和設(shè)計思想。
確立了教學(xué)目標,下一步的焦點為圍繞實現(xiàn)具體的教學(xué)目標,制定各教學(xué)環(huán)節(jié)的具體的教學(xué)內(nèi)容和教學(xué)手段,主要包括課堂教學(xué)環(huán)節(jié)和上機實踐環(huán)節(jié)。結(jié)合筆者的教學(xué)實踐,下一節(jié)將圍繞這方面的內(nèi)容展開論述。
3層次化的目標引導(dǎo)的課程設(shè)計
C++語言因其強大的功能及廣泛的實用性而日益成為當前高校理工類專業(yè)程序設(shè)計的主流教學(xué)語言,因此本節(jié)將以C++為例,討論層次化教學(xué)目標思想如何在教學(xué)實踐中得到貫徹。C++程序設(shè)計語言的教學(xué)涉及課堂教學(xué)和實踐教學(xué)兩個環(huán)節(jié),下面將就這兩方面展開論述。
3.1課堂教學(xué)
確定目標課程的教學(xué)內(nèi)容是開展有效的課堂教學(xué),取得既定的教學(xué)目標的前提和基本要求。針對本文所提出的層次化的教學(xué)目標體系的基本內(nèi)涵,C++程序語言的課堂教學(xué)內(nèi)容在深度和廣度上也應(yīng)該展現(xiàn)出層次化,遞進性的特點。
在低級目標中,掌握本程序語言的基本語法體系是最重要的目標,在教學(xué)內(nèi)容的設(shè)計上,應(yīng)確定語言的最核心最重要的語法現(xiàn)象。過程化程序設(shè)計向?qū)ο蠡绦蛟O(shè)計是C++語言的最重要的特征,因此“對象”和“類”,以及由此產(chǎn)生的“繼承”,“封裝”,“多態(tài)”和“異?!?成為最核心的教學(xué)內(nèi)容。在教學(xué)時應(yīng)集中注意力于這些類對象的關(guān)鍵個性技術(shù),圍繞關(guān)鍵技術(shù)“精講多練”,使學(xué)生深刻理解面向?qū)ο驝++的這些關(guān)鍵技術(shù);要有重點,不能面面俱到,有所失,才能有所得。
低級目標是為了使學(xué)生掌握知識,使其“知其然”,那么中級目標則要逐漸使受教育者“知其所以然”,教學(xué)的重點從對語法的訓(xùn)練轉(zhuǎn)向?qū)φZ義的理解,包括靜態(tài)結(jié)構(gòu)語義和程序執(zhí)行語義。在C++的教學(xué)中,以C++對象模型作為教學(xué)內(nèi)容的重點,通過從靜態(tài)的程序代碼結(jié)構(gòu)和運行的程序狀態(tài)兩方面展開課堂教學(xué),這樣在知識語言的“所以然”的基礎(chǔ)上,學(xué)生不僅知道什么是“多態(tài)”,并且知識“多態(tài)”是怎么實現(xiàn)的;什么是運行時類型檢查(RTTI),運行時類型檢查能提供什么程序設(shè)計策略等;許多的外延知識能沿課堂展開,例如編譯原理、算法分析與設(shè)計等。由Stanley B. Lippman所著的《Inside The C++ Object Model》為我們設(shè)計課程材料提供了方向性的指導(dǎo)。
低級目標和中級目標都是針對知識的學(xué)習(xí),而高級目標則針對知識運用,提高運用知識進行設(shè)計的能力。此層次涉及知識的學(xué)習(xí)、理解和綜合運用,要在有限的時間內(nèi),實現(xiàn)教學(xué)目標,在課程教學(xué)內(nèi)容的選取和設(shè)計及課時的安排上,具有一定的難度,對教者和學(xué)者都具有一定的挑戰(zhàn)性?!霸O(shè)計模式”可以成為本層次的基本或延展性的教學(xué)內(nèi)容。設(shè)計模式雖然不與具體的設(shè)計語言有著必然的、密切的聯(lián)系,但事實上各種技術(shù)性、或純教學(xué)性的書籍中,都把面向?qū)ο笳Z言作為實現(xiàn)各種設(shè)計思想的不二選擇。通過設(shè)計模式內(nèi)容的講授,可以使得學(xué)生對面向?qū)ο蟮幕A(chǔ)知識有更深刻的理解,同時增強靈活運用所學(xué)知識的能力,體驗面向?qū)ο蟪绦蛟O(shè)計方法學(xué)所帶來的設(shè)計上的“美”,激發(fā)學(xué)生的創(chuàng)造力。
當然,上面針對課堂教學(xué)內(nèi)容的論述僅僅進行了基本的界定和論述,需要通過下面幾方面來貫徹實施,以達到各個層次的教學(xué)目標:
(1) 通過教者的努力,設(shè)計出豐富的、具體的課程素材;
(2) 針對不同的教學(xué)內(nèi)容,設(shè)計多樣化的教學(xué)手段和方法;
(3) 針對不同的教學(xué)內(nèi)容布置合理的作業(yè)和考核方法。
3.2實踐教學(xué)
在程序設(shè)計語言的教學(xué)中,課堂教學(xué)和上機實踐教學(xué)是并重的環(huán)節(jié),不可偏廢,一起決定著教學(xué)的質(zhì)量和教學(xué)目標的取得。如何設(shè)計安排上機環(huán)節(jié)通過大量的教學(xué)實踐,已經(jīng)總結(jié)出了大量的行之有效的方法。下文就實驗內(nèi)容及實驗的組織形式進行一些必要的、有益的討論。
結(jié)合課堂內(nèi)容,以往的實踐環(huán)節(jié)主要由學(xué)生編制一些小的程序,進行語法現(xiàn)象的演示及驗證。但筆者通過大量的教學(xué)實踐發(fā)現(xiàn):這種普遍采用的,且行之有效的方法,對于學(xué)生鞏固知識,提高調(diào)試程序的能力和技巧具有顯著的效果。但隨著教學(xué)的深入,這種方法也顯示出種種的弊端,例如:學(xué)生專著于知識點,必然缺乏對知識的整體把握;學(xué)生容不易形成良好的編程習(xí)慣等。針對這種情況,筆者在實踐的環(huán)節(jié)中,增加“讀程序”的分量。教師提供一些高質(zhì)量的程序范例讓學(xué)生進行閱讀、理解,并對范例的程序風(fēng)格和設(shè)計方法進行總結(jié)比較,以提高學(xué)者的綜合能力,尤其是到了后期,所提供的范例更具有綜合性、全面性和示范性,能極大地提高學(xué)生掌握知識的深度和廣度,激發(fā)他們的學(xué)習(xí)熱情。
在實踐人員的組織形式上,一般在程序設(shè)計語言的教學(xué)中,都是學(xué)生獨立進行的。在教學(xué)實踐中,也可引進一些軟件開發(fā)中的方法,比如采用小組制的形式,根據(jù)實踐內(nèi)容的不同,小組或大或小。即使是在低層目標為導(dǎo)向的教學(xué)中,也可采用小組的方法進行實踐環(huán)節(jié)的教學(xué),不過此時小組人數(shù)不宜過多,最佳數(shù)目為二人。采用這樣的方法,有以下的益處:
(1) 便于學(xué)生進行交流,以達到取長補短的目的;
(2) 提高教學(xué)效率,以較少教學(xué)活動取得同樣甚至更好的效果;
(3) 培養(yǎng)團隊合作精神等。
在以中級和高級目標為導(dǎo)向的教學(xué)中,實踐環(huán)節(jié)應(yīng)從語法演示和驗證為重點轉(zhuǎn)變?yōu)橐灾R的理解和知識的運用為重點,因此除了結(jié)合教學(xué)內(nèi)容設(shè)計相應(yīng)的實踐內(nèi)容外,最顯著的特點是增加綜合性的項目開發(fā)環(huán)節(jié),以達到知識的綜合掌握和運用。
當前以語法的演示和驗證目的實踐環(huán)節(jié)的設(shè)計具有大量的教學(xué)實踐可資借鑒和學(xué)習(xí),但針對更高兩層教學(xué)目標的實踐環(huán)節(jié)則缺乏有效的素材和經(jīng)驗可以利用,需要通過進一步的教學(xué)實踐活動加以積累和總結(jié)。當前的一些做法是借用開發(fā)一個具有一定規(guī)模的項目來彌補純語法的演示和驗證實踐方法的不足。
4結(jié)論
本文針對當前在程序設(shè)計語言的教學(xué)中存在的問題,提出了多層次教學(xué)目標的觀念,并介紹了各層次目標的具體內(nèi)容和以此目標為導(dǎo)向的主要的教學(xué)環(huán)節(jié)的設(shè)計。各個層次的教學(xué)內(nèi)容和教學(xué)方法手段并不是彼此割裂的,如何針對各種不同的教學(xué)對象進行合理的課程設(shè)計,以提高教學(xué)質(zhì)量有待于進一步的大量的教學(xué)實踐活動。下一步最主要的工作總結(jié)探索各種教學(xué)資源以及相應(yīng)的考核方法,尤其是用于中級目標和高級目標為導(dǎo)向的教學(xué)活動。
參考文獻:
[1] 吳乃陵. 面向?qū)ο驝++程序設(shè)計教學(xué)改革[J]. 電氣電子教學(xué)學(xué)報,2003,25(2):9-11.
[2] 徐宏,聶影,黃征華,等. 計算機程序設(shè)計語言的教學(xué)探索[J]. 教學(xué)研究,2004(2):89-93.
[3] 沈軍. 程序設(shè)計語言類課程的教學(xué)思路研究[J]. 高等工程教育研究,2001(1):80-82.
[4] Stanley B. Lippman. Inside The C++ Object Model [M]. Addison-Wesley Publisher, 1996.
[5] Erich Gamma, Richard Helm, Ralph Johnson ,et al. Design Pattern: Elements of Reusable Object Oriented Software [M]. Addison-Wesley Publisher,1995.
Research on Teaching of Programming Language
CHEN Dong-huo,YAO Wang-shu
(School of Computer Science and Technology, Soochow University, Suzhou 215006, China )
【關(guān)鍵詞】程序設(shè)計基礎(chǔ);計算思維;教學(xué)效果
0 引言
程序設(shè)計基礎(chǔ)作為各個高校面向新生普遍開設(shè)的一門信息類基礎(chǔ)課程,以高級編程語言為平臺,介紹計算機程序設(shè)計的思想和方法,既為后續(xù)相關(guān)課程的學(xué)習(xí)打下基礎(chǔ),也有利于幫助學(xué)生理解基本計算思想和方法,培養(yǎng)應(yīng)用計算機求解問題的能力。該課程的教學(xué)效果無論是對學(xué)生信息素養(yǎng)的提升,還是對學(xué)生后續(xù)專業(yè)課程的學(xué)習(xí)都具有極為重要的影響。
入學(xué)新生普遍沒有接受過系統(tǒng)的程序設(shè)計訓(xùn)練,脫離以往主要依靠學(xué)校和家長督促的學(xué)習(xí)環(huán)境,自主學(xué)習(xí)意識薄弱,自主學(xué)習(xí)能力較差。由于這些因素的影響,程序設(shè)計基礎(chǔ)課程的教學(xué)效果往往并不理想,如何提高程序設(shè)計基礎(chǔ)課程的教學(xué)效果,培養(yǎng)學(xué)生應(yīng)用計算機解決問題的能力成為普遍關(guān)注的問題。
2006年3月,美國卡內(nèi)基梅隆大學(xué)周以真教授(Jeannette M.Wing)在權(quán)威刊物《Communications of the ACM》上撰文Computational Thinking,首次清晰系統(tǒng)明確提出了計算思維(Computational Thinking)的概念。計算思維是運用計算機科學(xué)的基礎(chǔ)概念去求解問題、系統(tǒng)設(shè)計以及人類行為理解等涵蓋計算機科學(xué)之廣度的一系列思維活動[1]。計算思維的本質(zhì)是抽象(Abstraction)和自動化(Automation),而這兩個內(nèi)容恰好反映了計算的根本問題,即什么能被有效地自動進行。它雖然具有計算機科學(xué)的許多特征,但是計算思維本身并不是計算機科學(xué)的專屬。計算思維代表著一種普遍的態(tài)度和一類普適的技能,每一個人都應(yīng)熱心于它的學(xué)習(xí)和運用。
計算思維概念一經(jīng)問世,得到了國內(nèi)外科學(xué)界和教育界的廣泛關(guān)注和認同[2-3]?!坝嬎闼季S”不是狹義的計算機編程,而是運用計算的基本思想概念去求解問題、設(shè)計系統(tǒng)和理解人類的行為; 如同“讀、寫、算”能力一樣, 它是所有人都應(yīng)具備的思維能力。
1 程序設(shè)計基礎(chǔ)課程教學(xué)中存在的問題
1.1 重視語言語法學(xué)習(xí),忽視程序設(shè)計能力的培養(yǎng)
由于程序設(shè)計由高級程序設(shè)計語言來描述,實際教學(xué)中容易注重語言語法的學(xué)習(xí),忽視算法設(shè)計和程序結(jié)構(gòu)的構(gòu)建。傳統(tǒng)課程評價和課程考試也偏重于語言語法規(guī)則的考察,背離了該課程最初的教學(xué)目標。學(xué)生往往熟悉語言的語法規(guī)則卻不能針對某個具體問題順利編寫出基本的程序,沒有使用計算機解決問題的思維習(xí)慣。
1.2 上機實踐環(huán)節(jié)薄弱
程序設(shè)計課程中一個重要的環(huán)節(jié)是上機實踐。由于課程學(xué)時等因素的限制,學(xué)生上機調(diào)試程序的機會較少,加之重理論輕實踐的固有觀念,學(xué)生在學(xué)習(xí)過程中常常以看懂書上的程序為目標,能夠?qū)懗龀绦虼a,卻不能順利的調(diào)試運行程序,導(dǎo)致對課程缺乏興趣,產(chǎn)生畏難情緒。
1.3 教材和教法不能適應(yīng)當前教學(xué)的要求
程序設(shè)計基礎(chǔ)課程相關(guān)的傳統(tǒng)教材往往僅專注于對編程語言的語法細節(jié)進行詳細講解,而忽視了對學(xué)生本身程序設(shè)計能力的培養(yǎng)。教學(xué)方法也以滿堂灌輸式教學(xué)為主,課堂氣氛較沉悶,沒有在互動中滲透對學(xué)生思維能力的培養(yǎng),調(diào)動他們的學(xué)習(xí)熱情。
2 融合計算思維培養(yǎng)的程序設(shè)計基礎(chǔ)教學(xué)
2.1 明確學(xué)習(xí)目的
在授課之初明確課程的目標和意義,學(xué)習(xí)程序設(shè)計不僅獲得專業(yè)知識,而且能夠提高邏輯思維能力、計算思維能力等,潛移默化中提高學(xué)生的綜合素質(zhì),促進其他課程的學(xué)習(xí)。其中,計算思維的培養(yǎng)將帶給學(xué)生受益終身的問題求解能力。明確了課程目標和學(xué)習(xí)目的,有助于學(xué)生端正學(xué)習(xí)態(tài)度,增強學(xué)習(xí)積極性。
2.2 分級教學(xué),不同程度融合計算思維
由于不同學(xué)生的計算機基礎(chǔ)差異較大,所以在進行程序設(shè)計基礎(chǔ)課程教學(xué)時,通過對學(xué)生的計算機基礎(chǔ)和編程知識進行摸底測試,了解學(xué)生實際情況,進行分級教學(xué)。對于基礎(chǔ)好的學(xué)生,在完成教學(xué)大綱全部授課內(nèi)容的同時,布置其他基于計算思維案例的實驗內(nèi)容,以強化計算思維能力的培養(yǎng);其他學(xué)生重點完成教學(xué)大綱內(nèi)的知識學(xué)習(xí),強化問題求解能力的培養(yǎng)。
2.3 分組互助,達到雙贏
在問題討論和上機實驗時,將不同程度的學(xué)生組成學(xué)習(xí)小組,遇到問題,小組內(nèi)的學(xué)生首先進行溝通交流,尋找解決方法,這個交流過程不H幫助程度較弱的學(xué)生掌握了學(xué)習(xí)的方法,提高了學(xué)習(xí)效率,也有助于程度較好的學(xué)生鞏固已有知識,開闊思路,提高學(xué)習(xí)興趣。分組互助的形式比傳統(tǒng)的學(xué)習(xí)形式能更好的促進計算思維的滲透,使學(xué)生充分發(fā)揮主觀能動性,計算思維能力隨著實際問題的解決也得到了提高。
2.4 任務(wù)驅(qū)動,課內(nèi)外聯(lián)動
在課堂上布置學(xué)習(xí)任務(wù),學(xué)生課下進行文獻檢索和學(xué)習(xí),組織學(xué)生將自學(xué)內(nèi)容總結(jié)歸納后在課堂上討論、講解。這一過程形成課內(nèi)外教學(xué)活動的聯(lián)動,學(xué)生不僅掌握了學(xué)習(xí)內(nèi)容,而且學(xué)會了如何根據(jù)要求來進行資料的檢索分析和有價值信息的提取總結(jié)。這樣的方式也從一定程度上解決了程序設(shè)計課程教學(xué)內(nèi)容多、課時少的矛盾。
2.5 案例式教學(xué)滲透計算思維
計算思維與程序設(shè)計基礎(chǔ)課程教學(xué)的結(jié)合主要體現(xiàn)在兩個方面:首先將抽象和自動化兩個計算思維核心思想貫穿于整個教學(xué)活動過程中,其次根據(jù)所需要講授的具體知識點適時地引入計算思維中其他基本概念和思維方法。針對主要教學(xué)模塊和核心內(nèi)容,設(shè)計以問題引導(dǎo)反映計算思維思想的相關(guān)教學(xué)案例,使學(xué)生了解相應(yīng)教學(xué)模塊所關(guān)心的問題和解決思路。
3 結(jié)束語
作為普通高等院校面向大一新生普遍開設(shè)的一門信息類基礎(chǔ)課程,程序設(shè)計基礎(chǔ)中的許多知識點都為計算思維提供了很好的詮釋和生動的案例。將程序設(shè)計基礎(chǔ)教學(xué)與計算思維培養(yǎng)結(jié)合起來,不僅可以從計算思維的角度重新審視和組織程序設(shè)計基礎(chǔ)的課堂教學(xué),取得更好的教學(xué)效果;另一方面可以加強對計算思維能力的培養(yǎng),使學(xué)生更好地應(yīng)用計算思維來解決問題,促進學(xué)生綜合素質(zhì)的提升。
【參考文獻】
[1]林旺,孫洪濤.基于軟件應(yīng)用的計算思維能力培養(yǎng)教學(xué)設(shè)計[J].中國電化教育, 2014(11):122-127.
關(guān)鍵字:算法與程序設(shè)計;激發(fā)興趣;分組學(xué)習(xí);學(xué)習(xí)習(xí)慣;編程素養(yǎng)
新課程改革后,信息技術(shù)課程除必修課《信息技術(shù)基礎(chǔ)》外另有五門選修課,《算法與程序設(shè)計》就是其中之一,這門課程除了與學(xué)生們小學(xué)、初中、高中乃至大學(xué)階段的數(shù)學(xué)課程有密切關(guān)聯(lián)之外,對于即將踏入大學(xué)的無論文理科的同學(xué)們,他們的邏輯思維能力以及今后的學(xué)業(yè)、人生都有著至關(guān)重要的作用,因此我校在經(jīng)過慎重篩選后決定在高中二年級選修這門課程,并利用VB程序語言來實現(xiàn)算法與程序設(shè)計,VB這種面向?qū)ο蟮某绦蛟O(shè)計語言不僅容易設(shè)計和實現(xiàn)良好的用戶界面程序,使學(xué)生們通過“所見即所得”的窗體界面,更容易學(xué)習(xí)和掌握,也更易于理解。但是,通過近幾年《算法與程序設(shè)計》的教學(xué),讓我對該門學(xué)科有了不少體會,并有了一定的反思,從而改良我的課堂教學(xué)效果。
體會一:畏懼、恐慌、心理障礙。《算法與程序設(shè)計》比起其它諸如《多媒體技術(shù)應(yīng)用》、《網(wǎng)絡(luò)技術(shù)應(yīng)用》等這樣的課程,有了更強的邏輯性和更高一層的難度和深度,相對于后兩種課程也顯得比較單調(diào)枯燥,加之學(xué)生們的程度良莠不齊,對待問題、分析問題、解決問題的能力也不盡相同,因此,在初接觸這門課程時,學(xué)生們?nèi)菀桩a(chǎn)生一種心理障礙,而這種心理障礙會直接影響他們今后的學(xué)習(xí)。
解決策略:克服畏懼心理,用成就戰(zhàn)勝枯燥。提到程序設(shè)計,好多同學(xué)們都覺得熟悉而又陌生,熟悉的是我們在計算機如此普及的現(xiàn)今社會生活中經(jīng)常會聽到這個詞語,陌生的是我們在使用計算機時,最為常見的是使用一些辦公軟件如Word、Excel和網(wǎng)絡(luò),編寫程序好似都是一些計算機專業(yè)人員進行的枯燥的活動,不少同學(xué)在知道我們高中階段要學(xué)習(xí)《算法與程序設(shè)計》時,情不自禁的就會露出驚訝的目光、心里打鼓,因此作為老師,我們首先要打消同學(xué)們的畏懼心理及由此產(chǎn)生的疑惑。《算法與程序設(shè)計》中應(yīng)用的VB程序設(shè)計語言進行程序設(shè)計,解決涉及的許多問題都與我們的數(shù)學(xué)知識、日常生活有著密切關(guān)系,如:學(xué)生們的成績等級問題、數(shù)學(xué)中的求和、求積問題、數(shù)的排序問題等,而所謂的“程序”不過是計算機可以執(zhí)行的一行行指令代碼,而這些指令則是我們利用一系列的英文單詞、按照一定的語法格式將我們解決問題的自然語言轉(zhuǎn)化為機器可以識別的語言,從而執(zhí)行相應(yīng)的操作,如:End僅一個常見的英文單詞就可構(gòu)成一個簡單的程序,作用是結(jié)束、退出。因此同學(xué)們大可不必畏懼與疑惑,循序漸進即可領(lǐng)略程序設(shè)計的奧妙。
教學(xué)實例:在學(xué)生們對VB程序語言編程不太了解的前幾節(jié)課中,大量的界面設(shè)計、屬性修改及編程語句會使學(xué)生們暈頭轉(zhuǎn)向,因此我把這課堂演示的例子改為在窗體上直接利用Print語句打印輸出一句話或一個符號,如:Print “歡迎來到VB世界!這是我的第一個程序”、或Print “*”。讓同學(xué)們跟著做,或者自己輸出一句話運行程序檢驗結(jié)果、并討論總結(jié)Print語句的作用。因為程序較為簡單,小組成員可以相互幫助,對于動手能力較強的小組可以繼續(xù)體驗探究End語句的用法與作用,這樣在同一個課堂既能分組學(xué)習(xí)、探究又有層次劃分,不僅能完成當堂教學(xué)任務(wù),還可能調(diào)動學(xué)生比著學(xué)的積極性超額完成任務(wù)。
體會二:編程容易,糾錯難。在通過一定階段的學(xué)習(xí)之后,學(xué)生們逐漸要開始自己設(shè)計界面、編寫程序?qū)崿F(xiàn)某一功能,但是在這一階段,經(jīng)常會遇到不能按照預(yù)期目的運行程序的問題,其中有方法的錯誤,但是更多的是程序編寫過程中出現(xiàn)了一些小小的失誤,而這些失誤雖然會出現(xiàn)一定的提示,但是大部分同學(xué)不知道這些提示是什么意思,提示的錯誤代碼代表什么,這樣,一旦程序不能正常運行,學(xué)生們最常做的就是舉手示意讓老師幫忙解決。
解決策略:養(yǎng)成良好的編程習(xí)慣、學(xué)習(xí)習(xí)慣。程序是有一定的語法規(guī)則與書寫規(guī)則的,變量使用要先聲明、類型要匹配尤其是一些標點符號必須是半角狀態(tài),有些時候運行期間會出現(xiàn)異常提示,可能是變量沒有聲明、也可能是變量類型不匹配導(dǎo)致溢出、也有可能是語句格式不對,缺少與前面相匹配的固定語句……對于類似的這些錯誤提示,在平常的教學(xué)過程中除了必要的給學(xué)生們講解,更重要的是教會他們養(yǎng)成良好的編程習(xí)慣,在編寫程序的時候遇到有固定搭配的語句,最好把這種語句的首尾句先寫好,然后再在這種語句中間編寫其他語句。另外,如果語句之中有嵌套,要做到層層遞歸,使內(nèi)外層次分明,這樣如果一旦程序出錯,亦可方便查看。
教學(xué)實例:在程序設(shè)計中有三大結(jié)構(gòu),順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu),順序結(jié)構(gòu)比較容易理解,但是選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)都可以層層嵌套,嵌套越多越容易出現(xiàn)失誤,因此良好的編程習(xí)慣就顯得尤為重要,例如:編寫程序?qū)崿F(xiàn)九九乘法表,語句如下:Dim i as integer
Dim j as integer
For i = 1 to 9
For j = 1 to i
Print i “*” j “=” i*j;
Next j
Next i
這是程序的部分語句,以此為例,首先要求同學(xué)們注意的是編程要謹慎——變量i和j在使用之前要先聲明,其次在這個程序中涉及兩重循環(huán),為了使循環(huán)的層次更加分明同時也便于在報錯的時候分層查錯,第一層循環(huán)與第二層循環(huán)之間要有區(qū)別,即在內(nèi)層循環(huán)要使用縮進,這樣就不容易出錯,而在出錯的時候也方便檢查。
信息技術(shù)課程的特點就是不斷發(fā)展,而《算法與程序設(shè)計》是更高層次的學(xué)習(xí)內(nèi)容,教師除了要培養(yǎng)學(xué)生用程序設(shè)計的方式進行思考,提高學(xué)生的探究、創(chuàng)新能力,幫助學(xué)生成為適應(yīng)信息化時展的人才,更要不斷培養(yǎng)和發(fā)展自己的反思能力,不斷自我修正、調(diào)整和更新,這樣才能適應(yīng)信息技術(shù)學(xué)科的特點,做到與時俱進。
參考文獻:
關(guān)鍵詞:計算機專業(yè);程序設(shè)計類課程;教學(xué)方法
1引言
大學(xué)期間計算機專業(yè)的學(xué)生必須掌握的基礎(chǔ)課之一《計算機程序設(shè)計》課程,旨在培養(yǎng)大學(xué)生基礎(chǔ)的計算機技能,以便于以后計算機課程教學(xué)的方便實施和講解,因而計算機基礎(chǔ)程序設(shè)計課程是計算機專業(yè)學(xué)生所必須掌握的一門理論課。計算機程序設(shè)計類課程教學(xué)重點在于其實踐性,實踐是檢驗真理的唯一標準,通過實踐,學(xué)生可以清楚自己的不足和所不理解的知識點,老師也能了解學(xué)生對于程序設(shè)計這門課的掌握情況,進而方便老師進行教案設(shè)計,為下節(jié)課講解提供依據(jù)[1]。計算機課程所重視的應(yīng)該是創(chuàng)新,但現(xiàn)在各大高校計算機課程卻都以理論知識驗證為主,形成重驗證輕創(chuàng)新的偏差學(xué)習(xí),難以激發(fā)大學(xué)生學(xué)習(xí)熱情,且在程序設(shè)計上沒有重大突破,大學(xué)生的創(chuàng)新意識和創(chuàng)新潛能并沒有被發(fā)掘。教學(xué)新課程改革以來,關(guān)于計算機的課程設(shè)計正逐漸轉(zhuǎn)向正常,學(xué)生的創(chuàng)新意識正不斷被發(fā)掘和刺激。以培養(yǎng)大學(xué)生創(chuàng)新意識和積極主動參與能力為目標,進行計算機程序類設(shè)計課程的教學(xué)探討[2]。
2當前程序設(shè)計類課程的教學(xué)情況
2.1計算機軟件開發(fā)系統(tǒng)龐大學(xué)生容易失去信心
例如Java技術(shù)中所包括的技術(shù)規(guī)范范圍復(fù)雜且龐大,在實際運用中也受到眾多條件限制,大學(xué)生必須付出更高的學(xué)習(xí)成本來進行技術(shù)規(guī)范的理論學(xué)習(xí)。然而若真正意義上進行程序設(shè)計,又感覺理論知識的學(xué)習(xí)無法與實際貼合,力不從心,失去信心。
2.2嚴重缺乏學(xué)習(xí)興趣、主動參與性較差
計算機程序設(shè)計類課程現(xiàn)階段最主要的教學(xué)方式依然是PPT展示,老師仍然處于主導(dǎo)地位,學(xué)生依舊是被牽引的一方,加之課程內(nèi)容多,學(xué)生逐漸失去興趣,學(xué)生缺乏學(xué)習(xí)興趣、積極主動參與性較差。
2.3計算機課程實踐模式單調(diào),學(xué)生普遍缺乏實際經(jīng)驗
現(xiàn)階段程序設(shè)計類課程的授課方式仍以理論課為主,上機實際操作課時較少,且上機課也只是進行理論知識驗證,關(guān)于創(chuàng)新意識的培養(yǎng)卻很難實現(xiàn)。
2.4考核方式仍以試卷為主
這種考查方式只能確定學(xué)生理論知識掌握的熟悉程度和概念的理解認識,但對于實際操作卻并不能完整體現(xiàn),進而也無法實現(xiàn)創(chuàng)新意識體現(xiàn)的最終目的。
3改革教學(xué)方法,加大激勵制度
老師的教學(xué)任務(wù)重點不是講解,而應(yīng)該把重點放在教案設(shè)計上,只有明確的教案設(shè)計,才能針對性進行訓(xùn)練,才能依據(jù)計算機程序設(shè)計知識具體應(yīng)用確定教學(xué)重點。此外,老師必須建立互動課堂,只有與學(xué)生有足夠的互動,才能更了解學(xué)生,才能更好地進行課堂計算機程序設(shè)計類知識講解[3]。特別是在學(xué)生遇到無法解決的問題時。老師要依據(jù)學(xué)生潛力做合適的引導(dǎo),從而刺激學(xué)生找到最佳解決問題的方式,進而提升學(xué)生的思考能力,調(diào)動學(xué)生對于計算機程序設(shè)計類課程學(xué)習(xí)的熱情。由于計算機專業(yè)的學(xué)生不同于其他專業(yè),在畢業(yè)離校后,大都通過小組活動的形式進行程序項目開發(fā),特別是在小組開發(fā)程序設(shè)計的途中,重視團隊彼此的配合默契,通過互相探討、闡述自身觀點以及團隊合作能力的方式來提升小組成員之間對于程序項目開發(fā)的動力。為積極增強團隊合作意識,可以適時增加一些類似討論課題的交流活動方式來進行程序設(shè)計,并進一步提升運用[4]。對學(xué)生進行啟發(fā)性問題挖掘,例如在對學(xué)生進行計算機程序設(shè)計課程教學(xué)時,提前讓學(xué)生完成課本內(nèi)容預(yù)習(xí)任務(wù),并以此為基礎(chǔ)進行啟發(fā)性引導(dǎo)。比如,計算機課程中所指的對象是什么意思;類和封裝又指的是什么;以現(xiàn)實生活為背景調(diào)查人群對于計算機信息技術(shù)的認識,且要依據(jù)實際情況對信息進行登記和處理,以小組團體的形式整體提高計算機程序設(shè)計課程學(xué)生之間的互動性,也為今后更深入學(xué)習(xí)計算機相關(guān)知識奠定基礎(chǔ)。
4重視學(xué)生的實驗預(yù)習(xí)和準備情況
計算機程序設(shè)計類課程在進行教學(xué)實踐時,由于學(xué)生缺乏基礎(chǔ)理論知識以及對計算機的不熟悉,容易出現(xiàn)慌張、不知所措的情況,進而導(dǎo)致計算機課程不能順利進行。形成這種局面的最主要原因就是學(xué)生并未按老師要求進行課程預(yù)習(xí)和前期知識回顧,這些無法順利完成,究其根本原因就是學(xué)生沒有深入的感知計算機程序設(shè)計類課程的教學(xué)重點和教學(xué)難點,由于前期準備不充分,導(dǎo)致各種狀況發(fā)生。為解決此類問題,老師必須加強自身知識能力,除此之外就是要正確認識計算機程序設(shè)計類課程的實際重點內(nèi)容,老師還要根據(jù)自身特點進行課程設(shè)計安排,以吸引更多學(xué)生專心聽講,以完整的知識武裝自己。計算機課程的專業(yè)較多,因而實驗課內(nèi)容也十分廣泛。這就需要老師依據(jù)實際情況進行課程設(shè)計并調(diào)整課程內(nèi)容講解模式。只有這樣才能解決學(xué)生在上課時對于計算機程序設(shè)計課程學(xué)習(xí)中難懂的問題[5]。避免盲目從眾,還可以依據(jù)學(xué)生自我興趣進行計算機程序設(shè)計的理論思維創(chuàng)新并驗證實驗結(jié)果。所以,老師要依據(jù)計算機程序設(shè)計類課程的實驗方式來讓學(xué)生確定自己的獨特方式,學(xué)生也可以積極主動的選擇可以激發(fā)創(chuàng)新思維的各類課程活動方式,結(jié)合自身特點進行計算機程序設(shè)計類課程的項目設(shè)計,進而滿足不同層次、不同興趣學(xué)生自身的實際需求。
5通過上機試驗提升綜合項目的設(shè)計能力
計算機程序設(shè)計類課程是一門重視實踐的課程,因而上機實踐是相當重要的環(huán)節(jié)。為提升學(xué)生對于課程設(shè)計的整體感知和理解,老師有必要在第一次上課時就給學(xué)生進行整體理論框架知識簡述。并依據(jù)課程實際進行詳略得當?shù)恼f明,這樣既可以提升學(xué)生的學(xué)習(xí)信心,也可以為該課程理論知識實踐奠定基礎(chǔ)。
6重點培養(yǎng)學(xué)生實踐能力
6.1對于實踐中常見問題的分析解決
在計算機程序設(shè)計類課程實踐中,學(xué)生總會遇到各種各樣自己難以解決的代碼錯誤問題以及操作錯誤問題。這些問題若沒有老師幫助解決,學(xué)生很難進行下一步的程序設(shè)計。計算機實踐課程通常都是大課,70人左右同時進行,計算機實踐操作中出現(xiàn)的問題多種多樣,若是只由老師單獨進行輔導(dǎo),實在難以解決所有問題,這也是計算機程序設(shè)計類課程的實踐難以提升的根本原因。對此,若采取“老師為主、學(xué)生互助”的方式則可以極大提升計算機課程實踐效率[6]。老師在進行計算機程序設(shè)計課程實踐時,對于學(xué)生提出的問題必須有耐心的解決,充分尊重學(xué)生的思想,在指導(dǎo)練習(xí)時可以讓周圍的學(xué)生一起參與起來。比如:針對實踐課程代碼編程問題,老師要引導(dǎo)學(xué)生發(fā)現(xiàn)問題的癥結(jié)所在,并積極鼓勵學(xué)生建立討論組,通過溝通交流相互討論的方式,發(fā)現(xiàn)實踐問題所在,讓學(xué)生積極發(fā)表自己的看法,從而提高計算機程序設(shè)計課程的實踐效果。老師也要從計算機程序設(shè)計實踐課中總結(jié)經(jīng)驗,以更完善的輔助學(xué)生進行計算機程序設(shè)計。
6.2課堂知識向課外知識的縱向延伸
通過一段時間的理論知識學(xué)習(xí),老師就可以把課程知識進行縱向延伸。學(xué)生依據(jù)課程上學(xué)到的理論知識,通過實踐運用在課外知識縱向延伸上。同時學(xué)生還可以與老師進行及時的溝通交流,這樣可以極大提升計算機程序設(shè)計類課程的實踐教學(xué)質(zhì)量,也更有創(chuàng)新性的激發(fā)學(xué)生對計算機程序設(shè)計的興趣[7]。
7學(xué)生要善于進行自我總結(jié)并自我評價實驗結(jié)果
老師應(yīng)該按照學(xué)生的實踐能力制定評判標準,并對學(xué)生的實際操作能力和理解進行基礎(chǔ)評估,若學(xué)生自主的進行實踐內(nèi)容的準備、實踐課題的總結(jié)和經(jīng)驗積累,則老師可以依據(jù)學(xué)生的自主意識和自我認知想法合理的提高分數(shù)。學(xué)生在進行計算機程序設(shè)計時,老師要強調(diào)學(xué)生的自我管理,以自我總結(jié)、自我評價的方式為自己負責,對于解決不了的問題,則可以與同學(xué)商量共同解決,這樣才能讓學(xué)生有效的進行總結(jié)和知識歸納。
8考核方式優(yōu)化改革
(Nuclearsystemoptimizationreform)現(xiàn)階段的計算機程序設(shè)計類課程通常以筆試成績?yōu)橹鳎攸c在于考察學(xué)生的概念理解能力,這對于學(xué)生來說要求記憶的東西過多,學(xué)生并沒有充足的時間進行內(nèi)容的理解和實際操作設(shè)計,這也就容易出現(xiàn)高分低能的情況。學(xué)生的理解能力、接受能力、創(chuàng)新能力、實踐能力,在試卷上并不能完整的展現(xiàn)。雖現(xiàn)在強調(diào)平時成績,但其所占的小比例并不能改變期末成績,期末成績?nèi)匀皇亲罱K判斷標準[8]。
8.1增強實踐方面的考核優(yōu)化改革
新課程改革下,要求把實踐課分為幾部分進行考核,并依據(jù)各個階段的平均成績判定實踐總成績。實踐部分的分數(shù)僅占總成績的37%。這也就要求學(xué)生必須有自己獨到的見解和設(shè)計風(fēng)格理念,這樣才能保證設(shè)計出來的程序具有一定的創(chuàng)新性。
8.2期末考試方式優(yōu)化改革
在日??荚囍?,通過程序設(shè)計的方式給每位學(xué)生分發(fā)不同的考試題目,學(xué)生要依據(jù)題目要求進行相關(guān)程序設(shè)計,從分析題目入手,結(jié)合代碼規(guī)律,獨立且完整的完成實踐考試。期末成績改用答辯的方式進行,重視學(xué)生的溝通交流以及靈活轉(zhuǎn)變能力。通過這種方式提升學(xué)生的分析水平,從而增強學(xué)生運用計算機程序設(shè)計解決實際問題的能力。
9結(jié)論
總而言之,計算機程序設(shè)計類課程是一門重視實踐的課程。尤其在教學(xué)實踐中,必須強調(diào)學(xué)生的主體地位,以學(xué)生為主,老師只做一個引導(dǎo)人,并通過符合學(xué)生認知習(xí)慣和規(guī)律的方式科學(xué)合理的調(diào)動學(xué)生的積極性。以此提升計算機程序設(shè)計類課程的教學(xué)質(zhì)量。所以,老師在計算機程序設(shè)計類課程實踐中要持續(xù)圍繞學(xué)生的實驗?zāi)芰M行更深層次的研究和教學(xué)上的優(yōu)化改革,從而提升計算機程序設(shè)計實踐的教學(xué)質(zhì)量。
作者:劉琴 單位:青海民族大學(xué)計算機學(xué)院
參考文獻
[1]鄒汪平,蔡勁松.基于能力導(dǎo)向的計算機程序設(shè)計類課程教學(xué)內(nèi)容相關(guān)性研究[J].梧州學(xué)院學(xué)報,2016(06):72-75.
[2]張雪松.高職院校非計算機專業(yè)《C語言程序設(shè)計》課程改革探索[J].產(chǎn)業(yè)與科技論壇,2016(22):194-195.
[3]耿姝,逯柳,王樹芬.計算機程序設(shè)計類課程研究型教學(xué)改革與實踐[J].工業(yè)和信息化教育,2016(09):50-53.
[4]鐘文峰,晏志英,胡榮群.計算機科學(xué)與技術(shù)專業(yè)程序設(shè)計類課程群建設(shè)的探索與實踐[J].信息通信,2016(09):277-279.
[5]袁鳳玲.計算機程序設(shè)計類課程實踐教學(xué)的有效性研究[J].遼寧科技學(xué)院學(xué)報,2016(03):52-53.
[6]楊日璟,焉德軍,辛慧杰.非計算機專業(yè)程序設(shè)計課程教學(xué)改革實踐[J].大連民族大學(xué)學(xué)報,2016(03):271-274.
關(guān)鍵詞:計算機專業(yè)算法;程序設(shè)計;層階式培養(yǎng)
在計算計機專業(yè)的教育中,培養(yǎng)學(xué)生專業(yè)算法設(shè)計的能力,是計算機專業(yè)教學(xué)的重點內(nèi)容。而計算機程序設(shè)計能力又是學(xué)生應(yīng)該具備的最基礎(chǔ)的專業(yè)能力,怎樣更好地培養(yǎng)學(xué)生這兩種專業(yè)能力,也是計算機專業(yè)教學(xué)的重要目標。目前,計算機專業(yè)雖然得到了大范圍的普及,但是由于教學(xué)理念,教學(xué)模式,學(xué)生學(xué)習(xí)能力,教師教學(xué)水平等主客觀因素的不同,學(xué)生的計算機專業(yè)能力與實踐能力并不高。專業(yè)算法與程序設(shè)計能力的層階式培養(yǎng)模式是一種新的教學(xué)模式,對于提高學(xué)生程序設(shè)計能力和算法設(shè)計能力就有重要意義,需要根據(jù)教學(xué)實際,不斷進行改革與創(chuàng)新,不斷提高計算機教學(xué)水平,提升學(xué)生的計算機專業(yè)素養(yǎng)。
一、計算機專業(yè)教學(xué)的現(xiàn)狀簡析
隨著網(wǎng)絡(luò)技術(shù),信息通訊等方面的快速發(fā)展,計算機專業(yè)教學(xué)已經(jīng)在高校教育中得到普及,選擇計算機專業(yè)的學(xué)生也越來越多,但是真正具備計算機專業(yè)能力與應(yīng)用能力的人才卻少之又少,這也是計算機專業(yè)教育在人才培養(yǎng)方面的缺陷。從目前的教學(xué)現(xiàn)狀來看,大多數(shù)學(xué)校更注重計算機專業(yè)理論知識的教學(xué),沒有認識到它是一種實踐性極強的學(xué)科,沒有注重培養(yǎng)學(xué)生的實踐與應(yīng)用能力。在實際教學(xué)中,教師對算法與程序設(shè)計的重視度較弱,因此,學(xué)生的程序設(shè)計能力和算法設(shè)計能力較為薄弱,對于前沿性的學(xué)習(xí)內(nèi)容,學(xué)生往往無法接觸到,長此以往,學(xué)生在計算機專業(yè)學(xué)習(xí)中,指學(xué)習(xí)到了基本理論知識,創(chuàng)新能力和個性能力不足,不利于學(xué)生學(xué)習(xí)興趣的提升。
二、分層次組織計算機算法設(shè)計與程序設(shè)計教學(xué)
計算機算法與程序設(shè)計能力的培養(yǎng),是計算機專業(yè)教學(xué)的重點,這也是學(xué)生學(xué)習(xí)與應(yīng)用能力提升的關(guān)鍵。高校在進行計算機專業(yè)算法與程序設(shè)計能力的層階式培養(yǎng)的實際教學(xué)中,要根據(jù)計算機專業(yè)教學(xué)內(nèi)容,根據(jù)學(xué)生的學(xué)習(xí)特點,接受能力,在算法區(qū)域程序設(shè)計上進行分層次教學(xué),把計算機理論基礎(chǔ)知識與專業(yè)技能培養(yǎng)有效結(jié)合起來,切實培養(yǎng)學(xué)生的算法與程序設(shè)計能力。
(一)鞏固專業(yè)基礎(chǔ)知識教學(xué)
在計算機程序設(shè)計專業(yè)教學(xué)中,C語言是基礎(chǔ)課程,這也是一種通用性極高、應(yīng)用最為廣泛的計算機編程語言,作為重要專業(yè)基礎(chǔ)知識,不容忽視。在C語言教學(xué)中,要使學(xué)生不斷對詞法、語法、應(yīng)用方法等方面的知識進行鞏固,培養(yǎng)學(xué)生獨立利用相關(guān)知識解決問題的能力。此外,要對計算機算法基礎(chǔ)理論、程序設(shè)計基礎(chǔ)、C語言等基礎(chǔ)課程進行合理設(shè)置,在教學(xué)中,既要學(xué)生能夠掌握基本的理論基礎(chǔ)知識,又要形成獨立的思維邏輯,能夠運用基礎(chǔ)知識獨立解決在計算機程序設(shè)計中用遇到的各種問題,培養(yǎng)學(xué)生的個性意識,創(chuàng)新思維。促進其綜合能力的提升。
(二)加強專業(yè)課程的教學(xué)
在計算機專業(yè)算法與程序設(shè)計能力的層階式培養(yǎng)過程中,要合理設(shè)置相關(guān)專業(yè)課程。算法設(shè)計與分析課程就是重要專業(yè)課程之一,在此專業(yè)課的教學(xué)中,重點培養(yǎng)目標就是提高學(xué)生的計算機程序設(shè)計能力。在教學(xué)設(shè)計中,重點講授基本的算法設(shè)計方法及其性能分析,如:遞歸法、回溯法等等,學(xué)生要真正理解每種方法的特點與性質(zhì),能夠靈活運用,在算法設(shè)計中,要能夠把自己的想法與專業(yè)課程知識相結(jié)合,形成具有個性的設(shè)計。
(三)注重應(yīng)用課程的教學(xué)
在計算機專業(yè)教學(xué)中,除了基礎(chǔ)課程和專業(yè)課程以外,應(yīng)用課程的教學(xué)也要合理設(shè)置,這是培養(yǎng)學(xué)生實際應(yīng)用能力的重要課程。一般與算法和程序設(shè)計相關(guān)的應(yīng)用課程主要有:Java、Web編程與設(shè)計、網(wǎng)絡(luò)編程、數(shù)據(jù)庫編程等等,此外還有與社會發(fā)展密切相關(guān)的環(huán)境編程等應(yīng)用課程。通過這些應(yīng)用課程的合理安排,有助于增強學(xué)生的實際應(yīng)用能力。
三、計算機專業(yè)算法與程序設(shè)計能力的層階式培養(yǎng)方式分析
(一)語言程序設(shè)計教學(xué)層次的劃分
這也是基本的程序設(shè)計能力培養(yǎng),此層次的設(shè)置,主要是使學(xué)生能夠進行簡單基本的編程設(shè)計,獨立解決一些簡單的問題。通過學(xué)習(xí)與實踐的不斷加深,逐漸提高程序設(shè)計的難度,以C語言設(shè)計為基礎(chǔ),形成有層級的培養(yǎng)方式,循序漸進的培養(yǎng)學(xué)生的計算機程序設(shè)計能力。
(二)數(shù)據(jù)結(jié)構(gòu)與算法教學(xué)層次的劃分
掌握數(shù)據(jù)結(jié)構(gòu),是解決算法問題的重要途徑。在這一層次的教學(xué)中,要從簡單到復(fù)雜,逐層逐級,根據(jù)學(xué)生的學(xué)習(xí)特點與掌握能力,逐漸開設(shè)計算方法、人工智能、數(shù)據(jù)程序設(shè)計等課程,由易到難,相由簡單到復(fù)雜,從大學(xué)一年級到四年級,相應(yīng)進行教學(xué),逐漸培養(yǎng)學(xué)生的算法設(shè)計與程序設(shè)計能力。并且能夠自主思考、主動創(chuàng)新,解決更為復(fù)雜的計算機專業(yè)問題。
(三)程序設(shè)計教學(xué)層次劃分
計算機程序設(shè)計能力的培養(yǎng)是基礎(chǔ)也是重點,在實際教學(xué)中,通過采用各種有層次的培養(yǎng)方式,提升學(xué)生的程序設(shè)計能力以及解決復(fù)雜性、綜合性問題的能力。
四、結(jié)論
綜上所述,計算機專業(yè)是高校教育中的重要專業(yè)學(xué)科,與社會發(fā)展、科技進步具有密切聯(lián)系,其主要教育目標就是,培養(yǎng)具有較高專業(yè)技能與計算機綜合素養(yǎng)的人才。因此,要在實際教學(xué)中,有層次設(shè)置計算機專業(yè)相關(guān)課程,分層級進行人才培養(yǎng),通過對基礎(chǔ)課程,專業(yè)課程,應(yīng)用課程的分層次設(shè)置,分層次教學(xué),不斷提高學(xué)生算法與程序設(shè)計能力以及計算機專業(yè)應(yīng)用能力。
參考文獻: