發(fā)布時間:2023-08-02 16:37:06
序言:寫作是分享個人見解和探索未知領(lǐng)域的橋梁,我們?yōu)槟x了8篇的計算機語言的概念樣本,期待這些樣本能夠為您提供豐富的參考和啟發(fā),請盡情閱讀。
關(guān)鍵詞:CDIO;計算機教學(xué);問題;改革措施
中圖分類號:G4 文獻(xiàn)標(biāo)識碼:A
Abstract:With the coming of information age,the computer and network technology develop rapidly and the need for computer professionals becomes bigger and bigger,so,how to fasten university computer teaching reformation becomes a core task of university researches.However,lots of problems,existing in university computer teaching,reduce seriously the effect of computer teaching.Fusing with the CDIO educational concept,this paper firstly analyzes the existing problems in computer teaching and then put forwards the corresponding reform measures.
Keywords:CDIO;computer teaching;problems;reform measures
1 引言(Introduction)
隨著計算機和信息技術(shù)的快速發(fā)展,計算機和信息計算在全國各行各業(yè)中得到了廣泛的應(yīng)用,這也加大了社會和企業(yè)對高校計算機專業(yè)人才的需求,如何提高計算機專業(yè)教學(xué)質(zhì)量,適應(yīng)國家和地方經(jīng)濟(jì)社會的發(fā)展需求,已經(jīng)成為各所高校計算機教學(xué)改革關(guān)注的重點。CDIO作為一種新型的教育理念,在國內(nèi)外受到了廣泛的關(guān)注,將CDIO教育理念融入高校計算機專業(yè)教學(xué)中,可以確保教學(xué)目標(biāo)、教學(xué)內(nèi)容的科學(xué)合理,保證高校計算機教學(xué)大綱能夠適應(yīng)社會發(fā)展需求,并且強調(diào)學(xué)生素質(zhì)的培養(yǎng)應(yīng)該與產(chǎn)業(yè)發(fā)展相適應(yīng),在課程設(shè)置上采用關(guān)聯(lián)的方式,打破傳統(tǒng)的學(xué)科壁壘,避免教學(xué)內(nèi)容的重復(fù),有利于學(xué)生獲得綜合的計算機專業(yè)知識和能力。顯然,CDIO教育理念與高校計算機教學(xué)改革的需求是一致的,因此,將CDIO教育理念融入到高校計算機教學(xué)改革中,可以有效促進(jìn)課程改革的順利進(jìn)行,促進(jìn)學(xué)生計算機專業(yè)素質(zhì)的不斷提高。
2 CDIO教育理念概述(Introduction of CDIO educational concept)
CDIO教育理念是近年來國際工程教育教學(xué)的新型理念,是工程教育教學(xué)與創(chuàng)新人才培養(yǎng)相結(jié)合的新型教育模式,其最早是由美國麻省理工大學(xué)生工學(xué)院和瑞典皇家理工學(xué)院等四所大學(xué)組成的工程教育教學(xué)改革研究團(tuán)隊提出來的,所謂CDIO,也就是構(gòu)思(Conceive)、設(shè)計(Design)、實現(xiàn)(Implement)、運行(Operate)的縮寫,是以社會發(fā)展需求為人才培養(yǎng)的依據(jù),以產(chǎn)品開發(fā)或者系統(tǒng)設(shè)計與實現(xiàn)為教育載體,對學(xué)生的工程實踐能力和創(chuàng)新能力進(jìn)行重點培養(yǎng),發(fā)揮學(xué)生的主觀能動性,提高學(xué)生自主學(xué)習(xí)的積極性,有效實現(xiàn)理論教學(xué)和實踐教學(xué)的有機結(jié)合[1]。顯然,CDIO教育理念與高校計算機教學(xué)改革目標(biāo)相符,將CDIO教育理念融入到高校計算機教學(xué)改革中,有助于學(xué)校培養(yǎng)出應(yīng)用型計算機人才。
在CDIO教育教學(xué)模式中,C代表構(gòu)思,主要是指在教學(xué)的構(gòu)思階段,這一階段主要目的是引導(dǎo)學(xué)生針對問題進(jìn)行分析,找到科學(xué)合理的問題解決方案,這一階段是CDIO教學(xué)能夠順利完成的前提和關(guān)鍵環(huán)節(jié);D代表設(shè)計,是學(xué)生工程教育教學(xué)中實踐能力培養(yǎng)的核心和精髓,在這一階段中,引導(dǎo)學(xué)生對工程項目進(jìn)行自主設(shè)計,充分運用自己學(xué)習(xí)到的理論知識,將理論與實踐進(jìn)行有機的結(jié)合,鍛煉學(xué)生的動手能力和創(chuàng)新能力,學(xué)生可以利用學(xué)校和校外的實訓(xùn)條件,進(jìn)行CDIO實踐案例的設(shè)計;I代表實現(xiàn),也就是將項目設(shè)計變成實物的過程,在這一過程中,要求學(xué)生采取有效的方法解決設(shè)計中的關(guān)鍵技術(shù)和核心問題,形成相應(yīng)的學(xué)習(xí)成果,有效提高學(xué)生解決問題的能力,例如計算機教學(xué)中程序設(shè)計、制作和調(diào)試能力;O代表運作,是指學(xué)生在完成學(xué)習(xí)作品之后,要求學(xué)生對自己設(shè)計制作的產(chǎn)品進(jìn)行進(jìn)一步優(yōu)化運行,排除運行過程中存在的問題,確保產(chǎn)品或者系統(tǒng)的順利運行,同時要求教師與學(xué)生積極的進(jìn)行互動,對學(xué)生整個設(shè)計制作過程進(jìn)行分析和評估,對學(xué)生遇到的問題進(jìn)行指導(dǎo)和糾正。
3 當(dāng)前高校計算機教學(xué)存在的問題(Existing problems in university computer teaching)
3.1 課程體系與計算機行業(yè)的快速發(fā)展的矛盾
近些年來,計算機和網(wǎng)絡(luò)技術(shù)快速發(fā)展,相關(guān)行業(yè)也在告訴發(fā)展,這就對人才的素質(zhì)要求也越來越高,而當(dāng)前高校計算機教學(xué)模式和課程體系仍然比較陳舊,專業(yè)課程體系不能適應(yīng)相關(guān)計算機行業(yè)的快速變化的節(jié)奏,造成計算機行業(yè)技術(shù)始終在高速發(fā)展,而高校的教學(xué)模式卻不能適應(yīng)這一變化,導(dǎo)致學(xué)生所學(xué)習(xí)到的知識和社會實際工作崗位需求脫節(jié),而解決這一矛盾的關(guān)鍵就是加快高校計算機教學(xué)模式和課程體系的科學(xué)化改革。
本文分析了現(xiàn)有計算機語言類課程的特點與面臨的實際問題,從培養(yǎng)學(xué)生程序設(shè)計能力的目標(biāo)出發(fā),在理論教學(xué)環(huán)節(jié)推行層次化教學(xué)模式,在實踐教學(xué)環(huán)節(jié)減少驗證型實驗,增加設(shè)計型實驗并增設(shè)課程設(shè)計環(huán)節(jié),傳統(tǒng)教學(xué)體系以外鼓勵學(xué)生進(jìn)行外延學(xué)習(xí),如參加大學(xué)生程序設(shè)計競賽、考取各類職業(yè)技能證書和參與教師科研項目等,并通過建設(shè)合理的教學(xué)評價體系實現(xiàn)學(xué)生專業(yè)能力的考查。最終,培養(yǎng)學(xué)生的程序設(shè)計能力、科技創(chuàng)新精神和創(chuàng)新能力。
二、計算機語言類課程概況
(一)計算機語言類課程的特點
隨著計算機技術(shù)的更新?lián)Q代和計算機網(wǎng)絡(luò)的飛速發(fā)展,計算機語言也在不斷地推陳出新,由最初的機器語言、匯編語言等低級語言,到早期的高級語言如BASIC、PASCAL和C語言,再到C++和JAVA等面向?qū)ο蟮母呒壵Z言。同時,各種計算機語言的語法語義看似模式固定,而真正應(yīng)用于軟件開發(fā)卻是千變?nèi)f化,這都決定了計算機語言類課程具有操作性強、更新速度快、創(chuàng)造性強等特點。該門課程與其他計算機專業(yè)課程相比,對于學(xué)生的動手實踐能力要求更高,尤為強調(diào)學(xué)生程序設(shè)計思維方式和軟件開發(fā)。
(二)計算機語言類課程面臨的問題
根據(jù)多年來講授計算機語言類課程和組織學(xué)生參加計算機程序設(shè)計競賽的經(jīng)驗,筆者認(rèn)為高職院校計算機專業(yè)學(xué)生學(xué)習(xí)語言類課程的瓶頸在于過分注重理論基礎(chǔ)知識,卻無法利用所學(xué)的計算機知識分析和解決實際問題。上課或培訓(xùn)時,當(dāng)老師給出一個新的題目,總是不知從何入手,思路不清,一團(tuán)亂麻。當(dāng)聽過老師的講解后,才恍然大悟。如果再遇到一個新題目或稍微改動過的問題,學(xué)生又開始手足無措,無法獨立找到適合算法完成編程操作。出現(xiàn)這種情況的主要原因在于學(xué)生在計算機語言類課程中只是追隨著老師的思路,而缺少獨立思考和動手操作的機會,無法完成程序設(shè)計思維的訓(xùn)練。
三、計算機語言類課程中學(xué)生程序設(shè)計能力的培養(yǎng)
(一)時刻關(guān)注程序設(shè)計思維方式的培養(yǎng)
在日常教學(xué)活動中,應(yīng)注重程序設(shè)計思維方式的培養(yǎng)。以C語言程序設(shè)計課程為例,教師在課堂上提出一個新的問題,然后引導(dǎo)學(xué)生分析并思考解決問題的步驟,在此過程中需要摒除具體代碼實現(xiàn)的細(xì)節(jié)部分,只關(guān)注核心的流程。鼓勵學(xué)生獨立繪制流程圖,進(jìn)而整理出解題思路,這是培養(yǎng)計算機專業(yè)學(xué)生程序設(shè)計思維的必經(jīng)階段,也是程序設(shè)計師必備的專業(yè)技能。C語言程序設(shè)計是高職高專學(xué)生接觸到的第一門計算機語言類課程,為了幫助學(xué)生理解程序設(shè)計中的各種抽象概念,教師可以在講解中引入貼近生活的實例,例如“酸奶制作”。酸奶制作所需要的原料如牛奶、酸奶發(fā)酵劑、糖和蜂蜜等即為程序中的變量,將原材料放入酸奶機中可看做是輸入變量,加熱、發(fā)酵和冷卻等操作可看作為函數(shù)調(diào)用的過程,同時也鋪墊了函數(shù)的概念,最終酸奶制作完成即為程序結(jié)果的輸出。還可以進(jìn)一步擴展加入分支結(jié)構(gòu)來調(diào)配不同口味的酸奶,運用循環(huán)結(jié)構(gòu)制作若干份酸奶。通過這些易于理解的實例帶動學(xué)生主動思考,一起做酸奶,既提高了學(xué)生學(xué)習(xí)的興趣,也將程序設(shè)計的思維方式無聲無息地滲透入學(xué)生的腦海中。在此過程中,學(xué)生學(xué)會了在思維中發(fā)現(xiàn)規(guī)律,在思維中抽象總結(jié)。
(二)理論教學(xué)環(huán)節(jié)推行層次化教學(xué)模式
基于層次化教學(xué)模式的思想,可將計算機語言類課程的教學(xué)內(nèi)容分為算法、方法學(xué)、語法和集成編程環(huán)境四個層次。將此四個層次作為標(biāo)準(zhǔn),教師需要將教材中知識體系進(jìn)行重新的整理與劃分,將每一章節(jié)、每一堂課、每一個知識點皆找到其所屬層次。在理論教學(xué)環(huán)節(jié)中,點明各層次的具體內(nèi)容,使學(xué)生了解計算機語言類課程不僅僅是學(xué)習(xí)某種計算機語言的語法與語義,更不是簡單的學(xué)習(xí)如何使用某一編程環(huán)境進(jìn)行程序的編制和調(diào)制。以C語言程序設(shè)計課程為例,在課程中第一層次算法涉及較少,但在授課過程中如涉及到較簡單的算法也可稍作滲透,為今后的數(shù)據(jù)結(jié)構(gòu)課程做鋪墊。比如在講到循環(huán)控制結(jié)構(gòu)時可通過例題講解窮舉法和遞推算法,一維數(shù)組的經(jīng)典應(yīng)用之一——排序的兩種算法冒泡法和選擇法也必須為學(xué)生點明。第二層次編程方法學(xué)在C++程序設(shè)計課程中體現(xiàn)較為明顯,主要涉及的內(nèi)容為面向?qū)ο蟪绦蛟O(shè)計方法。第三層次語法是各計算機語言類課程理論教學(xué)中的重點內(nèi)容,包括變量的定義與使用,函數(shù)的定義、聲明和調(diào)用,對象和類的定義等。第四層次集成開發(fā)環(huán)境在理論教學(xué)環(huán)節(jié)比重較少,主要為學(xué)生講解程序開發(fā)的步驟,各類開發(fā)編譯環(huán)境的使用方法等。
(三)實踐教學(xué)環(huán)節(jié)注重將知識轉(zhuǎn)化為能力
在計算機語言類課程的實踐教學(xué)環(huán)節(jié)中,首先,教師應(yīng)引導(dǎo)學(xué)生及時轉(zhuǎn)變學(xué)習(xí)觀念,使學(xué)生認(rèn)識到若想在畢業(yè)后順利尋求到滿意的就業(yè)崗位,單純依靠理論知識的學(xué)習(xí)是遠(yuǎn)遠(yuǎn)不夠的,應(yīng)在課程學(xué)習(xí)過程中注重實踐和動手能力的提高,以及大量軟件工程項目開發(fā)經(jīng)驗的積累,從而增強自身的綜合職業(yè)素質(zhì),成為社會和用人單位急需的專業(yè)化技能型人才。1.在實踐教學(xué)環(huán)節(jié)中,調(diào)整各種類型實驗的比重。適當(dāng)縮小驗證型實驗的課時比例,增加設(shè)計型和綜合型實驗項目。首先,在驗證型實驗中通過程序填空和程序改錯等實驗項目形式,在促進(jìn)基礎(chǔ)知識的消化與理解的基礎(chǔ)上,注重培養(yǎng)學(xué)生“讀程序”的能力。同時,培養(yǎng)學(xué)生良好的編程習(xí)慣和統(tǒng)一的編程風(fēng)格。良好的職業(yè)素養(yǎng)有助于學(xué)生在未來的工作崗位中與同事協(xié)同合作,提高軟件開發(fā)的效率。在設(shè)計型和綜合型實驗中,增設(shè)貼近企業(yè)一線,貼近社會需求,可操作性強的真實案例和項目,進(jìn)而有意識地培養(yǎng)學(xué)生“寫程序”的能力、創(chuàng)新精神和獨立思考的能力。因此實驗項目的具體內(nèi)容需要課程組教師集中討論與設(shè)計,與崗位技能相結(jié)合,并在教學(xué)過程中根據(jù)學(xué)生的接受程度與能力水平不斷完善。2.在大三年級上學(xué)期,增設(shè)課程設(shè)計環(huán)節(jié)。此時的計算機專業(yè)學(xué)生已完成多門計算機語言類和軟件工程等相關(guān)課程的學(xué)習(xí),基本掌握各種編程語言的語法語義規(guī)則,熟悉軟件開發(fā)流程,具備利用計算機分析和解決問題的初步能力。在課程設(shè)計中,學(xué)生接觸到簡單的工程問題,組成項目開發(fā)小組,分工合作,使用一種或多種計算機語言設(shè)計、編碼和開發(fā)具有一定難度的小型軟件系統(tǒng),提交實驗報告,最后每組選出一名代表參加答辯。在該環(huán)節(jié)中,應(yīng)盡量為學(xué)生模擬出與企業(yè)真實工作環(huán)境相似的實踐現(xiàn)場,并全面采用企業(yè)管理運作的模式。使學(xué)生在課程設(shè)計中親身感受到企業(yè)的工作環(huán)境和崗位需求,全面地認(rèn)識和熟悉軟件項目開發(fā)過程,更好地掌握程序設(shè)計的基本思想。
(四)傳統(tǒng)教學(xué)體系以外鼓勵外延學(xué)習(xí)
1.組織學(xué)生參加如大學(xué)生程序設(shè)計競賽之類的大型賽事。在競賽的培訓(xùn)、備賽和參賽中,激發(fā)學(xué)生的學(xué)習(xí)熱情,鼓勵其主動學(xué)習(xí)、協(xié)作學(xué)習(xí)和拓展學(xué)習(xí),使學(xué)生感受課堂所學(xué)知識與社會和市場需要的異同,為學(xué)生提供更加優(yōu)質(zhì)的知識積累與能力提高的平臺。2.教師積極申請與計算機語言類課程教學(xué)內(nèi)容相關(guān)的各級各類科技項目課題,并鼓勵部分較為優(yōu)秀的學(xué)生參與。首先,教師可向?qū)W生公布并簡單講解科研課題的研究內(nèi)容及與本門課程的相關(guān)性,然后將研究內(nèi)容分解為多個子項目,學(xué)生可自由選擇自己感興趣的子項目,選擇相同任務(wù)的學(xué)生組成一個課題小組,根據(jù)科研項目的研究目標(biāo)與方案,進(jìn)行協(xié)同合作,利用課余時間完成子項目的開發(fā)。在實踐中引導(dǎo)學(xué)生綜合運用課堂所學(xué)知識,逐漸形成工程意識和團(tuán)隊協(xié)作的精神。在科研過程中如遇到瓶頸問題,可通過查詢網(wǎng)絡(luò)、翻閱工具書、參考資料和請教老師等方式尋求幫助。在課程結(jié)束后,教師可按照學(xué)生的完成情況及工作量給予適當(dāng)?shù)恼n外學(xué)分折算鼓勵。參與教師的科研項目可為學(xué)生創(chuàng)造接觸和熟悉真實項目研發(fā)的機會,使學(xué)生了解科研項目的開發(fā)過程,不斷學(xué)習(xí)和掌握前沿知識與先進(jìn)技術(shù),做到學(xué)以致用,學(xué)會創(chuàng)造性學(xué)習(xí)、研究性學(xué)習(xí),為今后升入本科院校繼續(xù)深造學(xué)習(xí)奠定堅實的基礎(chǔ)。3.將計算機技術(shù)與軟件專業(yè)技術(shù)資格(水平)考試、Java認(rèn)證、全國計算機等級考試等職業(yè)資格認(rèn)證教育融入課程教學(xué)過程,使專業(yè)課程內(nèi)容與職業(yè)崗位能力無縫對接,實現(xiàn)“課證融通”,課內(nèi)教育與課外教育相結(jié)合,以加深學(xué)生對行業(yè)的認(rèn)識,提高高職高專計算機專業(yè)學(xué)生的社會競爭力和職業(yè)素養(yǎng),增強其就業(yè)信心。4.加強校企合作,為理論教學(xué)和實踐教學(xué)環(huán)節(jié)爭取到更多的真實案例和項目,為學(xué)生提供更多頂崗實習(xí)的機會,讓學(xué)習(xí)與就業(yè)崗位零距離,為今后更好地融入真實的職業(yè)環(huán)境打下良好的基礎(chǔ)。
(五)教學(xué)評價體系實現(xiàn)能力考查
好的評價方法,可以調(diào)動學(xué)生學(xué)習(xí)的積極性,培養(yǎng)學(xué)生自主學(xué)習(xí)的能力,改善學(xué)生學(xué)習(xí)的風(fēng)氣,促進(jìn)教學(xué)。對于計算機語言類課程來說,科學(xué)的、合理的、有效的評價方法,應(yīng)注重對學(xué)生學(xué)習(xí)能力和程序設(shè)計思想的檢測與評價。1.進(jìn)行理論教學(xué)環(huán)節(jié)與實踐教學(xué)環(huán)節(jié)相結(jié)合的多元化綜合考核。理論教學(xué)過程考核包括課前預(yù)習(xí)、課中活躍度和提問情況、課后作業(yè)等成績;實踐教學(xué)過程考核包括驗證型實驗的操作完成情況、設(shè)計型和綜合型實驗的參與度、方案制定合理性、項目完成工作量、項目成果質(zhì)量和報告提交等內(nèi)容。2.鼓勵學(xué)生參加計算機語言類課程相關(guān)的競賽、考取職業(yè)技能證書、參與教師科研并制定適當(dāng)?shù)膶W(xué)分折算機制。將傳統(tǒng)課程體系以外的拓展學(xué)習(xí)內(nèi)容的評分納入到教學(xué)評價體系中,這恰恰體現(xiàn)了當(dāng)前職業(yè)教育的核心理念,側(cè)重培養(yǎng)學(xué)生的職業(yè)能力,使之成為高素質(zhì)、高技能型人才而非呆板的應(yīng)試工具。
四、結(jié)語
關(guān)鍵詞:計算機語言;編碼;任務(wù)教學(xué)法;程序設(shè)計
1.引言
學(xué)習(xí)計算機語言,人們就能夠使用計算機語言與計算機進(jìn)行交流,這樣就能為人們解決實際工作和學(xué)習(xí)中遇到的許多特殊問題。巧妙使用計算機做工具,人們就能夠?qū)€人的想法在計算機上實現(xiàn)。例如,F(xiàn)oxpro關(guān)系型數(shù)據(jù)庫管理系統(tǒng)是具有解決普遍意義上的大量數(shù)據(jù)存儲和管理工作功能的數(shù)據(jù)庫語言,但是解決具體的實際問題,還必須使用數(shù)據(jù)庫語言編寫程序。
2.計算機語言教學(xué)
2.1計算機語言
語言是人類所特有的用來表達(dá)意思、交流思想的工具,由語音、詞匯和語法構(gòu)成一定的系統(tǒng)。是人類為了能使人與計算機間進(jìn)行交流,專為計算機設(shè)計的語言,變換成計算機可以讀懂的信息符號。這些信息符號是按照一定的規(guī)則進(jìn)行的編碼,是人與計算機間特有的用來表達(dá)人的意思、交流思想的工具,并指導(dǎo)計算機進(jìn)行信息的采集、分析、加工、處理、保存和利用等。計算機語言的種類非常之多,總的來說可以分成機器語言、匯編語言、高級語言三大類。目前通用的編程語言有兩種形式:匯編語言和高級語言。高級語言是目前絕大多數(shù)編程者的選擇,和匯編語言相比,它不但將許多相關(guān)的機器指令合成為單條指令,并且去掉了與具體操作有關(guān),但與完成工作無關(guān)的細(xì)節(jié)(例如使用堆棧、寄存器等),這樣就大大簡化了程序中的指令。
2.2理論課教學(xué)的改革
2.2.1合理安排教學(xué)內(nèi)容。教師在組織教學(xué)過程中,應(yīng)該合理安排教學(xué)內(nèi)容,將一些枯燥乏味的內(nèi)容盡可能注入通俗有趣、與他們生活息息相關(guān)的實例中去,這樣既可以使學(xué)生掌握基本知識,又增強了他們解決問題的能力。
2.2.2改變授課模式。應(yīng)采用交流式、對話式、討論式等多種互動的模式,讓學(xué)生積極地參與到課堂教學(xué)中來,充分調(diào)動學(xué)生的主觀能動性,發(fā)揮每個學(xué)生的聰明才智,讓課堂變?yōu)榻處熀蛯W(xué)生的共同課堂。
2.2.3實施問題教學(xué)法。高職高專學(xué)生的基礎(chǔ)較差,在學(xué)習(xí)中表現(xiàn)理解能力差的特點,因此在理論教學(xué)過程中,要結(jié)合計算機語言類課程和高職高專學(xué)生的特點,改變傳統(tǒng)教學(xué)模式,將以往教師幫助學(xué)生解答疑惑轉(zhuǎn)變?yōu)榻處煂ふ摇l(fā)現(xiàn)與理論知識和學(xué)生生活相關(guān)的實際問題,使學(xué)生在思考、解答問題中增強理解,培養(yǎng)學(xué)生進(jìn)行創(chuàng)造性思維的能力,充分調(diào)動高職高專學(xué)生的學(xué)習(xí)積極性,使學(xué)生在解決問題的過程中獲取新知識,新理論。
2.2.4實施任務(wù)教學(xué)法。任務(wù)教學(xué)是以明確的任務(wù)作為課堂主要教學(xué)目標(biāo),在學(xué)生實踐任務(wù)過程中,培養(yǎng)學(xué)生自我分析、解決、問題能力的教學(xué)模式。在實施任務(wù)教學(xué)法的過程中,教師必須根據(jù)教學(xué)進(jìn)度、學(xué)生所關(guān)心的問題,針對某一階段的教學(xué)內(nèi)容和技能要求,設(shè)計一個包含相關(guān)知識點的綜合性任務(wù),使學(xué)生在真實的問題下應(yīng)用舊知識,探索新知識,使所學(xué)知識得到鞏固、加深和遷移。
2.2.5使用多媒體授課,課堂滲透實踐。計算機語言類課程是理論與實踐結(jié)合非常密切的課程,在講授理論知識時經(jīng)常會遇到一些抽象的、難以理解的概念、理論和算法,教師使用多媒體對它們進(jìn)行演示、模擬,使抽象、復(fù)雜的問題簡單化,從而使學(xué)生便于理解和掌握,同時也更能激發(fā)學(xué)生學(xué)習(xí)計算機語言課程的興趣和求知欲望。
2.3實踐課教學(xué)的改革
2.3.1精心設(shè)計實踐內(nèi)容。教師既要善于營造熱烈的群體氛圍,又必須給學(xué)生留有冷靜的獨立思考的空間。在設(shè)計實踐內(nèi)容的過程中,應(yīng)著重做好以下三個方面。一是要結(jié)合學(xué)生的實際情況。盡量體現(xiàn)知識性、趣味性、實用性,激發(fā)學(xué)生的靈感和創(chuàng)造欲,使學(xué)生對實驗內(nèi)容感興趣,產(chǎn)生上機一試的愿望;二是要注重實踐課與理論課相適應(yīng),這樣才能夠加深學(xué)生對基本理論、基本知識的理解和掌握;三是注重尺度的把握。在設(shè)計實踐內(nèi)容時,難易程度和工作量的大小是教師要考慮的內(nèi)容。
2.3.2.主動指導(dǎo)。在傳統(tǒng)的實踐教學(xué)中,教師總是等學(xué)生問問題,這種被動指導(dǎo)存在著許多弊端,特別對剛接觸這門課程的學(xué)生來說顯得尤為突出,因為學(xué)生剛接觸編程,實踐過程存在很多問題,教師要變被動為主動,主動發(fā)現(xiàn)問題,對于學(xué)生普遍存在的問題要進(jìn)行集中演示,引導(dǎo)學(xué)生主動完成實踐內(nèi)容。
2.3.3注重實踐過程。指導(dǎo)教師在實踐教學(xué)過程中只注重實踐結(jié)果,把實踐內(nèi)容布置給學(xué)生,學(xué)生交上機報告,教師認(rèn)真批改報告,至于報告中的結(jié)果是怎樣來的,具體實現(xiàn)過程是什么,作為教師卻全然不知,因此教師要全身心地投入到實踐的全過程中去,只有這樣,教師才能真正掌握學(xué)生的實際情況,發(fā)現(xiàn)問題,及時解決問題。
2.3.4加強實踐課講評。作為計算機語言類課程的教學(xué)絕對不能忽視實踐教學(xué)中講評這一重要環(huán)節(jié)。以往教師只對理論課上布置的作業(yè)所存在的問題進(jìn)行講評,忽視實踐課的講評。實踐課是檢驗學(xué)生基本知識、基本理論、基本技能掌握情況的一把尺子,不注重實踐課講評,結(jié)果使實踐課教學(xué)效果越來越差,從而影響整個課程的教學(xué)質(zhì)量。
3總結(jié)
要學(xué)好計算機語言,理論和上機操作相結(jié)合非常重要。計算機語言教學(xué)的側(cè)重點應(yīng)放在掌握程序的三大結(jié)構(gòu)上,程序設(shè)計三種結(jié)構(gòu)為順序結(jié)構(gòu)、分支結(jié)構(gòu)(也稱為選擇結(jié)構(gòu))和循環(huán)結(jié)構(gòu)。注重培養(yǎng)學(xué)員使用模塊結(jié)構(gòu)讀程序、寫程序的能力。程序中的交換、累加、累積、分類、排序、刪除、標(biāo)志設(shè)定等都各有一種固定的功能模塊(像物理學(xué)中的定理、公式),編程時可以直接使用。對這些模塊熟悉后,讀程序就容易,寫起來也不會感到太吃力,且有條理,思路也會較清晰。
參考文獻(xiàn):
關(guān)鍵詞:校企合作;教學(xué)改革;教學(xué)方法;計算機課程;再就業(yè)
0、引言
隨著新一代信息技術(shù)的到來,軟件應(yīng)用與各行各業(yè)的需求結(jié)合更加緊密,軟件產(chǎn)業(yè)面臨著跨行業(yè)、跨學(xué)科的新要求,專業(yè)技術(shù)人員的崗位已經(jīng)從單純技術(shù)、技術(shù)應(yīng)用方向向技術(shù)管理、服務(wù)管理等方向轉(zhuǎn)變,企業(yè)對人才的要求越來越高。目前全國許多高校開設(shè)了計算機語言類課程,但該課程的教學(xué)并沒有因為軟件行業(yè)的快速發(fā)展而得到深化改革,高校計算機語言類課程教學(xué)有兩個特點,一個是缺乏實踐條件,理論教學(xué)多,忽略動手能力;另一個是注重實踐,輕理論教學(xué)。如何平衡理論教學(xué)和實踐教學(xué),提高教學(xué)水平,改變教學(xué)模式,培養(yǎng)工程型、實用型、復(fù)合型軟件人才和創(chuàng)新型人才,成為高校計算機語言類課程教學(xué)面臨的新任務(wù)。
目前許多高校計算機語言類課程教學(xué)仍然是學(xué)歷教育,理論和工程實踐脫鉤,因此許多高校建立了校企合作共贏機制,讓計算機語言類課程教學(xué)團(tuán)隊走進(jìn)軟件企業(yè)、參與企業(yè)、了解軟件企業(yè)需求,更好地進(jìn)行計算機語言類課程的教學(xué)和實踐工作;同時企業(yè)也走進(jìn)課堂,提供給學(xué)生更多的軟件行業(yè)前沿信息,并提供實習(xí)基地,讓學(xué)生貼近實戰(zhàn),為以后學(xué)生就業(yè)提供了很好的鍛煉機會。因此,通過校企合作,高校改變了人才培養(yǎng)模式,能夠有效解決計算機語言類課程教學(xué)中理論和工程實踐脫鉤的矛盾,同時企業(yè)減少了尋找軟件人才的過程,節(jié)約了大量培訓(xùn)成本,在實現(xiàn)各自利益目標(biāo)的同時達(dá)到了整體利益的最大化,實現(xiàn)了雙贏,這是目前校企合作的主要優(yōu)勢。但是,這種優(yōu)勢容易只顧眼前利益,為了就業(yè)和對口培養(yǎng),忽略了培養(yǎng)學(xué)生的綜合素質(zhì),忽略了學(xué)生的長遠(yuǎn)發(fā)展利益,造成學(xué)生后勁發(fā)展不足、再就業(yè)能力差、不能適應(yīng)新信息技術(shù)條件下企業(yè)對軟件人才的要求。因此,我們必須調(diào)整、改進(jìn)校企合作機制下計算機語言類課程的培養(yǎng)人才模式,從教學(xué)思想、師資學(xué)科結(jié)構(gòu)、教學(xué)內(nèi)容、教學(xué)方法等多角度探討計算機語言類課程教學(xué)改革,重視對學(xué)生多方面素質(zhì)的培養(yǎng)。
1、端正教學(xué)思想,加強學(xué)生人文素質(zhì)的培養(yǎng)
校企合作機制下,學(xué)生的實踐能力得到提高,雖技術(shù)嫻熟,但是難以融入企業(yè)中,常常缺乏活力、刻板自私、人際關(guān)系處理不善等。因此學(xué)校和企業(yè)兩方面的教師必須端正教學(xué)思想,不僅要傳授純粹語法的教學(xué)和技術(shù),同時也要注重培養(yǎng)學(xué)生人文素質(zhì),促進(jìn)學(xué)生全面自由發(fā)展。
目前在校企合作機制下,有的學(xué)生能很快融入到企業(yè)文化中去,在企業(yè)中如魚得水,大顯身手;但有些學(xué)生可能不認(rèn)可企業(yè)理念和文化,只是為了經(jīng)濟(jì)利益而就業(yè);有的學(xué)生與同事相處較難,抱怨很多,在企業(yè)中難有所為。因此,無論是學(xué)校或是企業(yè),必須在培養(yǎng)學(xué)生的科學(xué)素養(yǎng)的同時還要加強學(xué)生的人文素質(zhì)的培養(yǎng),使學(xué)生能夠順利融入社會或企業(yè)。
教師不僅要教書,更要育人,課堂上教師要加強大學(xué)精神的教育,培養(yǎng)學(xué)生追求民主自由、尊重科學(xué)、崇尚真理、兼容并包、開放創(chuàng)新等精神,同時要培養(yǎng)學(xué)生正確的世界觀、價值觀、人生觀,通過一個個鮮活的社會案例,教會學(xué)生如何做人行事、待人接物、妥善處理人際關(guān)系、擴大人際交往、塑造學(xué)生的健全人格。學(xué)校積極創(chuàng)造條件,改善基礎(chǔ)設(shè)施和提供經(jīng)費,讓學(xué)生參與各種文體活動、社會實踐活動和競技比賽,建立特色的校園文化,多方面培養(yǎng)學(xué)生的人文素質(zhì),使學(xué)生充滿活力、思想積極、開放向上、身心健康等。
企業(yè)是以追求利潤為目的,為了企業(yè)的長遠(yuǎn)發(fā)展,每個企業(yè)都有自己的企業(yè)理念和企業(yè)文化,因此企業(yè)也要加強學(xué)生人文素質(zhì)的培養(yǎng),將來更好地融入企業(yè)生活。企業(yè)指導(dǎo)教師要有選擇地介紹自己的企業(yè)文化,言傳身教,尊重學(xué)生的個性,傳遞企業(yè)文化正能量。企業(yè)也可以舉辦各類活動,讓學(xué)生積極參與其中,培養(yǎng)團(tuán)隊吃苦耐勞精神、項目成員相處方法、團(tuán)結(jié)協(xié)作精神等。
總之,在校企合作機制下,學(xué)生要學(xué)會有機融合校園文化和企業(yè)文化,計算機語言類課程教學(xué)中,為了學(xué)生的長期發(fā)展,應(yīng)端正教學(xué)思想,不僅僅傳授計算機語言課語法知識,也要加強人文素質(zhì)的培養(yǎng)。
2、優(yōu)化師資學(xué)科結(jié)構(gòu),拓寬學(xué)生的知識領(lǐng)域
教師是提升教學(xué)質(zhì)量的關(guān)鍵,校企合作下,首先學(xué)校定期派一定數(shù)量的教師走進(jìn)企業(yè),加強工程培訓(xùn),積累工程項目經(jīng)驗,提高師資實踐水平,建立一支“雙師”型師資隊伍;其次引進(jìn)軟件企業(yè)的業(yè)務(wù)精英作為兼職老師,企業(yè)的業(yè)務(wù)精英動手能力強、實踐工作經(jīng)驗豐富,給學(xué)生授課,開展教學(xué)指導(dǎo)工作,新穎且實用,激發(fā)學(xué)生的學(xué)習(xí)興趣,改善學(xué)習(xí)效果。
校企合作教學(xué)模式對于培養(yǎng)高等技術(shù)應(yīng)用性人才具有很大的積極作用。根據(jù)軟件企業(yè)的發(fā)展要求,教師可以將所掌握的技能通過實踐教學(xué)傳授給學(xué)生,讓他們能夠做到與軟件企業(yè)需求同步,走進(jìn)軟件企業(yè)能立即上崗,實現(xiàn)人才培養(yǎng)無縫對接。但是,這樣的師資隊伍培養(yǎng)出的人才只是專業(yè)對口人才,學(xué)生的知識領(lǐng)域窄,知識遷移能力弱,例如某位同學(xué)學(xué)習(xí)C++語言,但是工作需要換成JaVa語言或要結(jié)合別的學(xué)科知識,就不能適應(yīng)工作需求,再就業(yè)能力不強。因此,要拓寬學(xué)生的知識領(lǐng)域,不但培養(yǎng)學(xué)生的“?!保€要培養(yǎng)學(xué)生的“博”,更要優(yōu)化師資學(xué)科結(jié)構(gòu)。
優(yōu)化師資學(xué)科結(jié)構(gòu),首先要調(diào)整教學(xué)團(tuán)隊成員。講授計算機語言類課程的教師不一定是科班出身,可以是相近學(xué)科或交叉學(xué)科人才,例如,電子信息類教師可以將編程拓展到信息處理領(lǐng)域,介紹微電子技術(shù)的應(yīng)用;認(rèn)知神經(jīng)科學(xué)類教師可以將編程拓展到生物信息領(lǐng)域,講授如何實現(xiàn)腦圖像的三維重構(gòu)、腦圖像的處理、腦功能網(wǎng)絡(luò)的分析等;通訊專業(yè)教師可以將編程拓展到通信領(lǐng)域,介紹通信領(lǐng)域內(nèi)網(wǎng)絡(luò)、系統(tǒng)、設(shè)備及信息交換、傳輸、處理方面的知識等。通過調(diào)整教師學(xué)科結(jié)構(gòu),既拓寬了教師講授計算機的應(yīng)用領(lǐng)域,讓學(xué)生理解編程語言只是一種工具,感受到計算機語言類課程在生活中的廣泛應(yīng)用,也拓寬了學(xué)生的知識領(lǐng)域,有利于激發(fā)學(xué)生的學(xué)習(xí)興趣。其次,通過“內(nèi)培”和“外引”,積極提高教師的學(xué)歷層次,特別是博士人才的培養(yǎng)。“內(nèi)培”可以通過跨學(xué)科學(xué)習(xí),提高教師的綜合能力,有利于豐富教師講課的內(nèi)容。“外引”可以引進(jìn)國內(nèi)、國際高層次人才,特別是具有博士學(xué)位的人才。高層次人才具有較高的理論素養(yǎng)和實踐能力,思想先進(jìn)、視野開闊,容易接受教學(xué)新理念、新機制、新方法,采用先進(jìn)的教學(xué)手段等,有利于提高課堂教學(xué)質(zhì)量,改善課堂教學(xué)效果;同時科研水平較高,創(chuàng)新能力較強,緊跟學(xué)科最新發(fā)展潮流,有力地支撐著教學(xué)內(nèi)容的深度和廣度,有利于拓寬學(xué)生的知識領(lǐng)域,進(jìn)而提高教學(xué)質(zhì)量,以較高的水平指導(dǎo)學(xué)生的學(xué)習(xí)。
總之,通過優(yōu)化計算機語言類課程師資教學(xué)團(tuán)隊的學(xué)科結(jié)構(gòu),拓寬教師知識體系的深度和廣度,有利于豐富教學(xué)內(nèi)容,拓寬學(xué)生的知識領(lǐng)域。
3、調(diào)整教學(xué)內(nèi)容,提高學(xué)生的綜合理論水平
目前計算機語言類課程的教材大同小異,大多只講述語法,忽略了與其他學(xué)科,例如數(shù)學(xué)、軟件工程、信息技術(shù)等相近學(xué)科的關(guān)系。培養(yǎng)軟件人才,不能只培養(yǎng)一個高級熟練工人,應(yīng)該培養(yǎng)成一個有思想、有理論、創(chuàng)新型復(fù)合人才,使其后勁十足,能夠拓寬自身發(fā)展空間。但是目前校企合作機制下,實踐有余、理論不足,因此必須調(diào)整教學(xué)內(nèi)容,增加理論部分,特別是軟件開發(fā)中的思想理論、設(shè)計理論等,全面提高學(xué)生的綜合理論水平。
調(diào)整教學(xué)內(nèi)容,一方面增加教學(xué)內(nèi)容的實例,培養(yǎng)學(xué)生的應(yīng)用能力,這一點,通過校企合作可以做得較好。但是,另一方面,教學(xué)缺乏思想理論的培養(yǎng),理論是實踐的先導(dǎo),思想是行動的指南,因此在計算機語言類課程的教學(xué)中,應(yīng)適當(dāng)增加理論知識,提高學(xué)生的理論水平。
1)增加軟件工程思想理論和軟件設(shè)計理論,提高學(xué)生的軟件理論水平。
計算機語言類課程培養(yǎng)的目標(biāo)之一就是培養(yǎng)高級的專門軟件人才,但是在人才培養(yǎng)過程中,該類課程只注重語法的教學(xué),完成簡單或中等的項目沒問題,但遇到大型項目就容易出錯,這是缺乏軟件工程思想和軟件設(shè)計理論的表現(xiàn)。因此在培養(yǎng)軟件人才過程中,增加軟件工程思想理論和軟件設(shè)計理論特別重要,例如在Java教學(xué)中,增加了軟件工程的方法的介紹,特別是面向?qū)ο蟮姆椒?,幫助學(xué)生建立面向?qū)ο蟮乃枷耄辉黾恿塑浖O(shè)計理論,特別是建模理論(結(jié)構(gòu)建模、用例建模、動態(tài)建模)和思想、MVC(Model-View-Controller)模式的體系結(jié)構(gòu)的建立,介紹了UML,幫助學(xué)生更好地進(jìn)行軟件設(shè)計;增加了軟件開發(fā)方法理論,介紹了軟件開發(fā)模型,例如瀑布模型、增量模型、螺旋模型等,同時還介紹了軟件開發(fā)過程工作流,例如需求分析、建模設(shè)計、實現(xiàn)和測試、后期維護(hù)等,幫助學(xué)生很好地把握整個軟發(fā)開發(fā)進(jìn)度,及時解決軟件開發(fā)不一致的問題。
2)增加數(shù)學(xué)思想理論在程序設(shè)計的應(yīng)用,提高學(xué)生的數(shù)學(xué)理論素養(yǎng)。
程序設(shè)計離不開數(shù)學(xué)邏輯和數(shù)學(xué)思維,因此在程序設(shè)計教學(xué)中,增加數(shù)學(xué)思想理論,提高學(xué)生的數(shù)學(xué)理論素養(yǎng),能夠更好地幫助學(xué)生進(jìn)行程序設(shè)計,例如增加整體思想和歸納推理思想,幫助學(xué)生建立自上而下和自下而上的程序設(shè)計思想;增加分類思想,在面向?qū)ο蟪绦蛟O(shè)計中,幫助學(xué)生建立類的概念;增加函數(shù)思想,利用函數(shù)的概念和性質(zhì)去分析問題、轉(zhuǎn)化問題和解決問題,幫助學(xué)生培養(yǎng)建模思想,容易設(shè)計程序的模塊和子模塊;增加類比思想,幫助學(xué)生學(xué)習(xí)面向?qū)ο蟪绦蚓幊讨泻瘮?shù)或方法的重載和重寫機制;增加向量和集合思想,幫助學(xué)生學(xué)習(xí)數(shù)組和集合。
3)增加算法設(shè)計理論,提高學(xué)生轉(zhuǎn)化問題的理論水平。
程序設(shè)計要解決的都是應(yīng)用問題,因此需要學(xué)生能夠?qū)⒋鉀Q的或者難以解決的問題經(jīng)過某種轉(zhuǎn)化手段,轉(zhuǎn)化為已有解決方法或者容易解決的問題,來實現(xiàn)最初問題的解決,這個轉(zhuǎn)化過程就是算法。因此在教學(xué)中必須增加算法設(shè)計理論,提高學(xué)生轉(zhuǎn)化問題的理論水平。算法設(shè)計過程,首先要確定輸入和輸出,建立數(shù)據(jù)結(jié)構(gòu);其次注重分析問題,找出邏輯關(guān)系,利用已有知識和能力,轉(zhuǎn)化所求的問題,尋求算法,實現(xiàn)問題的解決;最后畫流程圖或其他算法設(shè)計圖來輔助算法設(shè)計。例如“水仙花”問題,首先確定輸入是一組整數(shù),輸出是一組“水仙花”的整數(shù),因此可以采用數(shù)組存儲數(shù)據(jù)。其次分析邏輯關(guān)系,確定某個整數(shù)是否為“水仙花”。要確定所有整數(shù),所以必須采用循環(huán)結(jié)構(gòu)。最后畫出流程圖輔助設(shè)計編碼。
4)增加課程與其他課程理論的聯(lián)系,拓寬學(xué)生的知識理論水平。
計算機語言類課程不是孤立的課程,與其他課程聯(lián)系緊密,例如數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、網(wǎng)絡(luò)信息技術(shù)等,這些課程的理論思想對計算機語言類課程的學(xué)習(xí)具有一定的影響力,有利于培養(yǎng)學(xué)生的遷移能力,例如數(shù)據(jù)結(jié)構(gòu)的抽象數(shù)據(jù)結(jié)構(gòu)思想,容易遷移到類和接口上面;操作系統(tǒng)的內(nèi)存管理、進(jìn)程、線程通信等思想對于程序設(shè)計中變量的使用、參數(shù)的傳遞、多線程編程等;網(wǎng)絡(luò)信息技術(shù)幫助學(xué)生學(xué)習(xí)網(wǎng)絡(luò)通信方面的編程。
4、多模式教學(xué),培養(yǎng)學(xué)生綜合能力
校企合作機制下,根據(jù)企業(yè)需求,課堂講授語法、最新技術(shù)、編程技巧等。實踐教學(xué)到實習(xí)基地開展,將所學(xué)程序設(shè)計知識通過實踐鍛煉融會貫通,學(xué)生將計算機某種語言學(xué)的很熟練,可以成為一名熟練的高級程序員。但是教師教學(xué)方式變成了固定模式,學(xué)生思維單一,只會固定模式編程,忽略了許多重要思想和能力的培養(yǎng),例如缺乏語言編程思想和探究問題、轉(zhuǎn)化問題的思維能力、軟件工程思想和軟件設(shè)計能力、轉(zhuǎn)化問題能力、創(chuàng)新能力等,學(xué)生只能按照固定模式去思考問題,發(fā)展后勁不足,再就業(yè)能力差等。因此在校企合作下,教師必須運用不同的教學(xué)方法和教學(xué)手段,改變教學(xué)策略,以知識為載體,改善學(xué)生思維品質(zhì),培養(yǎng)學(xué)生的思維能力和綜合能力。
在教學(xué)中,教師精心組織教學(xué),采用多模式教學(xué),注重學(xué)生思維能力的培養(yǎng)。首先,教師采用啟發(fā)式教學(xué),啟迪學(xué)生思維,培養(yǎng)學(xué)生的想象能力和探究問題的能力,進(jìn)而引導(dǎo)學(xué)生思考創(chuàng)新;采用經(jīng)典案例法,培養(yǎng)學(xué)生獨立分析問題、轉(zhuǎn)化問題、自主學(xué)習(xí)和解決實際問題的能力等。其次,采用項目驅(qū)動教學(xué)法,可以貼近實戰(zhàn),培養(yǎng)學(xué)生領(lǐng)導(dǎo)能力、團(tuán)隊協(xié)作能力、系統(tǒng)分析能力、學(xué)習(xí)創(chuàng)新能力等。
總之,筆者贊成采用不同模式教學(xué),讓學(xué)生各方面能力都能得到鍛煉,特別是要把各種程序設(shè)計思想和思維貫穿與計算機語言類課程中,培養(yǎng)學(xué)生的綜合能力,提高學(xué)生的綜合素質(zhì)。
關(guān)鍵詞:C語言教學(xué);自動化專業(yè);專業(yè)技能;專業(yè)特色
中圖分類號:GDP42 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2013)13-3111-03
隨著信息技術(shù)在全社會的進(jìn)一步普及,就業(yè)單位對大學(xué)生的計算機技能有了更高的要求。作為計算機教學(xué)的主要方面—計算機語言的講授,也成為了高等院校教學(xué)改革的一個重點內(nèi)容[1]。計算機語言已不再是一門孤立的課程,而是漸漸地作為一個必不可少的工具滲透到所在專業(yè)的整個學(xué)習(xí)進(jìn)程中來。隨著中小學(xué)階段計算機課程的開設(shè),大學(xué)新生的計算機基礎(chǔ)也在日益提升。同時,由于我國人口素質(zhì)的進(jìn)一步提高,對計算機應(yīng)用已不再滿足于傳統(tǒng)的簡單編程,而是希望將計算機作為一個真正的工具,為生產(chǎn)生活服務(wù)。因此,高校計算機語言教學(xué)改革的迫切性進(jìn)一步增強。如何適應(yīng)新時期下學(xué)生、社會、用人單位對計算機語言水平的要求,是擺在教學(xué)人員面前的一個重要課題[2,3]。
該文以C語言為例探討計算機語言在自動化專業(yè)學(xué)生中教學(xué)的一些改革途徑[4]。作為一門適應(yīng)性很廣的計算機語言,C語言有著很強的生命力。它具備豐富的教材來源、大量的可參考教案和程序?qū)嵗齕5]。是在我國從985重點高校到各類職業(yè)技術(shù)學(xué)院中工科學(xué)生學(xué)習(xí)最廣的一門計算機語言,具有很強的代表性。對自動化專業(yè)的學(xué)生而言,學(xué)好C語言有助于加深對計算機程序設(shè)計思想的理解,為學(xué)習(xí)匯編語言和其他計算機高級語言打下良好的基礎(chǔ)。同時為學(xué)習(xí)后續(xù)專業(yè)課程以及進(jìn)行相應(yīng)的課程設(shè)計做好專業(yè)知識的儲備。
當(dāng)然,應(yīng)該指出的是,該文所列舉的很多方法并不僅適用于C語言。不同計算機語言具有大量的共性,該文所提出的不少思路完全可以在作適當(dāng)增刪之后移植到其他計算機語言的教學(xué)中。同樣,適應(yīng)專業(yè)也不一定局限在自動化專業(yè),很多方法也可供其他專業(yè)參考。
1 教學(xué)過程的組織實施(Plan of teaching process)
1.1 C語言思想的引入
作為C語言教學(xué)的開始,教師有必要向?qū)W生介紹C語言的特點,培養(yǎng)學(xué)生對程序設(shè)計的興趣。同時需要解答學(xué)生在學(xué)習(xí)C語言初期遇到的一些常見問題,使他們不至于一開始就對C語言的學(xué)習(xí)產(chǎn)生畏難情緒。就筆者的教學(xué)經(jīng)驗而言,教學(xué)初期一般會面臨如下問題:
1)學(xué)了它有什么用?
這個問題可能是大學(xué)新生問得最多的一個問題?這時,教師并不一定說:“到時候你們就知道了”,而是可以從學(xué)生所在專業(yè)特色開始深入淺出地談一下C語言的特點和一些容易理解的直觀的應(yīng)用??梢越o學(xué)生介紹一下計算機程序在工廠過程自動化控制中的應(yīng)用。因為學(xué)生將來都要去工廠進(jìn)行實習(xí)的,事先給他們介紹一下這些背景知識可以有效地提高他們對C語言學(xué)習(xí)的好奇和渴望。同時也是為他們的專業(yè)課程學(xué)習(xí)做好鋪墊。
2)我能學(xué)好嗎?
由于我國一些農(nóng)村中學(xué)計算機教學(xué)的局限,一些新生在看到其他有些同學(xué)具備較為熟練的計算機操作能力可能會產(chǎn)生焦慮情緒。這時,教師在課堂舉例時,應(yīng)當(dāng)多舉淺顯易懂的例子。興趣是最好的老師。C語言教學(xué)不是數(shù)學(xué)學(xué)習(xí),不應(yīng)該拿復(fù)雜的公式編程來使學(xué)生望而生畏。例如:如果要使學(xué)生熟悉條件語言、循環(huán)語句的使用,用最簡單的數(shù)學(xué)四則運算舉例即可。不要讓學(xué)生把注意力過多地放在數(shù)學(xué)背景上。
3)考試怎么考?
關(guān)注自己的成績是每個學(xué)生的權(quán)利,作為老師也有義務(wù)向?qū)W生講述考試的題型和方式。在這里,我們的經(jīng)驗是鼓勵學(xué)生多看其他的講授C語言的書籍。大學(xué)不像中學(xué),由于知識的經(jīng)典性,中學(xué)的教材一般是統(tǒng)一的。而大學(xué)教材則體現(xiàn)了不同專業(yè),不同編者的個性風(fēng)格。在這里,我們希望學(xué)生能汲取各家之長。如果某個知識點在一本教材里沒有看懂,那么就試圖去另外一本教材里去找找。這種做法另一個好處是破除了學(xué)生對知識會一成不變的迷信。讓學(xué)生明白:知識是不斷發(fā)展的,必須不斷學(xué)習(xí)才能不斷地充實自己。
4)今后還會用到嗎?
在中學(xué),雖然每個學(xué)期所學(xué)的知識在不斷的變化,但課程名卻總是那么幾個。但是在大學(xué),課程名會隨著所學(xué)內(nèi)容的變化在不斷地更新。如果說新生對大一的英語、數(shù)學(xué)、政治理論等課程名還似曾相識的話,那么面對高年級的一堆陌生的課程名就有點迷茫了。面對這個問題,我們可以在講授C語言各個章節(jié)時用適當(dāng)?shù)臅r間舉例講授一下該部分內(nèi)容在未來的哪些課程里面會有所涉及。通過這樣的講述,學(xué)生不但從感性上認(rèn)識了將來要學(xué)習(xí)的課程的一些特點,也更進(jìn)一步加深了對目前學(xué)的C語言的理解。
1.2 注重論述C語言和其他課程的相關(guān)性
作為自動化專業(yè)的一門課程,C語言既是整個自動化專業(yè)課程體系的一部分,同時也是一個貫穿專業(yè)學(xué)習(xí)始終的工具。我們在講授C語言時,沒有將它與其他課程割裂開來,而是時而不時有目的地貫輸了C語言如何在其他的知識領(lǐng)域中的一些應(yīng)用。在這里所需要指出的的,或許有老師認(rèn)為對新生談及一些專業(yè)課內(nèi)容可能會使他們無所適從(因為他們尚無太多的專業(yè)基礎(chǔ))。就我們的實踐經(jīng)驗來看,這種擔(dān)心沒有太多必要。現(xiàn)在大部分學(xué)生的自學(xué)能力和理解能力較過去已大大增強,而且目前高校給予學(xué)生的專業(yè)熏陶較之過去也已不可同日而語。新生完全有能力理解老師所講的一些簡易的專業(yè)內(nèi)容?,F(xiàn)舉一些C語言與其他專業(yè)課結(jié)合的例子如下:
《數(shù)字電子技術(shù)》的一個基礎(chǔ)內(nèi)容是與門、或門、非門等邏輯門電路的講解。而這部分內(nèi)容又恰好對應(yīng)了C語言中的與、或、非三種邏輯運算。我們在講授C語言邏輯運算的同時也介紹了該部分內(nèi)容與《數(shù)字電子技術(shù)》內(nèi)容的吻合性。同時,電子技術(shù)中又涉及到數(shù)/模、模/數(shù)的轉(zhuǎn)化問題。我們在講循環(huán)語句時就要求學(xué)生嘗試編一個十進(jìn)制數(shù)和二進(jìn)制數(shù)轉(zhuǎn)化的程序(其算法在更早的《大學(xué)計算機基礎(chǔ)》課程里就已經(jīng)講授到)。使學(xué)生對硬件邏輯和軟件邏輯的概念具有了直觀的概念。
計算機控制的一個特點在于它控制指令的離散性?!队嬎銠C控制》課程中一個很重要的知識點是控制量的遞推運算。我們在講述一維數(shù)組時有意識地強化了數(shù)組元素的遞推編程。并且通過設(shè)置標(biāo)志位,對某些具有特定意義的元素進(jìn)行了定位標(biāo)示。使學(xué)生在今后接觸到相關(guān)課程時感到有章可循。
《微型計算機原理》是自動化專業(yè)中一門重要課程。在這門課程中,指令地址的概念是一個較難理解的問題。我們在講C語言的指針部分時有意識地涉及到了該部分內(nèi)容。試圖通過講述指針為今后學(xué)習(xí)指令尋址打下基礎(chǔ),反之,也試圖通過介紹指令地址,使學(xué)生明確指針一節(jié)的地位和重要性。
作為一門工具性與理論性兼?zhèn)涞恼n程,《數(shù)據(jù)庫技術(shù)》里面的內(nèi)容較為繁雜。在講述結(jié)構(gòu)體這一章時,我們有意識地介紹了數(shù)據(jù)庫的基本組成思想。要求學(xué)生用結(jié)構(gòu)體知識編一個小型的數(shù)據(jù)管理程序。任務(wù)雖然簡單,但已經(jīng)涉及到了數(shù)據(jù)庫組成的主干思想。使學(xué)生對這門課程不再神秘。
MATLAB語言的講授是《計算機仿真技術(shù)》課程的骨干內(nèi)容。考慮到仿真技術(shù)對于自動化專業(yè)的重要性,我們在講授C語言語句的同時,也適量介紹了它在MATLAB語言中所對應(yīng)的代碼。這樣做的目的是為學(xué)生破除“世界上只有C語言”這一誤解。為他們更好地理解程序員的含義打下基礎(chǔ)。
通過諸如此類內(nèi)容的引入,學(xué)生學(xué)習(xí)C語言不再感到單一乏味。同時,由于我們對相關(guān)內(nèi)容點到為止,并沒有增加學(xué)生的負(fù)擔(dān)。而當(dāng)學(xué)生將來接觸到對應(yīng)的知識點時,就會享受到以前學(xué)習(xí)的基礎(chǔ)了。
2 教學(xué)案例分析
本節(jié)就我們講述C語言時的相關(guān)案例進(jìn)行探討。意圖拋磚引玉,進(jìn)一步完善C語言教學(xué)。如前所述,興趣是最好的老師。如果學(xué)生有了學(xué)習(xí)的興趣,自然教學(xué)會事半功倍。因此,我們將興趣的培養(yǎng)貫穿了C語言教學(xué)的始終。
計算機編程的一個核心思想之一是通過不斷循環(huán)執(zhí)行一些簡單的語句來實現(xiàn)對目標(biāo)的搜索,并且在搜索的過程中需要判斷搜索的終止條件是否已經(jīng)達(dá)到。因而條件語句和循環(huán)語句的教學(xué)是C語言教學(xué)的一項重點內(nèi)容。為了培養(yǎng)學(xué)生的興趣,結(jié)合學(xué)生理工科的專業(yè)背景,我們在教學(xué)中引入了不少數(shù)論名題作為例子,要求學(xué)生編程予以驗證。例如:3x+1猜想是一個很有趣的問題[6]。這個猜想是:任意給一個自然數(shù),如果它是偶數(shù),則除以2;如果它是奇數(shù),則乘以3再加上1.所得結(jié)果再按如上規(guī)則進(jìn)行運算,最終結(jié)果一定是1.例如,對數(shù)字7,其后續(xù)的運算結(jié)果是;22,11,34,17,52,26,13,40,20,20,5,16,8,4,2,1.針對這個問題,我們要求學(xué)生用條件語句判斷數(shù)字的奇偶性,然后用循環(huán)語句實現(xiàn)這個數(shù)列的計算。更推廣一步,我們還要求學(xué)生用隨機數(shù)發(fā)生器生成一個隨機整數(shù),然后分別用while循環(huán)和do-while循環(huán)來實現(xiàn)這個過程,并且要學(xué)生記錄下達(dá)到1時一共產(chǎn)生了幾個數(shù)?如何實現(xiàn)到1就退出循環(huán)?在這一循環(huán)過程中的最大值是多少?由于3x+1問題的淺顯易懂,且因為其尚未得到證明所具有強大挑戰(zhàn)性,使學(xué)生對編程產(chǎn)生了濃厚的興趣。不少學(xué)生紛紛試圖去驗證自己所提出的數(shù)的正確性。還有學(xué)生則試圖進(jìn)一步通過函數(shù)調(diào)用的方式來改善程序。也有學(xué)生在程序中插入了各種有趣的提示性語句。這個例子的提出,滿足了不同層次學(xué)生的不同要求。一下子就把他們帶進(jìn)了豐富多彩的代碼世界中。
輸入輸出語句的編寫是人機交互的關(guān)鍵環(huán)節(jié)。總所周知,英語學(xué)習(xí)是我國廣大大中學(xué)生學(xué)習(xí)的一個主要課程。幾乎所有的大專院校都把學(xué)生能否通過某種英語水平考試作為其能否順利畢業(yè)的核心條件之一。我們也注意到個別學(xué)生由于擔(dān)心英語的壓力而在課堂上記憶英語單詞。對此,我們采用了引導(dǎo)的辦法。在針對3x+1問題編程的訓(xùn)練中,我們要求學(xué)生用英文寫出對應(yīng)代碼的提示和答案。在此之前,不少學(xué)生是用漢語拼音或簡單的“yes”、“no”,甚至僅是“?”來表示問題的。通過我們的這一要求,學(xué)生積極地去尋求許多詞匯的英文表述。這樣一來,他們希望看懂C語言編譯器所給出的英文錯誤提示的熱情也越來越高了。通過這樣的訓(xùn)練,有些學(xué)生開始漸漸能嘗試看一些關(guān)于C語言的英文著作了。如此不斷循環(huán),學(xué)生的計算機能力、英語能力都得到了提高,應(yīng)該說是實現(xiàn)了雙贏。
3 結(jié)束語
計算機語言的教學(xué)工作是工科專業(yè)教學(xué)的一個重點環(huán)節(jié)。科技發(fā)展的客觀要求使得我們更加重視教學(xué)課程的一體化。作為一門在專業(yè)學(xué)習(xí)初期階段開設(shè)的課程,C語言有它自身的一些教學(xué)特點。我們在總結(jié)自己的一些教學(xué)經(jīng)驗的基礎(chǔ)上,試圖更好地將C語言這個工具融入到學(xué)生的整個專業(yè)學(xué)習(xí)體系中。讓學(xué)生從享受編程的快樂開始,無形中回答了自己前期的一些疑惑,同時也不知不覺地為將來的其他課程學(xué)習(xí)以及自己專業(yè)素質(zhì)的培養(yǎng)打下了良好的基礎(chǔ)。
參考文獻(xiàn):
[1] 謝寶榮.計算機教學(xué)設(shè)計藝術(shù)[M].清華大學(xué)出版社,2007.
[2] 陳國良,董榮勝.計算思維與大學(xué)計算機基礎(chǔ)教育[J].中國大學(xué)教學(xué),2011(1):7-12.
[3] 馮博琴.計算機基礎(chǔ)教育新階段的教學(xué)改革研究[J].中國大學(xué)教育,2004(9):7-10.
[4] 王鵬遠(yuǎn),蘇虹.高校非計算機專業(yè)C語言教學(xué)改革與實踐[J].計算機教育,2011(2):15-18.
盜傳必究
一、名詞解釋
題目1
材料:
材料是人們用來制造有用物品的各種物質(zhì)。
題目2
細(xì)胞全能性
細(xì)胞的全能性指已經(jīng)分化的細(xì)胞,仍然具有發(fā)育的潛能。
題目3
計算機病毒
計算機病毒是仿造生物病毒建立起的概念,它是指可以制造故障的一段計算機程序或一組計算機指令。
題目4
宇宙
宇宙是天地萬物,是廣漠空間和其中存在的各種天體以及彌漫物質(zhì)的總稱。
題目4
核力
原子核中核子之間存在的作用力。
題目5
納米材料
納米材料就是用特殊的方法將材料顆粒加工到納米級(10-9米),再用這種超細(xì)微粒子制造的材料。
題目6
基因表達(dá)
基因表達(dá)就是遺傳信息表現(xiàn)為生物性狀的過程。
題目7
計算機語言
計算機語言就是一套計算機能識別的指令系統(tǒng)。
題目8
核能
核能是在原子核變化過程中,從變化前后原子核質(zhì)量虧損的質(zhì)量差轉(zhuǎn)化來的能量。
題目9
納米材料
納米材料就是用特殊的方法將材料顆粒加工到納米級(10-9米),再用這種超細(xì)微粒子制造的材料。
題目10
地球外部圈層結(jié)構(gòu)
地球外部圈層結(jié)構(gòu)指地球外部離地表平均800千米以內(nèi)的圈層,包括大氣圈、水圈和生物圈。
題目11
關(guān)鍵詞:C語言;計算機
一、首先要學(xué)好數(shù)學(xué)這門基礎(chǔ)課
IT 界有一句比較實在的話“數(shù)學(xué)是計算機之母”。在 C 語言的學(xué)習(xí)過程中,一般有大量的算法和數(shù)據(jù)結(jié)構(gòu)需要去了解,由此可見數(shù)學(xué)在計算機學(xué)習(xí)中的重要地位,同理,在 C 語言的學(xué)習(xí)過程中,數(shù)學(xué)思想的應(yīng)用會讓人有豁然開朗之感,一些簡單的運算問題的解決其實就是在數(shù)學(xué)領(lǐng)域的,編寫程序是為了讓計算機可以代替人操作運算過程,從而減少人力。
二.、明確學(xué)習(xí)C語言的目的
我們的學(xué)習(xí)目的不是只為了學(xué)習(xí)C語言,而是為了能夠掌握程序設(shè)計的方法,具有程序設(shè)計的基本理念,為以后的計算機應(yīng)用打下基礎(chǔ)。在學(xué)習(xí)中很多學(xué)生認(rèn)為這門課程既難學(xué)、又看不到任何成果, 不如 Java 等語言很快就能編寫出有漂亮圖形界面的程序。 但C 語言有助于對計算機編程底層原理的理解,對調(diào)整知識結(jié)構(gòu)和能力結(jié)構(gòu),提高自己的綜合素質(zhì)都有很大幫助。
三、語言入門
剛開始接觸計算機知識,處于一個計算機技術(shù)的啟蒙階段.在這個啟蒙階段,最重要的就是入門。當(dāng)大家都滿懷信心的去學(xué)習(xí)那些被各大高校都當(dāng)作計算機入門教材的C 語言的時候,發(fā)現(xiàn)太多的“不明白”,因此《C語言程序設(shè)計》入門課是至關(guān)重要的。因為學(xué)生都是初次接觸C語言,C 語言對他們來說是神秘的,首先在學(xué)習(xí)之前要充分了解相關(guān)領(lǐng)域的知識,明確學(xué)習(xí)目的及學(xué)習(xí)重要性,激發(fā)學(xué)生的學(xué)習(xí)好奇心和欲望。
四、了解C語言的發(fā)展歷史,使自己對C語言產(chǎn)生一種似曾相識的感覺
C語言是國際上廣泛流行的計算機語言,既可以用來寫系統(tǒng)軟件,也可以用來寫應(yīng)用軟件,特別對操作系統(tǒng)和系統(tǒng)實用程序以及需要對硬件進(jìn)行操作的場合,C語言明顯地占優(yōu)勢。比如網(wǎng)絡(luò)編程語言PHP的絕大部分內(nèi)容與C語言相同,如果學(xué)過C語言,那么再學(xué)PHP就會非常輕松。
五、把好實踐關(guān),重視每次上機試驗
C語言是一門實踐性很強的課程,既要掌握概念,又要動手編程、上機調(diào)試運行。養(yǎng)成上機前分析題目,決定算法與數(shù)據(jù)結(jié)構(gòu),并編出程序源代碼的好習(xí)慣,這樣在上機時,就會有的放矢,上機時輸入程序并完成語法檢查,再運行程序,檢查運行結(jié)果,同時詳細(xì)記錄下在程序調(diào)試過程中所遇到的問題及解決辦法。編程千萬不可遇難而退,這個時候是決定你水平提高的關(guān)鍵,一定要堅持到底。堅持就能成功。上機過程中主要精力放在調(diào)式程序上。實習(xí)結(jié)束后隨堂完成實驗報告,逐步積累調(diào)試程序的經(jīng)驗。培養(yǎng)自己良好的編程習(xí)慣。明確一點“C 語言不是看會的,也不是聽會的,而是親自動手實踐練會的”。
六、強調(diào)問題學(xué)習(xí),培養(yǎng)自己的創(chuàng)造性思維
目前許多學(xué)生普遍缺乏問題意識,則學(xué)習(xí)就失去了快速前進(jìn)的動力。每次學(xué)習(xí)都要帶著問題去學(xué),直到把問題解決了,知識也就掌握了??茖W(xué)并非始于觀察,而是始于科學(xué)問題,正是問題激發(fā)人們?nèi)ビ^察、去思考,從而啟動了科學(xué)探索的創(chuàng)造機制激活了科學(xué)家的創(chuàng)新思路。
七、牢牢把握住C語言的知識要點
C語言內(nèi)容十分豐富,各知識點具有非常大的連貫性,常常是牽一發(fā)而動全身,這往往使得學(xué)生在入門階段容易產(chǎn)生畏難情緒。眼高手低是每一個剛學(xué) C 語言的人都會出現(xiàn)的一種情況。由于 C 語言靈活、強大,初學(xué)者要全面地掌握它非常吃力,因此在學(xué)習(xí) C 語言的過程中,一定要熟練掌握 C 語言的流程控制語句、數(shù)組、函數(shù)、指針等基礎(chǔ)知識??梢园褜W(xué)習(xí)的重點放在函數(shù)的設(shè)計框架、參數(shù)設(shè)計、返回值設(shè)計等關(guān)鍵問題上。
八、學(xué)習(xí)過程中引入軟件工程的基本思想
為使自己有良好的編程思維,培養(yǎng)自己在程序設(shè)計中從軟件工程角度去系統(tǒng)分析問題的良好習(xí)慣。
總之,計算機語言是各高校普遍設(shè)置的一門計算機課程,也是培養(yǎng)大學(xué)生計算機能力的一門基礎(chǔ)課程,是各專業(yè)學(xué)生進(jìn)行計算機編程以及從事計算機研究的基礎(chǔ)類課程,意義十分重大。計算機語言的種類很多,各種語言的區(qū)別只是語法規(guī)則和具體的實現(xiàn)方式不同,好多方面都是相通的,所以對于計算機語言的學(xué)習(xí)關(guān)鍵在于精而不在于多。C語言是計算機程序設(shè)計中一種廣泛使用的基本語言工具,學(xué)習(xí) C語言是學(xué)生形成編程思維,是為將來進(jìn)行計算機軟件開發(fā)設(shè)計打下基礎(chǔ)的重要過程。
【參考文獻(xiàn)】
[1]李少華.《C語言程序設(shè)計》教學(xué)中的幾點體會,長江大學(xué)學(xué)報(社會科學(xué)版).2010,(10).
摘要:本文在明確教學(xué)目標(biāo)的基礎(chǔ)上,提出并探討了案例實驗教學(xué)法的組織策略和實施過程。文中以C語言為例詳細(xì)論述了如何圍繞案例組織教學(xué)內(nèi)容和設(shè)置實驗環(huán)節(jié),并給出數(shù)組單元的教學(xué)方法。
關(guān)鍵詞:計算機語言;程序設(shè)計;案例教學(xué);實驗;C語言
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:B
1教學(xué)目標(biāo)
計算機語言的學(xué)習(xí)存在著一種現(xiàn)象,學(xué)生在學(xué)習(xí)過程中,跟隨教師被動地學(xué)習(xí),對程序設(shè)計沒有整體的觀念,缺乏明確的目的性,甚至學(xué)習(xí)效果如何也不知道,最后即使拿到高分,在真正編程時仍然覺得難以下手,沒有思路,完全不知道如何將所學(xué)的知識應(yīng)用到實際編程中。這種現(xiàn)狀讓我們不得不反思:我們的教學(xué)目的到底是什么?教學(xué)效果應(yīng)如何衡量?課程應(yīng)怎樣組織?
很顯然,僅僅讓學(xué)生掌握計算機語言的語句、語法等細(xì)節(jié)是不行的。通過計算機語言的學(xué)習(xí),學(xué)生應(yīng)具備程序設(shè)計的能力和實際解決問題的能力,學(xué)生要掌握的是程序設(shè)計思想和相應(yīng)的學(xué)習(xí)方法,構(gòu)建相應(yīng)的知識體系,并具備知識擴展的能力。因此可以從以下三個方面衡量教學(xué)效果:
掌握一門語言的主干,并能在相關(guān)參考資料的幫助下解決實際問題(知道如何和怎樣得到幫助);
掌握一定的算法和程序設(shè)計思想;
具備上機調(diào)試的能力。
相應(yīng)地,課程的教學(xué)有兩層目標(biāo):
幫助建立程序設(shè)計中應(yīng)用到的概念以及理解計算機語言規(guī)則;
幫助建立編程思想以進(jìn)行真正的編程活動。
2案例實驗教學(xué)法
不同于其他學(xué)科,計算機科學(xué)的學(xué)習(xí)僅僅有解決方案還不行,還需要動手將其變?yōu)楝F(xiàn)實,也就是要通過實驗來鞏固和驗證所學(xué)。實驗的過程還可以發(fā)現(xiàn)知識結(jié)構(gòu)的欠缺,進(jìn)一步引發(fā)學(xué)習(xí)動機。因此教學(xué)過程中除了要重視案例的講解,也要重視實驗,這兩者是相輔相成的。在教學(xué)中結(jié)合案例的課堂講解,可以設(shè)置兩類實驗:
同步實驗:和課堂教學(xué)緊密結(jié)合,其目的是幫助學(xué)生建立和理解程序設(shè)計中用到的概念以及語言規(guī)則,學(xué)習(xí)基本的實驗技能,掌握程序調(diào)試方法;
自主實驗:通過階段性學(xué)習(xí)后進(jìn)行較為綜合的實驗,其目的在于幫助學(xué)生掌握編程的方法并進(jìn)行真正的編程活動。
案例實驗教學(xué)法的組織實施過程如圖1所示,教師首先從案例演示開始,讓學(xué)生理解計算機語言應(yīng)用的場景,能解決的問題,產(chǎn)生學(xué)習(xí)興趣;然后,逐步分解案例并進(jìn)行分析,幫助學(xué)生建立和理解學(xué)習(xí)目標(biāo),并引入不同的知識單元;再針對當(dāng)前知識單元,布置同步實驗。通過階段性學(xué)習(xí)后,在學(xué)生已有知識基礎(chǔ)上對案例進(jìn)行擴展,布置自主實驗,引導(dǎo)學(xué)生發(fā)現(xiàn)存在的問題,促使其主動學(xué)習(xí);而實驗過程以及實驗結(jié)果,也能讓教師了解學(xué)生的學(xué)習(xí)情況,相應(yīng)的調(diào)整教學(xué)方案,并且通過對學(xué)生成果的展示和評價進(jìn)一步激發(fā)學(xué)生學(xué)習(xí)的主動性,提高學(xué)習(xí)興趣。
案例實驗教學(xué)法的整個組織強調(diào)的是課堂講解和學(xué)生實踐的緊密結(jié)合,學(xué)生對知識的理解情況以及學(xué)生實驗實施情況都成為后續(xù)教案設(shè)計中必須考慮的重要因素,而學(xué)生也能體會主動學(xué)習(xí)以及成功的經(jīng)驗,主動完成知識構(gòu)建。
3案例實驗教學(xué)法的實施
從案例實驗教學(xué)法的組織過程中可以看見,案例和實驗環(huán)節(jié)是聯(lián)系教和學(xué)的紐帶,也是教學(xué)活動能有效實施的關(guān)鍵,下面以C語言為例,說明案例和實驗環(huán)節(jié)如何設(shè)置。
3.1案例選擇及知識點的分解
案例的選擇不能強調(diào)難度,而應(yīng)具備普遍的代表性且是學(xué)生易于理解和感興趣的。例如可以選擇用C語言實現(xiàn)的迷宮、貪吃蛇等游戲,也可以選擇簡單的信息管理系統(tǒng),如書籍借閱、學(xué)生管理等。在這里我們以學(xué)生成績管理系統(tǒng)為例。選定案例后,先進(jìn)行程序的演示,以便學(xué)生理解C語言可以作什么,有感官上的認(rèn)識,然后結(jié)合軟件工程設(shè)計思想,從需求分析、設(shè)計、編碼、調(diào)試、運行各個階段展示案例,使得學(xué)生對將需求從客觀現(xiàn)實世界映射到計算機軟件世界有初步的了解。再結(jié)合面向過程程序設(shè)計思想,從功能角度將系統(tǒng)分為若干主要模塊:
第一階段:基本的程序設(shè)計和實現(xiàn)
(1) 數(shù)據(jù)的錄入和顯示:數(shù)據(jù)類型、變量、常量、輸入輸出方法;
(2) 數(shù)據(jù)的計算:算法思想、表達(dá)式、三種控制結(jié)構(gòu);
(3) 成績排序和查詢:數(shù)組、排序算法和查找算法;
第二階段:提高程序質(zhì)量
菜單的實現(xiàn):函數(shù)和預(yù)處理命令;
第三階段:高級應(yīng)用
(1) 數(shù)據(jù)的訪問:指針;
(2) 數(shù)據(jù)的存儲:結(jié)構(gòu)體和共用體;
(3) 和外存的交互:文件;
上述模塊劃分后,學(xué)生很自然地了解程序設(shè)計和計算機語言學(xué)習(xí)的循序漸進(jìn)的過程:首先是在程序設(shè)計過程中我需要解決什么問題,然后是用什么方法以及知識可以解決問題。這樣學(xué)生就能理解各個知識點之間的關(guān)系,樹立明確的學(xué)習(xí)目標(biāo)。
在各個知識點的教學(xué)后設(shè)置同步實驗,對課堂知識進(jìn)行鞏固并作相應(yīng)的擴展。將全部課程分為三個階段,在每一階段后引入自主實驗,通過一個較為綜合的實驗,培養(yǎng)學(xué)生的實踐能力,擴大知識面。自主實驗后應(yīng)有相應(yīng)的評價環(huán)節(jié),讓學(xué)生展示自己的成果并對欠缺的知識有一定的認(rèn)識,為后階段的教學(xué)作鋪墊。
3.2案例實驗教學(xué)法實例
教學(xué)活動的設(shè)計和實施過程要始終圍繞培養(yǎng)學(xué)生的程序設(shè)計能力和實際解決問題能力。程序的實現(xiàn)有兩個關(guān)鍵因素,一是算法,二是語言。對程序設(shè)計而言,語言僅僅是一個工具,算法才是本質(zhì)的內(nèi)容,因此每一部分的學(xué)習(xí)首先都應(yīng)該強調(diào)算法的思想和程序設(shè)計的方法,然后才是具體的語法規(guī)則的學(xué)習(xí)。
計算機語言中數(shù)組是非常重要也很實用的存儲結(jié)構(gòu),而排序和查找算法則是計算機應(yīng)用中最基本的操作任務(wù)。下面以第一階段第三個知識點即學(xué)生成績的排序和查找為例說明案例實驗教學(xué)活動是如何開展的。
〔教學(xué)目的〕
1. 理解排序查找算法的思想
2. 數(shù)組的概念及其應(yīng)用
3. 強化順序、分支、循環(huán)控制結(jié)構(gòu)的應(yīng)用
〔案例教學(xué)過程〕
程序設(shè)計的目的是要解決實際問題,在選擇了合適的教學(xué)案例后就應(yīng)根據(jù)實際的教學(xué)情況在合適的時候提出合適的問題,以問題驅(qū)動教學(xué)可以更好地促使學(xué)生進(jìn)行主動學(xué)習(xí),有效地提高教學(xué)效率。
1. 問題引入:演示對M個學(xué)生N門功課的成績排序以及查詢某個學(xué)生各門課成績查詢的程序。為提高學(xué)生學(xué)習(xí)興趣,還可以結(jié)合當(dāng)前應(yīng)用熱點如數(shù)據(jù)庫、搜索引擎講解排序查詢算法的實際需求。提出問題:如何實現(xiàn)查詢和排序?
2. 分析講解:通過對問題的逐步分析,引導(dǎo)學(xué)生掌握算法思想和語法規(guī)則。
(1) 簡化問題,組織討論,理解算法提出的必要性。例如對a,b,c三個數(shù)進(jìn)行排序。初次接觸排序的學(xué)生首先想到用if…else…語句將三個數(shù)兩兩比較,直到完成排序。再提出問題:當(dāng)數(shù)字的個數(shù)增加到四個、五個甚至任意個數(shù)時,怎樣排序?上述解決方案是否可行?顯然,不可行,那么問題出在哪里?回顧算法的要點:算法應(yīng)具有通用的表達(dá)方式,可以給出計算機可執(zhí)行的操作步驟。上述方法不具有通用性。
(2) 引入一種排序算法如交換法的思想。利用動畫引導(dǎo)學(xué)生聯(lián)想日常生活的場景,如N個人從高到矮排隊會怎么做?個子最高的站第一個,然后是第二個,…,在這個過程一直重復(fù)做兩件事情:比較和交換位置。引申到用計算機實現(xiàn)N個數(shù)的排序,學(xué)生能比較自然地接受交換法的思想。再次讓學(xué)生給出解決方案,畫出如圖2所示的算法流程圖。
(3) 提出問題:上述解決方案在實際編程過程中N個數(shù)怎么存儲?引入數(shù)組這種重要的存儲結(jié)構(gòu)
(4) 核心知識的學(xué)習(xí):在這部分的學(xué)習(xí)中可以用典型的、較為簡單的例題進(jìn)行講解,如Fibonacci數(shù)列、矩陣的簡單計算以及字符串的復(fù)制等。幫助學(xué)生學(xué)習(xí)涉及的核心知識點:一維數(shù)組、二維數(shù)組、字符數(shù)組的定義、引用和初始化方法,并熟悉數(shù)組結(jié)構(gòu)在程序中應(yīng)用的場景和方法
(5) 學(xué)生成績排序案例的程序講解
(6) 用類似的方法完成查找算法思想的介紹和成績查詢案例的程序講解
3. 總結(jié)深化:教師就教學(xué)過程中應(yīng)掌握的知識點進(jìn)行總結(jié)歸納。在此基礎(chǔ)上,由學(xué)生提出自己的疑問,引起再一次的思考,以真正掌握知識。
〔同步實驗〕
同步實驗需要和課堂以及書本緊密結(jié)合,主要包括兩部分的內(nèi)容:其一,和課堂上的典型例題相似,學(xué)生通過讀程,仿照程序開始編寫程序的學(xué)習(xí),能較順利的開始實驗,增強信心,也能通過積極的思考回顧并掌握課堂上的知識點;其二,對課堂例題的延伸,如采用一題多變,一題多解等形式,鼓勵學(xué)生積極思考,突破思維定式,更好的掌握算法。
實驗內(nèi)容:
1. 任意輸入10個整數(shù),存儲在一維數(shù)組中,實現(xiàn)數(shù)組的輸出、排序、查找
2. 二維矩陣的最大值求解并輸出其所在的行列
3. 打印楊輝三角
4. 字符串的輸入、輸出、在字符串前增加一個字符、排序、查找
〔自主實驗〕
經(jīng)過階段性學(xué)習(xí)后,引入自主實驗。除了布置實驗內(nèi)容,教師還應(yīng)介紹學(xué)習(xí)資源(包括書籍、網(wǎng)站等),給出合適的問題,讓學(xué)生帶有目標(biāo)的完成任務(wù)。其目的在于提高學(xué)習(xí)興趣,激發(fā)學(xué)生的創(chuàng)造性,鼓勵學(xué)生為解決問題從不同途徑中獲得幫助,學(xué)會查找資料、使用資料的能力,使其具備擴展自身知識體系的能力。
實驗內(nèi)容:編寫一個小型的游戲程序,如猜測計算機隨機生成的數(shù)字,實現(xiàn)玩家成績的排序或查找玩家的歷史成績。程序設(shè)計過程中請考慮:查找或排序的效率和哪些因素有關(guān)?還有哪些排序或查找算法可以使用,如何衡量查找或排序的效率?
〔實驗講評〕
學(xué)生程序得以實現(xiàn)后,并不意味著實驗的結(jié)束,必須進(jìn)行講評,包括:
1. 對實驗過程中遇到的常見問題進(jìn)行講解,深化知識的理解
2. 學(xué)生有代表性解決方案的展示,使得學(xué)生對所作的工作有成就感,提升學(xué)習(xí)的興趣。在這個實驗中,學(xué)生普遍對排序算法表現(xiàn)出極大的興趣,通過查閱相關(guān)的教材資料,嘗試了不同的排序方法,如選擇、冒泡、快速排序等,開拓了視野。這顯然不同于以往學(xué)生局限于學(xué)習(xí)教材所講的一到二種算法。在排序效率分析上,除了常規(guī)的獲取系統(tǒng)時間的方法,還有同學(xué)想到用統(tǒng)計算法中比較次數(shù)和交換次數(shù)的方法。此時,教師的鼓勵將達(dá)到事半功倍的效果
3. 對實驗結(jié)果進(jìn)行總結(jié),引發(fā)進(jìn)一步的思考。解決方案中是否有不完善的地方,用現(xiàn)有的知識能否解決?如不能,需要學(xué)習(xí)怎樣的知識?例如程序中猜數(shù)字、查找、排序等功能都在一個main()函數(shù)中實現(xiàn),會有什么樣的問題?如果你作為語言的設(shè)計者會提供什么方法來解決呢?又如玩家每玩一次游戲,記錄成績的數(shù)組長度就必須增加,但是數(shù)組定義又要求長度是常量,所以只能選擇盡量大的值,那么在事先不確定游戲次數(shù)的情況下,如何實現(xiàn)不固定長度的數(shù)組呢?這樣自然的引出后續(xù)的教學(xué)單元:函數(shù)、指針等內(nèi)容。
〔方案評價〕
教師根據(jù)案例的實施情況以及學(xué)生實驗情況對教學(xué)方案進(jìn)行調(diào)整,最大程度的使教案適應(yīng)學(xué)生。當(dāng)然也可以讓學(xué)生參與教案的評價。
上述教案經(jīng)筆者實踐,學(xué)生反響積極,經(jīng)過第一階段的學(xué)習(xí),特別是自主實驗后,學(xué)生理解了計算機語言學(xué)習(xí)的重點所在,學(xué)會資料的查找和使用,開始大膽嘗試編程,后續(xù)的教學(xué)教師就可以在提高程序質(zhì)量和程序風(fēng)格上多加引導(dǎo)。
4結(jié)束語
案例實驗教學(xué)法通過課堂講解、實驗鞏固擴展,將教和學(xué)緊密結(jié)合,在教學(xué)活動中突出程序設(shè)計思想,在案例的分析、程序的設(shè)計和實現(xiàn)過程中注重實驗環(huán)節(jié),讓學(xué)生主動參與,充分調(diào)動學(xué)生的興趣,在掌握語法規(guī)則、熟悉且能應(yīng)用編程語言的同時,能有效地培養(yǎng)學(xué)生的編程實踐能力和探索能力。
參 考 文 獻(xiàn)
[1] 董榮勝,古天龍著.計算機科學(xué)與技術(shù)方法論[M].北京:人民郵電出版社,2002.
[2] 史美蘭.體會哈佛案例教學(xué)[J].國家行政學(xué)院學(xué)報,2005,(2).