前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)主題范文,僅供參考,歡迎閱讀并收藏。
關(guān)鍵詞:高職;程序設(shè)計(jì);翻轉(zhuǎn)課堂
中圖分類號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)23-0059-02
隨著信息技術(shù)的發(fā)展和教育改革的需要,翻轉(zhuǎn)課堂在全球教育界獲得了廣泛的關(guān)注。翻轉(zhuǎn)課堂把學(xué)習(xí)的主動(dòng)權(quán)還給學(xué)生,被認(rèn)為是一種有效的教學(xué)方法,能培養(yǎng)學(xué)生的自學(xué)能力、交流溝通能力、團(tuán)隊(duì)合作能力,增強(qiáng)學(xué)生的自信心。對(duì)師生的走訪和調(diào)查表明,計(jì)算機(jī)程序設(shè)計(jì)課程普遍存在學(xué)生“難學(xué)”、教師“難教”的情況,在程序設(shè)計(jì)課程中使用翻轉(zhuǎn)課堂教學(xué)模式,為解決現(xiàn)有的困難提供了可能性。
1 高職程序設(shè)計(jì)課程教學(xué)現(xiàn)狀
程序設(shè)計(jì)課是高校理工類專業(yè)普遍開設(shè)的一門基礎(chǔ)課,它注重操作性,對(duì)培養(yǎng)學(xué)生的信息技術(shù)和計(jì)算思維能力具有重要作用,也是國(guó)家計(jì)算機(jī)等級(jí)考試(二級(jí))的必考科目。目前,高職院校程序設(shè)計(jì)課程教學(xué)主要采用教師講授和學(xué)生上機(jī)操作相結(jié)合的方式。
1)學(xué)生對(duì)程序設(shè)計(jì)課程失去興趣。大部分學(xué)生都能認(rèn)識(shí)到信息社會(huì)中程序設(shè)計(jì)課程對(duì)后續(xù)學(xué)習(xí)、工作的重要性,剛開始學(xué)習(xí)積極性比較高,但學(xué)習(xí)過(guò)程中普遍認(rèn)為上課節(jié)奏太快,很難理解計(jì)算機(jī)的思維方式,不會(huì)寫程序,更不會(huì)調(diào)試程序,逐漸失去學(xué)習(xí)的熱情和興趣。
2)教師覺(jué)得課時(shí)不夠用。教師都知道這門課程的重要性,也一直在嘗試通過(guò)教學(xué)改革提高學(xué)生的積極性,但效果不太理想。程序設(shè)計(jì)課程一般開設(shè)于大一下學(xué)期,教學(xué)課時(shí)為60。程序設(shè)計(jì)需要用計(jì)算機(jī)的思維方式來(lái)解決問(wèn)題,對(duì)初學(xué)者而言,本來(lái)就面臨著思維方式轉(zhuǎn)變的困難。況且每種程序設(shè)計(jì)語(yǔ)言都有特定語(yǔ)法,自然語(yǔ)言向程序設(shè)計(jì)語(yǔ)言轉(zhuǎn)變需要一個(gè)過(guò)程。程序設(shè)計(jì)是一門以實(shí)踐為主的課程,編譯工具的使用和熟悉也需要一段時(shí)間,況且還有那么多的教學(xué)內(nèi)容,所以教師覺(jué)得課堂時(shí)間遠(yuǎn)遠(yuǎn)不夠用。
3)學(xué)生缺乏學(xué)習(xí)主動(dòng)性和毅力。中小學(xué)教育中學(xué)生已習(xí)慣被動(dòng)接受教師傳授的內(nèi)容,不愿意去思考。而程序設(shè)計(jì)課程需要學(xué)生有自己的觀點(diǎn)和想法,還要將自己的想法轉(zhuǎn)變成程序設(shè)計(jì)語(yǔ)言。通過(guò)分析和設(shè)計(jì),編寫代碼并調(diào)試。調(diào)試程序也是一個(gè)枯燥的過(guò)程,很多學(xué)生碰到困難就放棄了。
翻轉(zhuǎn)課堂將大量的學(xué)習(xí)內(nèi)容安排在課前讓學(xué)生自學(xué),課堂時(shí)間則用于答疑、討論、應(yīng)用和評(píng)估,有效地解決了課堂時(shí)間不夠用的問(wèn)題,教師作為一個(gè)觀察者和引導(dǎo)者,對(duì)學(xué)生的關(guān)注度更高,還可以適時(shí)進(jìn)行個(gè)別指導(dǎo);翻轉(zhuǎn)課堂上,學(xué)生從被動(dòng)接受者變成主動(dòng)學(xué)習(xí)者,以小組為單位完成項(xiàng)目,成員間可以相互啟發(fā)和鼓勵(lì),程序調(diào)試不再單調(diào)和枯燥。翻轉(zhuǎn)課堂為計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)改革提供了可能性。
2 翻轉(zhuǎn)課堂概述
翻轉(zhuǎn)課堂(Flipped Classroom)起源于美國(guó)。一般認(rèn)為,翻轉(zhuǎn)課堂是柯羅拉多州林地公園高中的兩位化學(xué)老師喬納森?伯爾曼和亞倫?薩姆斯為解決學(xué)生因病缺課,無(wú)法跟上課程進(jìn)度而提出的,取得了較好的效果,進(jìn)而翻轉(zhuǎn)課堂在美國(guó)中小學(xué)得到了快速推廣。
傳統(tǒng)教學(xué)模式是教師在課堂上講授知識(shí),學(xué)生課后通過(guò)復(fù)習(xí)鞏固學(xué)習(xí)內(nèi)容,有時(shí)候教師也會(huì)在課前布置預(yù)習(xí)任務(wù),基本限于讓學(xué)生提前看教材;在翻轉(zhuǎn)課堂上,學(xué)生課前通過(guò)教師或第三方機(jī)構(gòu)(在國(guó)內(nèi),課前學(xué)習(xí)資源主要是教師提供提供)的各類教學(xué)資源進(jìn)行自學(xué),這些教學(xué)資源包括學(xué)習(xí)內(nèi)容相關(guān)的音視頻、文字材料、學(xué)習(xí)測(cè)驗(yàn)等。課堂上,學(xué)生可以就學(xué)習(xí)資源中的疑問(wèn)進(jìn)行提問(wèn)和交流,通過(guò)參與討論、項(xiàng)目應(yīng)用等教學(xué)活動(dòng)加深對(duì)學(xué)習(xí)內(nèi)容的理解,提高實(shí)踐應(yīng)用能力。翻轉(zhuǎn)課堂上,學(xué)生由被動(dòng)接受知識(shí)轉(zhuǎn)變成積極主動(dòng)參與學(xué)習(xí)活動(dòng),面對(duì)面的課堂時(shí)間被更好地用于師-生、生-生間的交互、協(xié)作和深層次思考[1]。
翻轉(zhuǎn)課堂不僅轉(zhuǎn)變了教學(xué)流程,將原先“課上”與“課下”的活動(dòng)進(jìn)行互換;翻轉(zhuǎn)課堂還轉(zhuǎn)變了課堂組織形式,將傳統(tǒng)教師單向講授形式轉(zhuǎn)變成自學(xué)為主,師生、生生交互多種形式;翻轉(zhuǎn)課堂也改變了教學(xué)主體,由傳統(tǒng)的教師為主體轉(zhuǎn)變?yōu)閷W(xué)生為主體;翻轉(zhuǎn)課堂還轉(zhuǎn)變了主要的授課地點(diǎn),傳統(tǒng)教育中主要授課地點(diǎn)為教室,翻轉(zhuǎn)課堂主要授課地點(diǎn)是網(wǎng)絡(luò);翻轉(zhuǎn)課堂也轉(zhuǎn)變了知識(shí)傳播的載體,傳統(tǒng)課堂上,知識(shí)傳播載體是老師和教材,翻轉(zhuǎn)課堂是以種電子資源為知識(shí)傳播載體。
3 翻轉(zhuǎn)課堂的實(shí)施
翻轉(zhuǎn)課堂通常被認(rèn)為由兩部分組成:課前基于電腦和網(wǎng)絡(luò)的學(xué)生自學(xué),課上交互式的小組學(xué)習(xí)活動(dòng)[2]。
3.1 課前準(zhǔn)備與學(xué)習(xí)
3.1.1 學(xué)習(xí)素材準(zhǔn)備
在翻轉(zhuǎn)課堂中,學(xué)生基礎(chǔ)理論知識(shí)的學(xué)習(xí)主要通過(guò)課前教師提供的學(xué)習(xí)材料來(lái)完成。教師是教學(xué)資源的主要?jiǎng)?chuàng)作者,學(xué)期開始前要根據(jù)學(xué)生特點(diǎn)和課程目標(biāo)選擇合適的項(xiàng)目,再對(duì)項(xiàng)目進(jìn)行分解,確定具體的單元目標(biāo)和課時(shí)目標(biāo),再根據(jù)課時(shí)目標(biāo)選擇和制作教學(xué)資源。
課程教學(xué)資源一般包括課件、軟件項(xiàng)目庫(kù)、案例庫(kù)、各種媒體素材(視頻類素材、音頻類素材、動(dòng)畫類素材)以及文獻(xiàn)資料等[3]。教師可以從網(wǎng)絡(luò)上搜索可用資源,但我國(guó)翻轉(zhuǎn)課堂尚處于起步和摸索階段,可用資源不多,從國(guó)外網(wǎng)站搜索的資料因?yàn)檎Z(yǔ)言、教學(xué)目標(biāo)等不同,通常也不能直接使用,所以教師需要自己設(shè)計(jì)、錄制、編輯和教學(xué)視頻。這對(duì)教師而言,不僅是增加了工作量,也是一個(gè)挑戰(zhàn),視頻內(nèi)容的選擇、視覺(jué)效果、互動(dòng)性、時(shí)間長(zhǎng)短等對(duì)學(xué)生的學(xué)習(xí)效果有著重要的影響。
視頻內(nèi)容要與教學(xué)目標(biāo)一致,而且要能夠簡(jiǎn)明、清晰、到位地解釋新知識(shí)點(diǎn)[4]。每個(gè)視頻長(zhǎng)度最好不超過(guò)15分鐘,知識(shí)點(diǎn)較多或者操作復(fù)雜的部分,可以分成多個(gè)短視頻,這樣可以滿足不同學(xué)生的個(gè)性化學(xué)習(xí)需求。學(xué)習(xí)能力較強(qiáng)、學(xué)習(xí)時(shí)間充裕的學(xué)生,可以根據(jù)個(gè)人興趣一次學(xué)習(xí)幾個(gè)小單元,對(duì)于學(xué)習(xí)基礎(chǔ)稍差、時(shí)間緊的學(xué)生,可以根據(jù)自身情況,每次學(xué)習(xí)一個(gè)小單元,而且可以反復(fù)觀看和練習(xí)[5]。在教學(xué)視頻后面緊跟一個(gè)小測(cè)驗(yàn)或幾個(gè)小問(wèn)題,便于學(xué)生及時(shí)檢驗(yàn)學(xué)習(xí)效果,對(duì)自己的學(xué)習(xí)情況作出判斷。如果發(fā)現(xiàn)問(wèn)題回答得不好,可以再看一遍,仔細(xì)思考后重新回答,直到自己滿意為止[6]。
3.1.2 學(xué)生自學(xué)
教師將教學(xué)資源到網(wǎng)上后,學(xué)生就可以開始學(xué)習(xí)。學(xué)生通過(guò)網(wǎng)絡(luò)資源進(jìn)行自主學(xué)習(xí),在時(shí)間上和空間上都有充分的自由度。學(xué)生可以根據(jù)實(shí)際情況安排自己的學(xué)習(xí)時(shí)間,什么時(shí)候有空或者狀態(tài)最好就什么時(shí)候?qū)W習(xí),生病了也不要擔(dān)心學(xué)習(xí)進(jìn)度會(huì)落下;學(xué)生也可以根據(jù)自身情況和接受能力選擇看一遍或多遍視頻,沒(méi)有學(xué)習(xí)的壓力,不必?fù)?dān)心老師同學(xué)異樣的目光,真正實(shí)現(xiàn)了個(gè)性化學(xué)習(xí)。學(xué)生在自學(xué)過(guò)程中碰到問(wèn)題的時(shí)候,一方面可以借助互聯(lián)網(wǎng)查找更多資源來(lái)補(bǔ)充,還可以將問(wèn)題發(fā)到QQ群或者網(wǎng)絡(luò)討論區(qū),及時(shí)跟老師同學(xué)互動(dòng)、討論。
每個(gè)教學(xué)單元學(xué)完后,一般都有簡(jiǎn)單的測(cè)驗(yàn)或任務(wù)。實(shí)踐中,我們除了在視頻后面增加小測(cè)驗(yàn),還要求學(xué)生在課前6小時(shí)提交1-3個(gè)跟材料相關(guān)的問(wèn)題,學(xué)生可以問(wèn)材料相關(guān)的任何問(wèn)題。通過(guò)學(xué)生提交的問(wèn)題,教師也可以看出學(xué)生對(duì)材料的掌握程度,是否停留在表面還是有自己的思考。也有時(shí)間根據(jù)大家的討論內(nèi)容和尚存的問(wèn)題,及時(shí)調(diào)整課堂內(nèi)容和教學(xué)策略。
3.2 課堂內(nèi)化
因?yàn)閷W(xué)生已經(jīng)在課前完成了基礎(chǔ)知識(shí)和技能的學(xué)習(xí),課堂時(shí)間主要用于討論、分析和內(nèi)化。教師根據(jù)教學(xué)目標(biāo)和學(xué)生自學(xué)后的反饋信息,設(shè)計(jì)課堂上的各種活動(dòng),合理安排課堂時(shí)間,把握好課堂節(jié)奏,更重要的是課前學(xué)習(xí)材料和課堂學(xué)生活動(dòng)要能夠進(jìn)行無(wú)縫對(duì)接[7]。
3.2.1 答疑與提問(wèn)
課堂的前10-15分鐘一般用來(lái)解釋、檢查學(xué)習(xí)材料中的內(nèi)容。學(xué)生在課前自學(xué)時(shí)提交的問(wèn)題,以同學(xué)間相互解答為主,教師進(jìn)行適當(dāng)提示并引導(dǎo)學(xué)生進(jìn)行深層次思考。
由于學(xué)生是帶著已知的知識(shí)和一定的問(wèn)題來(lái)上課,教師可針對(duì)不同水平的學(xué)生給予更多一對(duì)一的針對(duì)性的指導(dǎo)和具體的幫助,從而成為學(xué)生學(xué)習(xí)的主要指導(dǎo)者和推動(dòng)者。
3.2. 2 分組探究
對(duì)于一些重難點(diǎn)內(nèi)容,可以通過(guò)設(shè)計(jì)有針對(duì)性、能發(fā)揮學(xué)生能動(dòng)性和創(chuàng)造性的探究任務(wù),為學(xué)生提供整合和應(yīng)用知識(shí)技能的機(jī)會(huì)。
根據(jù)任務(wù)需要,模擬軟件開發(fā)企業(yè)組建開發(fā)團(tuán)隊(duì),4人組成一個(gè)團(tuán)隊(duì),每個(gè)團(tuán)隊(duì)設(shè)項(xiàng)目經(jīng)理、分析師、程序員和測(cè)試員各1名,團(tuán)隊(duì)中的每個(gè)成員都有自己的角色和任務(wù)。每個(gè)項(xiàng)目都要經(jīng)過(guò)需求分析、流程圖設(shè)計(jì)、編碼和測(cè)試等環(huán)節(jié),每個(gè)環(huán)節(jié)以一名成員為主要負(fù)責(zé)人,其他成員必須參與,項(xiàng)目經(jīng)理對(duì)項(xiàng)目全面負(fù)責(zé)。在項(xiàng)目進(jìn)行過(guò)程中,教師作為指導(dǎo)者,進(jìn)行巡視和個(gè)別指導(dǎo),遇到共性的問(wèn)題,則統(tǒng)一講解。
學(xué)生通過(guò)小組合作的方式分析、討論問(wèn)題,在對(duì)程序的不斷修改和調(diào)試過(guò)程中領(lǐng)悟新知識(shí),最終完成項(xiàng)目。每個(gè)人都為項(xiàng)目的完成貢獻(xiàn)著自己的智慧和力量,團(tuán)隊(duì)意識(shí)和合作能力提到加強(qiáng);在不斷的分析、編碼和改錯(cuò)過(guò)程中,分析問(wèn)題、解決問(wèn)題和探究能力都得到了提升;“探索―訓(xùn)練―思考―創(chuàng)新”的過(guò)程中知識(shí)得到了內(nèi)化[8]。經(jīng)過(guò)多次嘗試終于解決了困難,學(xué)生能感受到成功的喜悅,增加學(xué)習(xí)的自信心和積極性。
3.2.3 成果展示
每個(gè)項(xiàng)目完成后,都需要以團(tuán)隊(duì)為單位提交項(xiàng)目源代碼。根據(jù)項(xiàng)目大小,每隊(duì)派一個(gè)或多個(gè)成員運(yùn)行項(xiàng)目,并講解主要算法思想,就項(xiàng)目完成過(guò)程中碰到的問(wèn)題以及解決過(guò)程跟全班同學(xué)交流。項(xiàng)目展示環(huán)節(jié)能促使學(xué)生積極認(rèn)真地投入到程序開發(fā)過(guò)程,學(xué)生也能從其他團(tuán)隊(duì)介紹的問(wèn)題解決方式中受到啟發(fā),或者能為解決問(wèn)題提供新思路,或者能避免犯類似的錯(cuò)誤,教師也可以從中了解各組的學(xué)習(xí)情況。
3.2.4 交流評(píng)價(jià)
翻轉(zhuǎn)課堂中評(píng)價(jià)方式有多種,以過(guò)程性評(píng)價(jià)為主。在課前自學(xué)和課堂內(nèi)化的各個(gè)環(huán)節(jié),教師都可以根據(jù)學(xué)生的表現(xiàn)進(jìn)行評(píng)價(jià);在所有組展示完項(xiàng)目后,也可以讓小組互評(píng);還可以通過(guò)反饋性寫作,如“這節(jié)課你學(xué)到了什么”、“你還有什么不清楚的地方”、“你最想知道的問(wèn)題是什么”等問(wèn)題來(lái)了解學(xué)生的學(xué)習(xí)效果。
4 小結(jié)
翻轉(zhuǎn)課堂將學(xué)習(xí)的主動(dòng)權(quán)還給學(xué)生,能調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性;學(xué)生在課前自學(xué)知識(shí)和技能,節(jié)約了大量課堂時(shí)間。翻 轉(zhuǎn)課堂為計(jì)算機(jī)程序設(shè)計(jì)課程的教學(xué)改革提供了新途徑,但翻轉(zhuǎn)課堂在我國(guó)剛剛起步,對(duì)教學(xué)模型、教學(xué)策略、評(píng)價(jià)體系等的研究都處于摸索階段。一方面,我們可以借鑒國(guó)外研究成果和實(shí)踐經(jīng)驗(yàn),另一方面也要結(jié)合學(xué)生和學(xué)科特點(diǎn),真正做到以學(xué)生為中心,構(gòu)建具有中國(guó)特色的翻轉(zhuǎn)課堂新模式。
參考文獻(xiàn):
[1]Pang Nai Kiat, Yap Tat Kwong.The Flipped Classroom Experience[C]// Software Engineering Education and Training (CSEE&T), 2014 IEEE 27th Conference. Klagenfurt, Austria:39-43.
[2]Bishop J L,Verleger M A.The flipped classroom:A survey of the research[EB/OL]. http://dts.drake.edu/wp-content/uploads/sites/2/2014/03/The-Flipped-Classroom-A-Survey-of-the-Research.pdf,Paper presented at the meeting of American Society of Engineering Education, Atlanta, GA,2013-6.
[3]曾明星,周清平,蔡國(guó)民,等.軟件開發(fā)類課程翻轉(zhuǎn)課堂教學(xué)模式研究[J].實(shí)驗(yàn)室研究與探索,2014(2):203-209.
[4]楊偉杰.翻轉(zhuǎn)課堂:轉(zhuǎn)變與挑戰(zhàn)[J].教學(xué)與管理,2013(10):93-95.
[5]王健,王京菊.翻轉(zhuǎn)課堂模式在服裝實(shí)踐類課程教學(xué)中的運(yùn)用[J].教育與職業(yè),2015(3):98-100.
[6]宋金[,郭新峰,石明吉,等. 翻轉(zhuǎn)課堂在大學(xué)物理實(shí)驗(yàn)教學(xué)中的應(yīng)用[J]. 實(shí)驗(yàn)技術(shù)與管理,2015,32(3):33-37.
關(guān)鍵詞:信息的編程加工;講解演示法
中圖分類號(hào):G434 文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):1671-7503(2013)01/03-0119-04
【設(shè)計(jì)思想】
以程序?yàn)榛A(chǔ),以算法為核心,不以代碼編寫訓(xùn)練為要義,而以程序設(shè)計(jì)方法和算法思想的體驗(yàn)為旨?xì)w。
充分利用與學(xué)生生活、學(xué)習(xí)經(jīng)驗(yàn)聯(lián)系緊密的例子,碰撞出思維的火花,讓學(xué)生了解信息編程加工的方法,理解算法的作用,嘗試簡(jiǎn)單代碼的書寫?熏體驗(yàn)編程的魅力,激發(fā)學(xué)生的學(xué)習(xí)興趣,同時(shí),也鍛煉學(xué)生的思維。
【教材分析】
《信息的編程加工》是教育科學(xué)出版社出版的《信息技術(shù)基礎(chǔ)(必修)》第三章第二節(jié)的內(nèi)容。本節(jié)課主要是通過(guò)分析、編寫簡(jiǎn)單程序?熏讓學(xué)生初步了解信息編程加工的一般過(guò)程?熏感受利用計(jì)算機(jī)編制程序解決問(wèn)題的魅力,解開計(jì)算機(jī)程序的神秘面紗。教材沒(méi)有詳細(xì)介紹編程加工的關(guān)鍵步驟:算法,但是這部分內(nèi)容是編程的核心,所以,引入了算法的概念及算法的簡(jiǎn)單設(shè)計(jì)。
【學(xué)生分析】
高一學(xué)生思維活躍,邏輯思維能力也日趨嚴(yán)密。所教學(xué)生大部分來(lái)自城市,基礎(chǔ)整體相對(duì)較好。但是,程序設(shè)計(jì)很少有學(xué)生接觸過(guò),再加上內(nèi)容本身相對(duì)枯燥,因此,創(chuàng)設(shè)情景,激發(fā)學(xué)生興趣,消除他們對(duì)程序設(shè)計(jì)的陌生感和畏難情緒,調(diào)動(dòng)他們學(xué)習(xí)和探究的主動(dòng)性、積極性,顯得尤為重要。學(xué)生一節(jié)課的時(shí)間對(duì)編程掌握不了多少,但讓他們?cè)隗w驗(yàn)中理解編程加工的主要過(guò)程,了解其內(nèi)在機(jī)制,并通過(guò)簡(jiǎn)單的修改實(shí)現(xiàn)小小的目標(biāo),有成功的體驗(yàn)和收獲是完全能夠達(dá)到的。
【教學(xué)目標(biāo)】
知識(shí)與技能:對(duì)比人類是如何分析問(wèn)題、解決問(wèn)題,了解計(jì)算機(jī)求解問(wèn)題的過(guò)程;掌握算法的基本含義及設(shè)計(jì)思想,從而了解計(jì)算機(jī)信息編程加工的內(nèi)在機(jī)制;理解并能夠用VB語(yǔ)言實(shí)現(xiàn)算法,嘗試簡(jiǎn)單代碼的書寫。
過(guò)程與方法:通過(guò)教師的實(shí)例講解和學(xué)生的親身實(shí)踐,讓學(xué)生理解計(jì)算機(jī)解決問(wèn)題的一般過(guò)程與方法;感悟信息編程加工的基本思想和基本流程。
情感、態(tài)度與價(jià)值觀:消除程序設(shè)計(jì)的神秘感,產(chǎn)生對(duì)程序設(shè)計(jì)的求知欲,形成積極主動(dòng)地學(xué)習(xí)算法與程序設(shè)計(jì)的態(tài)度;逐步養(yǎng)成嚴(yán)謹(jǐn)、科學(xué)的程序設(shè)計(jì)思想;通過(guò)小組協(xié)作,培養(yǎng)學(xué)生的探索精神與合作精神。
【教學(xué)重、難點(diǎn)】
重點(diǎn):體驗(yàn)了解計(jì)算機(jī)解決問(wèn)題的主要過(guò)程,了解其內(nèi)在機(jī)制;簡(jiǎn)單算法的設(shè)計(jì)。
難點(diǎn):算法的理解及其設(shè)計(jì);認(rèn)識(shí)、書寫簡(jiǎn)單代碼。
【教學(xué)方法】
講解演示法、討論法、任務(wù)驅(qū)動(dòng)法。
【教學(xué)環(huán)境】
硬件:多媒體網(wǎng)絡(luò)教室;軟件:極域電子教室、Visual Basic 6.0。
【教學(xué)過(guò)程】
一、創(chuàng)設(shè)情境問(wèn)題,引入課題
問(wèn)題:祖沖之如何計(jì)算圓周率?
分析:人的特點(diǎn)是有分析、思考能力,但計(jì)算能力有限;計(jì)算機(jī)的特點(diǎn)就是算得快、準(zhǔn)確,但需要依靠人為它設(shè)計(jì)程序。計(jì)算機(jī)的靈魂是程序,沒(méi)有程序,計(jì)算機(jī)是無(wú)法運(yùn)行的。
二、講授新課:以求解“水仙花數(shù)”為例講解信息編程加工的一般過(guò)程
問(wèn)題:“水仙花數(shù)”是指一個(gè)三位數(shù),它的各位數(shù)字的立方和等于其本身,比如:153=13+53+33。同學(xué)們能找出所有的水仙花數(shù)嗎?
學(xué)生兩人一組,各盡所能,找出100-999之間的水仙花數(shù),看哪一組找的最多?
(1)分析信息。確定要解決的問(wèn)題,即要求計(jì)算機(jī)“做什么”。
讓計(jì)算機(jī)找出100~999之間各位數(shù)字的立方和就是這個(gè)數(shù)本身的數(shù),并顯示出來(lái)(如圖1)。
(2)設(shè)計(jì)算法。對(duì)某一特定的問(wèn)題設(shè)計(jì)的一組(有限個(gè))求解步驟和方法(如圖2)。
學(xué)生體驗(yàn)小游戲,青蛙過(guò)河,找出過(guò)河的方法。
分析完成的步驟:公1母1向前一步,母2向前一步?熏公1公2公3向前一步,母的均向前一步,公的均向前一步,接下來(lái)很簡(jiǎn)單。
(3)編寫代碼。把人們?cè)O(shè)計(jì)的算法轉(zhuǎn)換成計(jì)算機(jī)能夠識(shí)別的代碼。
程序設(shè)計(jì)語(yǔ)言有很多,已經(jīng)從最初的機(jī)器語(yǔ)言發(fā)展到現(xiàn)在的比較接近自然語(yǔ)言的高級(jí)語(yǔ)言,例如:C、Pascal、VB、C#、Java等都是高級(jí)語(yǔ)言。
我們使用VB來(lái)實(shí)現(xiàn)。VB基于事件驅(qū)動(dòng)編程方法。
學(xué)生實(shí)踐:根據(jù)流程圖(如圖3)完善程序代碼(算法一的代碼實(shí)現(xiàn))。
(4)調(diào)試運(yùn)行。剛編寫的程序不一定完善,必須在計(jì)算機(jī)上實(shí)際運(yùn)行,排除程序中的錯(cuò)誤,測(cè)試其能否達(dá)到預(yù)期的結(jié)果。
小結(jié):計(jì)算機(jī)運(yùn)行的程序就是人思維的延伸。
信息編程加工的一般過(guò)程:分析問(wèn)題設(shè)計(jì)算法編寫代碼調(diào)試運(yùn)行。其中,設(shè)計(jì)算法是最核心的部分。
三、輕松一下:加深算法的印象?熏編程算法是核心
(3)小結(jié):只要能設(shè)計(jì)出算法,程序設(shè)計(jì)就不神秘了。
四、總結(jié)提升
關(guān)鍵詞 低級(jí)語(yǔ)言;高級(jí)語(yǔ)言;輸入/輸出設(shè)備
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671—7597(2013)041-133-01
1 計(jì)算機(jī)的編程語(yǔ)言的發(fā)展
1.1 計(jì)算機(jī)編程語(yǔ)言的概念
計(jì)算機(jī)編程語(yǔ)言的誕生是為方便人與計(jì)算機(jī)的溝通交流,為了讓計(jì)算機(jī)更好的服務(wù)于人類,計(jì)算機(jī)所能識(shí)別的語(yǔ)言就只有“0”和“1”,該語(yǔ)言人類記憶非常麻煩,因?yàn)楸磉_(dá)一句簡(jiǎn)單的話,機(jī)器語(yǔ)言卻非常復(fù)雜、非常長(zhǎng),所以人們就開始研究一種簡(jiǎn)單的語(yǔ)言,然后編譯器誕生了,人們至于要記住簡(jiǎn)單的語(yǔ)法,編寫想要計(jì)算機(jī)完成的程序代碼,至于翻譯成機(jī)器語(yǔ)言就交給編譯器來(lái)完成。就這樣隨著計(jì)算機(jī)業(yè)發(fā)展,計(jì)算機(jī)編程語(yǔ)言從機(jī)器語(yǔ)言到匯編語(yǔ)言再到高級(jí)語(yǔ)言,也有很多語(yǔ)言從鼎盛到消亡,這也是發(fā)展趨勢(shì)。
1.2 計(jì)算機(jī)輸入/輸出設(shè)備的發(fā)展
首先我們要知道輸入輸出設(shè)備的分類,字符輸入設(shè)備:鍵盤;光學(xué)閱讀設(shè)備:光學(xué)標(biāo)記閱讀機(jī),光學(xué)字符閱讀機(jī);圖形輸入設(shè)備:鼠標(biāo)器、操縱桿、光筆;圖像輸入設(shè)備:攝像機(jī)、掃描儀、傳真機(jī);模擬輸入設(shè)備:語(yǔ)言模數(shù)轉(zhuǎn)換識(shí)別系統(tǒng)。輸出設(shè)備:顯示器、打印機(jī)、繪圖儀、影像輸出系統(tǒng)、語(yǔ)音輸出系統(tǒng)、磁記錄設(shè)備等,這些輸入輸出設(shè)備存在很多優(yōu)勢(shì),第一物理鍵盤比虛擬鍵盤更方便輸入,更有存在感,另外鼠標(biāo)的存在,對(duì)于精確地操作也比觸摸板更準(zhǔn)確,另外還有光筆,操縱桿,攝像儀等等這些設(shè)備都給辦公帶來(lái)了極大的方便,雖然蘋果公司開創(chuàng)了一個(gè)觸摸的時(shí)代,平板電腦開始流行,人們都開始喜歡用手指觸摸,但那只是娛樂(lè)方面更方便,但是真正用到專業(yè)性的工作,是離不開物理的輸入輸出設(shè)備的,像制圖,像會(huì)議速記等等,這些工作不可能脫離物理鍵盤,而使用虛擬鍵盤的,因?yàn)檫@樣影響效率和工作的質(zhì)量,所以即使計(jì)算機(jī)技術(shù)發(fā)展如此迅速,虛擬的輸入輸出設(shè)備,也無(wú)法替代物理的輸入輸出設(shè)備,就計(jì)算機(jī)誕生而言,當(dāng)時(shí)的計(jì)算機(jī)是巨型計(jì)算機(jī),和現(xiàn)今的個(gè)人PC不一樣,當(dāng)時(shí)的計(jì)算機(jī)有一個(gè)房間那么大,但是當(dāng)時(shí)人們也意識(shí)到了輸入輸出設(shè)備的重要性,也就發(fā)明了相應(yīng)的輸入輸出設(shè)備,當(dāng)時(shí)要想輸入一段指令要讓工作人員用紙帶,通過(guò)紙?jiān)诩垘洗蚩?,?lái)代表的“0”和“1”。因?yàn)楫?dāng)時(shí)還沒(méi)有計(jì)算機(jī)的編譯器,可以說(shuō)機(jī)器只認(rèn)識(shí)機(jī)器語(yǔ)言,還不懂java、donet、c、c#、c++等等這類語(yǔ)言,所以那個(gè)時(shí)候的編程人員是工作量非常大的,因?yàn)橥層?jì)算機(jī)實(shí)現(xiàn)一個(gè)算法,要需要好多卷紙帶記錄人類所要表達(dá)邏輯命令。隨著時(shí)代的發(fā)展,計(jì)算機(jī)也逐漸開始小型化,從房間式巨型機(jī)到現(xiàn)在的便攜筆記本電腦,在計(jì)算機(jī)發(fā)展的同時(shí),輸入輸出設(shè)備也隨著發(fā)展,從紙帶到鍵盤,從打印機(jī)到掃描儀,手寫板等等,另外計(jì)算機(jī)再為人類提供工作上的方便的同時(shí),也逐漸要滿足人類的娛樂(lè)要求,這就要求輸入輸出設(shè)備要有顯示器,要有音響,綜合說(shuō)起來(lái),計(jì)算機(jī)的發(fā)展,帶動(dòng)了輸入輸出設(shè)備的發(fā)展。計(jì)算機(jī)的發(fā)展,人們發(fā)現(xiàn)工作中如果有計(jì)算機(jī)的參與,會(huì)使工作效率突飛猛進(jìn)的提高所以各種的管理系統(tǒng)也如雨后春筍般應(yīng)運(yùn)而生。這些系統(tǒng)就得通過(guò)程序編寫者通過(guò)輸入輸出設(shè)備進(jìn)行編寫,然后通過(guò)IDE環(huán)境的編譯器翻譯成機(jī)器語(yǔ)言轉(zhuǎn)達(dá)給計(jì)算機(jī)來(lái)完成人們想要計(jì)算機(jī)完成的工作。
2 根據(jù)編程語(yǔ)言不同種類闡述輸入輸出設(shè)備
2.1 編程語(yǔ)言的分類對(duì)輸入輸出設(shè)備的要求
計(jì)算機(jī)語(yǔ)言可以分成機(jī)器語(yǔ)言和高級(jí)語(yǔ)言兩種,而機(jī)器語(yǔ)言顧名思義就是計(jì)算機(jī)可以直接理解的一種語(yǔ)言,其語(yǔ)言形式是“0”和“1”這種二進(jìn)制碼,這種語(yǔ)言不需要編譯的幫助,計(jì)算機(jī)可以直接讀懂,所以這種語(yǔ)言執(zhí)行起來(lái)會(huì)非常迅速,例如匯編語(yǔ)言。另外還有一種語(yǔ)言被稱為高級(jí)語(yǔ)言,高級(jí)語(yǔ)言還可以簡(jiǎn)單的分為兩種,一種是面向過(guò)程的語(yǔ)言,一種是面向?qū)ο蟮恼Z(yǔ)言,面向過(guò)程語(yǔ)言就是以過(guò)程或函數(shù)為基礎(chǔ)的,這種語(yǔ)言對(duì)底層硬件,內(nèi)存等操作比較方便,但是寫代碼和調(diào)試維護(hù)等會(huì)很麻煩。例如:c語(yǔ)言、C++等等,面向?qū)ο笳Z(yǔ)言是指一切操作都以對(duì)象為基礎(chǔ),它是由面向過(guò)程語(yǔ)言發(fā)展而來(lái)的,但正是它的這個(gè)特性使得面向?qū)ο笳Z(yǔ)言對(duì)底層的操作不是很方便。例如:java語(yǔ)言、C#語(yǔ)言等等,這類語(yǔ)言的誕生,使程序編寫人員從枯燥乏味,冗長(zhǎng)的機(jī)器語(yǔ)言得到解放,是編程更容易,不再那么神秘和抽象,高級(jí)語(yǔ)言的誕生促進(jìn)了應(yīng)用軟件的發(fā)展,因?yàn)楦菀拙幊?,很多軟件也如雨后春筍般的誕生了,這樣方便了人們的工作和娛樂(lè)生活。
2.2 不同編程語(yǔ)言輸入/輸出設(shè)備的使用
每個(gè)輸入、輸出設(shè)備的連接口控制器中都有用于存儲(chǔ)設(shè)備運(yùn)行狀態(tài)、控制設(shè)備運(yùn)行模式以及具體存儲(chǔ)讀或?qū)憯?shù)據(jù)的存儲(chǔ)器,每個(gè)存儲(chǔ)器都有一個(gè)獨(dú)立的地址編碼。通過(guò)定義文件數(shù)據(jù)類型的結(jié)構(gòu)體,創(chuàng)建輸入、輸出設(shè)備在環(huán)境中的編程實(shí)體,并用邏輯設(shè)備名在編程實(shí)體與具體輸入、輸出設(shè)備之間建立聯(lián)系。程序其實(shí)是通過(guò)計(jì)算機(jī)調(diào)取計(jì)算機(jī)上存儲(chǔ)的數(shù)據(jù),進(jìn)行程序所命令好的操作方式。計(jì)算機(jī)按照程序開發(fā)者所規(guī)定好的邏輯來(lái)進(jìn)行數(shù)據(jù)的操作。算機(jī)底層輸入輸出存貯方式在改變,隨著技術(shù)的進(jìn)步,而物理硬件的變化也隨之發(fā)展。
3 結(jié)論
綜上所述,現(xiàn)在的編程語(yǔ)言已經(jīng)越來(lái)越接近用戶,反之離機(jī)器越來(lái)越遠(yuǎn),隨著科技的進(jìn)步,計(jì)算機(jī)不斷發(fā)展,編程方式也會(huì)逐漸改變,隨之而來(lái)的輸入輸出的設(shè)備也將越來(lái)越人性化,簡(jiǎn)單化,人們與計(jì)算機(jī)聯(lián)系也越來(lái)越緊密,相信未來(lái)輸入輸出設(shè)備的進(jìn)步,計(jì)算機(jī)的發(fā)展,編程不再是程序工作人員的技能,而是只要會(huì)使用計(jì)算機(jī)的人,就會(huì)編程、就實(shí)現(xiàn)會(huì)與計(jì)算機(jī)“交流”!
參考文獻(xiàn)
[1]陳火旺.程序設(shè)計(jì)語(yǔ)言編譯原理[M].北京:國(guó)防工業(yè)出版社,2003.
[2]Karen L.Design of Compilers-Techniques of Programming Language Translation[M].CRC Presss,1992.
[3]譚浩強(qiáng).C語(yǔ)言程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,1999.
【關(guān)鍵詞】 計(jì)算機(jī)程序 課程群 方法
計(jì)算機(jī)技術(shù)的不斷發(fā)展下,在教學(xué)領(lǐng)域的教學(xué)也有著更高的要求,注重教學(xué)模式的創(chuàng)新應(yīng)用是促進(jìn)計(jì)算機(jī)專業(yè)教學(xué)質(zhì)量提高的基礎(chǔ)。在計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)中,對(duì)課程群的建設(shè)工作得以優(yōu)化對(duì)實(shí)際的教學(xué)發(fā)展就比較有利。通過(guò)從理論上加強(qiáng)計(jì)算機(jī)程序設(shè)計(jì)的研究,就能有助于計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)的良好發(fā)展。
一、計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)研究?jī)?nèi)容及建設(shè)遵循的原則
1.1計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)研究?jī)?nèi)容分析
計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)研究的內(nèi)容方面比較多樣化,其中對(duì)各門課程科學(xué)設(shè)置和其內(nèi)涵外延的研究?jī)?nèi)容是比較重要的。還有就是對(duì)教和學(xué)的視角對(duì)C語(yǔ)言結(jié)構(gòu)化程序設(shè)計(jì)到VC++面向?qū)ο蟪绦蛟O(shè)計(jì)思想方法的轉(zhuǎn)化銜接[1]。以及在轉(zhuǎn)換銜接中的難度措施方法的研究。再有就是從教和學(xué)的角度對(duì)計(jì)算機(jī)程序設(shè)計(jì)課程群當(dāng)中各門課程教學(xué)的方法的研究,以及對(duì)實(shí)踐和理論相結(jié)合的方法研究,在考試的內(nèi)容方法層面的研究,對(duì)教師隊(duì)伍建設(shè)層面的內(nèi)容研究,以及在軟件產(chǎn)業(yè)和人才市場(chǎng)需求間的關(guān)系方面的研究。
1.2計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)遵循的原則
對(duì)計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)過(guò)程中,要遵循相應(yīng)的原則,只有如此才能保障計(jì)算機(jī)程序設(shè)計(jì)課程群的建設(shè)優(yōu)化。課程群的建設(shè)作為專業(yè)建設(shè)當(dāng)中比較重要的部分,就要能在知識(shí)點(diǎn)方面得以明確化。具體建設(shè)中對(duì)應(yīng)用型人才的培養(yǎng)目標(biāo)要能有針對(duì)性,將程序設(shè)計(jì)作為建設(shè)的核心,以及對(duì)實(shí)踐方法方面得以重視,對(duì)客觀學(xué)習(xí)的這一規(guī)律要能尊重,以及對(duì)學(xué)生的興趣培養(yǎng)也要能得以充分重視[2]。對(duì)教學(xué)內(nèi)容的設(shè)置注重驗(yàn)證以及模仿內(nèi)容的核心地位,在實(shí)踐后對(duì)程序設(shè)計(jì)的方法得以掌握。在實(shí)際教學(xué)過(guò)程中的程序設(shè)計(jì)語(yǔ)言種類比較多,并且也有著不同的層次,所以這就需要在實(shí)際的建設(shè)過(guò)程中,在內(nèi)容上要連貫性的呈現(xiàn),將課程群間的內(nèi)容能夠和諧的融合以及深化等,在技術(shù)層面要能進(jìn)行相互的參照。計(jì)算機(jī)程序課程群的教學(xué)主要是讓學(xué)生能熟練編程語(yǔ)言,以及對(duì)程序的開發(fā)方法和工具能熟練的掌握,所以在實(shí)際的課程群建設(shè)過(guò)程中,就要能夠注重建設(shè)的科學(xué)合理性。
二、計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)研究的主要方法探究
加強(qiáng)計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)研究,在方法上要能科學(xué)重視,在四階段的課程體系方面能科學(xué)的構(gòu)建。將C語(yǔ)言程序設(shè)計(jì)和課程設(shè)計(jì)作為基礎(chǔ),并注重?cái)?shù)據(jù)結(jié)構(gòu)核心的程序設(shè)計(jì)方法的培養(yǎng),然后把C++程序設(shè)計(jì)在程序?qū)嶋H理念當(dāng)中加以貫穿,對(duì)學(xué)生數(shù)據(jù)庫(kù)程序設(shè)計(jì)能力的培養(yǎng)得以重視[3]。還要在這些基礎(chǔ)上對(duì)Widows程序設(shè)計(jì)、 Java程序設(shè)計(jì)、net程序設(shè)計(jì)等作為選修課程,通過(guò)這一教學(xué)課程體系的完善構(gòu)建,對(duì)學(xué)生的專業(yè)知識(shí)技能的提高就比較有利。對(duì)計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)研究的目標(biāo)方面要明確化,以及對(duì)課程間的關(guān)系能得以理清。在這一專業(yè)的教學(xué)中,主要就是讓學(xué)生對(duì)計(jì)算機(jī)的軟硬件理論以及技能和應(yīng)用方法的熟練掌握,讓學(xué)生在工程實(shí)踐能力上能不斷加強(qiáng)。老師要能對(duì)課程間的關(guān)系有充分的認(rèn)識(shí),并要能夠進(jìn)行合理科學(xué)的規(guī)劃,在這些方面得到了加強(qiáng),才能有助于課程群的良好建設(shè)。計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)研究中,要充分注重教師隊(duì)伍的科學(xué)建設(shè)。由于教師是課程群的主要實(shí)施者,所以其自身的專業(yè)水平以及素養(yǎng),對(duì)課程群的實(shí)施質(zhì)量效果就有著直接的影響。在具體的措施實(shí)施上,教師隊(duì)伍就要在教學(xué)研討以及集體備課等環(huán)節(jié)得以重視,對(duì)課程群中的各門課程內(nèi)在聯(lián)系能夠得以熟練的掌握,以及注重理論知識(shí)的學(xué)習(xí),和教學(xué)實(shí)踐進(jìn)行緊密的結(jié)合[4]。然后將教學(xué)實(shí)踐和教研的專題進(jìn)行緊密結(jié)合,在學(xué)科課程建設(shè)工作上加以充分重視。最后,就要能對(duì)計(jì)算機(jī)程序設(shè)計(jì)課程群的平臺(tái)進(jìn)行構(gòu)建。在課程資源以及實(shí)驗(yàn)平臺(tái)、評(píng)價(jià)反饋等模塊方面加以完善化。這些都比較有助于實(shí)際的課程群建設(shè)的作用充分發(fā)揮。如在實(shí)驗(yàn)平臺(tái)區(qū)的模塊應(yīng)用上,能對(duì)每門課和同一門課程實(shí)施不同實(shí)驗(yàn),這就能夠提供相應(yīng)的軟件支持,在課堂的講解以及具體的實(shí)驗(yàn)指導(dǎo)等方面的實(shí)施,對(duì)學(xué)生的實(shí)踐能力培養(yǎng)就比較有利。
結(jié)語(yǔ):通過(guò)對(duì)計(jì)算機(jī)程序設(shè)計(jì)課程群建設(shè)研究的加強(qiáng),對(duì)實(shí)際的發(fā)展就比較有利。在改革教學(xué)發(fā)展的環(huán)境下,在對(duì)計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)的模式上加以優(yōu)化,對(duì)解決實(shí)際專業(yè)課程間的不足,以及加強(qiáng)課程間的聯(lián)系性就比較有利。通過(guò)此次的理論研究,希望能促進(jìn)實(shí)際的課程群良好建立。
參 考 文 獻(xiàn)
[1]張曉.計(jì)算機(jī)程序設(shè)計(jì)的應(yīng)用開發(fā)[J]. 信息與電腦(理論版). 2015(09)
[2]柳泉.微課引入計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)的探索[J]. 物聯(lián)網(wǎng)技術(shù). 2016(08)
關(guān)鍵詞:計(jì)算機(jī);程序設(shè)計(jì);快速排序
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)27-0202-02
計(jì)算機(jī)程序設(shè)計(jì)是計(jì)算機(jī)軟件開發(fā)的核心部分,其質(zhì)量的高低影響著軟件投產(chǎn)運(yùn)用。而計(jì)算機(jī)程序設(shè)計(jì)時(shí),有關(guān)排序問(wèn)題的處理是計(jì)算機(jī)軟件開發(fā)的重要部分,其處理方法又很繁瑣。所以排序問(wèn)題能否優(yōu)化處理,直接影響軟件的開發(fā)質(zhì)量。因此,在做計(jì)算機(jī)程序設(shè)計(jì)時(shí),必須加強(qiáng)軟件排序問(wèn)題綜合考慮,而且要做到計(jì)算機(jī)程序設(shè)計(jì)時(shí)涉及的排序情況心中有數(shù),并選用最優(yōu)化的排序方法,最終完美解決計(jì)算機(jī)程序設(shè)計(jì)時(shí)的排序問(wèn)題。為提高軟件開發(fā)質(zhì)量,并為全面提升軟件的功能打下堅(jiān)實(shí)的基礎(chǔ)。從而加快計(jì)算機(jī)程序開發(fā)行業(yè)的發(fā)展。
1 計(jì)算機(jī)程序設(shè)計(jì)中排序問(wèn)題的概述
計(jì)算機(jī)程序設(shè)計(jì)的目的是為了給有關(guān)的計(jì)算機(jī)軟件正常執(zhí)行提供保障。然而,排序問(wèn)題已對(duì)計(jì)算機(jī)程序設(shè)計(jì)的質(zhì)量產(chǎn)生了較大的影響,這個(gè)問(wèn)題也是因繞著軟件開發(fā)人員的大事。因此,加強(qiáng)計(jì)算機(jī)程序設(shè)計(jì)時(shí)有關(guān)排序問(wèn)題的分析及妥善處理是很重要的事情。針對(duì)計(jì)算機(jī)程序設(shè)計(jì)時(shí)有關(guān)排序問(wèn)題研究發(fā)現(xiàn),其有如下特征。
(1)復(fù)雜性。計(jì)算機(jī)軟件開發(fā)是為了實(shí)現(xiàn)某些功能,這就決定了計(jì)算機(jī)程序設(shè)計(jì)需要涉及很多方面,因此其排序的操作過(guò)程時(shí)的有關(guān)數(shù)據(jù)也很多很雜,這就直接導(dǎo)致了計(jì)算機(jī)程序設(shè)計(jì)時(shí)排序問(wèn)題復(fù)雜性。雖然我們可以選用最佳的程序設(shè)計(jì)方案,但是因?yàn)檐浖旧淼膹?qiáng)大功能的要求決定了計(jì)算機(jī)程序設(shè)計(jì)時(shí)排序問(wèn)題依然是復(fù)雜的。
(2)不確定性。在具體的計(jì)算機(jī)程序設(shè)計(jì)過(guò)程,程序運(yùn)行時(shí)有時(shí)需要對(duì)有關(guān)數(shù)據(jù)或記錄進(jìn)行修改等各種的情況的發(fā)生,這些操作有時(shí)會(huì)引起程序的排序問(wèn)題發(fā)生改變,這樣的情況時(shí)有發(fā)生,因而也就加大計(jì)算機(jī)程序設(shè)計(jì)時(shí)排序問(wèn)題的不確定性。
(3)多約束性。排序問(wèn)題對(duì)計(jì)算機(jī)程序設(shè)計(jì)的功能影響是很明顯的。在實(shí)際的軟件開發(fā)時(shí),各種數(shù)據(jù)資源是相互約束及制約的,數(shù)據(jù)之間的這些約束及制約關(guān)系對(duì)程序設(shè)計(jì)時(shí)排序也會(huì)產(chǎn)生相應(yīng)的影響。因此,多約束性也是計(jì)算機(jī)程序設(shè)計(jì)時(shí)排序問(wèn)題的一個(gè)特點(diǎn)。
(4)多目標(biāo)性。程序設(shè)計(jì)時(shí)有些數(shù)據(jù)資源是隨機(jī)存放的,然而這樣的數(shù)據(jù)資源又很重要,可以同時(shí)被不同的目標(biāo)選用。所以在程序設(shè)計(jì)時(shí),處理排序問(wèn)題還要參照有關(guān)數(shù)據(jù)的選用目標(biāo)及其有關(guān)標(biāo)準(zhǔn),優(yōu)化數(shù)據(jù)排序問(wèn)題,以免發(fā)生數(shù)據(jù)資源引用混亂。所以,多目標(biāo)性也是計(jì)算機(jī)程序設(shè)計(jì)時(shí)排序問(wèn)題的一個(gè)特點(diǎn)。
2 計(jì)算機(jī)程序設(shè)計(jì)中的排序方法分析
根據(jù)計(jì)算機(jī)程序設(shè)計(jì)的具體功能要求,研究計(jì)算機(jī)程序設(shè)計(jì)時(shí)的各種不同排序方法的優(yōu)缺點(diǎn),選出適合程序設(shè)計(jì)要求的排序方法,優(yōu)化排序問(wèn)題,從而提高計(jì)算機(jī)程序設(shè)計(jì)的質(zhì)量及增強(qiáng)軟件功能,最大限度的發(fā)揮程序功能的實(shí)際作用,促進(jìn)計(jì)算機(jī)軟件開發(fā)行業(yè)的快速發(fā)展,提高生產(chǎn)力。
計(jì)算機(jī)程序設(shè)計(jì)時(shí)的排序方法主要有以下幾種。
2.1 冒泡排序
冒泡排序是計(jì)算機(jī)程序設(shè)計(jì)時(shí)最基本的排序方法,其核心思想對(duì)緊鄰的兩個(gè)數(shù)據(jù)進(jìn)行兩兩比較,根據(jù)比較結(jié)果調(diào)整兩個(gè)數(shù)據(jù)的位置。如在比較的時(shí),將兩兩比較時(shí)較小的數(shù)據(jù)調(diào)整到前面,較大數(shù)調(diào)整到后面,然后再將較大的數(shù)與后面緊臨的數(shù)進(jìn)行比較,直到所有數(shù)據(jù)都比較完成,并將數(shù)據(jù)按從小到大的順序排放。冒泡排序最主要的是一次只對(duì)兩個(gè)數(shù)據(jù)比較,并根據(jù)結(jié)果不斷調(diào)整數(shù)據(jù)位置,直至數(shù)據(jù)比對(duì)完。一般情況下,冒泡排序只用一個(gè)輔助單元,并利用該輔助單元的基本功能,完成數(shù)據(jù)的重新排放。冒泡排序的空間復(fù)雜程度為 O(1),選用冒泡排序方法特別要注意的是需要排序的數(shù)據(jù)以及完成這些數(shù)據(jù)的排序所需要的時(shí)間。根據(jù)程序設(shè)計(jì)功能的實(shí)際要求以及冒泡排序的特點(diǎn),確定冒泡排序的平均時(shí)間復(fù)雜度為 O(n^2)。是部分?jǐn)?shù)據(jù)的冒泡排序圖。
2.2 選擇法排序
選擇法排序也是解決計(jì)算機(jī)程序設(shè)計(jì)時(shí)有關(guān)排序問(wèn)題的常用方法。選擇法排序能夠較大的提升計(jì)算機(jī)程序設(shè)計(jì)的質(zhì)量。選擇法排序的基本思想是,先對(duì)一組數(shù)據(jù)進(jìn)行分析比較,每次選出其中最小或最大的數(shù)據(jù)放在數(shù)列的開始位置,直至所有的數(shù)據(jù)排列完成。選擇排序法是一種不穩(wěn)定的排序方法。如每次比較時(shí)選出最小的數(shù)據(jù)放在數(shù)列的開始位置,則需要對(duì)數(shù)列中所有數(shù)據(jù)進(jìn)行比較與改變存放位置,為斷的進(jìn)行這個(gè)比較和位置交換操作,以達(dá)到數(shù)據(jù)排序的需要。實(shí)現(xiàn)計(jì)算機(jī)程序設(shè)計(jì)質(zhì)理的提高。這種選擇排序法的空間復(fù)雜度也是 O(1),而且其的時(shí)間效率一樣與數(shù)據(jù)的多少有關(guān),其平均時(shí)間復(fù)雜度為 O(n^2)。
2.3 快速排序法
快速排序法是計(jì)算機(jī)程序設(shè)計(jì)時(shí)一種較常用的數(shù)據(jù)排序方法,選用這種排序方法也可以極大的提高計(jì)算機(jī)程序設(shè)計(jì)的質(zhì)量,增強(qiáng)其功能,降低程序的誤差??焖倥判蚍ㄅc冒泡排序法及選擇排序法不同,它核心思想是每次將原始數(shù)據(jù)分為兩部分,并且保證一部分的數(shù)據(jù)比另一部分的數(shù)據(jù)都?。ɑ蚨即螅簿褪钦f(shuō)每次都將小數(shù)(或大數(shù))放在一起。因此選用這種排序方法需要設(shè)計(jì)兩個(gè)指針,分別指定小數(shù)及大數(shù)的初始值,然后根據(jù)快速排序法的思想,分別大數(shù)部分及小數(shù)部分進(jìn)行排序,最后將兩部分?jǐn)?shù)據(jù)合并。根據(jù)每次替換掃描的結(jié)果,比較兩個(gè)指針數(shù)據(jù)的大小,兩個(gè)指針數(shù)值相同,則完成數(shù)據(jù)排序工作??焖倥判蚍椒ㄝ^好,且符合計(jì)算機(jī)程序設(shè)計(jì)的具體要求。在快速排序法中,如果將數(shù)據(jù)進(jìn)行n 次劃分,所選擇的基值依然是未排序中的最大值(或最小值),那么將得到總的比較次數(shù)也達(dá)到一個(gè)最大值,而且這個(gè)最大值是 O(2^n)。結(jié)合快速排序法的具體操作,能夠算出其平均時(shí)間復(fù)雜度為 O(log2n)。
2.4 合并排序
合并排序即歸并排序,其基本思想是分法。即將待排序數(shù)據(jù)分為多個(gè)小序列,然后將每個(gè)序列分別排序,最后將排序好序列合并在一起,成為一個(gè)有序的排序數(shù)列。將每個(gè)未排序數(shù)據(jù)進(jìn)行排序,選用雙子集合的方式進(jìn)行排序,最終得到各個(gè)排序好的集合,并合并起來(lái),很到較好的排序結(jié)果。在最差的情況下,其時(shí)間復(fù)雜度如下式(1)計(jì)算:合并排序與快速排序相似,但其穩(wěn)定性高于快速排序。合并排序已是計(jì)算機(jī)程序設(shè)計(jì)中最常用的效果較好且較穩(wěn)定的數(shù)據(jù)排序方式。
2.5 具有多目標(biāo)性
程序設(shè)計(jì)人員在執(zhí)行數(shù)據(jù)排序時(shí),還要考慮同組數(shù)據(jù)資源信息或記錄被多個(gè)目標(biāo)選用的情況。這就需要設(shè)計(jì)人員在程序設(shè)計(jì)開發(fā)時(shí)一定要嚴(yán)格要求自己,執(zhí)行程序開發(fā)的有關(guān)標(biāo)準(zhǔn),提高程序設(shè)計(jì)的適用性。
綜上所述,計(jì)算機(jī)程序排序問(wèn)題是一個(gè)復(fù)雜問(wèn)題,影響著計(jì)算機(jī)程序的質(zhì)量與功能,所以計(jì)算機(jī)程序設(shè)計(jì)者要持續(xù)提升自己的專業(yè)水平,跟上計(jì)算機(jī)技術(shù)發(fā)展的趨勢(shì),在計(jì)算機(jī)程序設(shè)計(jì)開發(fā)時(shí)根據(jù)軟件功能要求盡可能的選用最佳的排序方法。
3 計(jì)算機(jī)程序設(shè)計(jì)中排序方法的選擇
在進(jìn)行的計(jì)算機(jī)程序設(shè)計(jì)開發(fā)時(shí),通常要選用的計(jì)算機(jī)排序方法,要能滿足軟件功能的要求,并提高軟件功能的質(zhì)量,這就要求計(jì)算機(jī)程序設(shè)計(jì)人員要用合理的方法選用計(jì)算機(jī)程序設(shè)計(jì)的排序方法,以滿足軟件開發(fā)的要求,并保證軟件正常使用。
3.1 排序方法的優(yōu)化
在計(jì)算機(jī)程序設(shè)計(jì)的排序方法選擇時(shí),通常要考慮數(shù)據(jù)的實(shí)際情況,選用合適的最優(yōu)的排序方法,以保證程序的功能要求。如在程序設(shè)計(jì)時(shí)選用冒泡排序方法,則可選擇標(biāo)志設(shè)置的方法,并將其寫到數(shù)據(jù)交換代碼程序中,這樣可以很大的提高冒泡排序法的質(zhì)量,從而提高計(jì)算機(jī)程序設(shè)計(jì)的質(zhì)量和功能。如果采用排序法來(lái)處理計(jì)算機(jī)程序的排序問(wèn)題,那么可以通過(guò)去掉不必要的操作,并記錄每個(gè)數(shù)據(jù)的存放位置,然后根據(jù)指定的規(guī)則查找對(duì)比數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)比對(duì),位置交換的操作,從而達(dá)到優(yōu)化排序功能。對(duì)計(jì)算機(jī)程序設(shè)計(jì)時(shí)數(shù)據(jù)排序問(wèn)題的優(yōu)化操作,其核心是要注意樞紐的選用,保證樞紐的功能要求,這樣才能提高快速排序效果。
3.2 排序方法的比較與總結(jié)
計(jì)算機(jī)程序設(shè)計(jì)開發(fā)時(shí)有較多的數(shù)據(jù)排序處理方法,具體程序開發(fā)選用哪種,則要綜合考慮各種排序方法的所需平均時(shí)間及最壞情況時(shí)的時(shí)間以及存儲(chǔ)空間等幾個(gè)方面的差異,選出最適合程序需求的排序方法。通過(guò)上面的分析可以看出,平均時(shí)間為O(n^2),最壞情況下的時(shí)間為O(n^2),輔助存儲(chǔ)空間為 O(1),數(shù)據(jù)的變化情況對(duì)排序的最終處理結(jié)果的影響很大。所以,在計(jì)算機(jī)程序設(shè)計(jì)時(shí)有關(guān)排序問(wèn)題選擇,需要綜合考慮各種因素對(duì)排序結(jié)果的影響,既要考慮排序時(shí)所需要的時(shí)間,要考慮排序時(shí)所需要的內(nèi)存,平衡多方因素,合理選擇排序方法,以提高程序的性能。
在計(jì)算機(jī)程序設(shè)計(jì)時(shí),要盡可能的選用最優(yōu)的選擇排序方法,以增強(qiáng)計(jì)算機(jī)程序設(shè)計(jì)的性能。由于選用不同的排序方法對(duì)程序設(shè)計(jì)的性能影響是不一樣的。計(jì)算機(jī)程序設(shè)計(jì)時(shí),各種排序方法所耗費(fèi)的時(shí)間不盡相同,所需時(shí)間與 n 有很大關(guān)系。假如n 值不大,則一般選擇直接插入法、選擇排序法等,這樣可以記錄信息數(shù)據(jù)量相比較多的內(nèi)容,選擇排序法是較適合程序的需求。假如n 值相比很大,則一般選用復(fù)雜度相比較小的排序方法,如快速排序法等。另外快速排序法所耗費(fèi)的時(shí)間也相比不多,一般常用。還有,在選用排序方法時(shí),程序人員有時(shí)還可參考數(shù)值文件的初始狀態(tài)。假如關(guān)鍵字初始狀態(tài)是正序排列,那么此時(shí)可選用冒泡排序方法。假如程序設(shè)計(jì)時(shí),要求對(duì)兩種或多種的關(guān)鍵字進(jìn)行對(duì)比時(shí),則選用二叉樹的排序方法較合適等等,這樣根據(jù)程序設(shè)計(jì)的具體要求,綜合考慮選用哪種排序方法以提高程序的性能。
4 結(jié)束語(yǔ)
討論計(jì)算機(jī)程序設(shè)計(jì)時(shí)排序問(wèn)題的特征,根據(jù)計(jì)算機(jī)程序設(shè)計(jì)時(shí)常用的排序方法,合理的選用排序方法,以滿足計(jì)算機(jī)程序設(shè)計(jì)時(shí)數(shù)據(jù)排序的需求,從而保證計(jì)算機(jī)程序設(shè)計(jì)軟件的功能性。在計(jì)算機(jī)程序設(shè)計(jì)時(shí),要重視排序問(wèn)題的處理。優(yōu)化程序的排序方法,加強(qiáng)程序設(shè)計(jì)性能,是拓展計(jì)算機(jī)技術(shù)應(yīng)用領(lǐng)域的重要手段。選用不同排序方法,實(shí)現(xiàn)計(jì)算機(jī)程序功能的不同點(diǎn),以符合各種應(yīng)用需求。因此,在計(jì)算機(jī)程序設(shè)計(jì)時(shí),程序設(shè)計(jì)人員要選用適當(dāng)?shù)呐判蚍椒ㄒ詽M足程序開發(fā)的需求,并盡可能的優(yōu)化計(jì)算機(jī)程序功能。這樣可以減少提高程序設(shè)計(jì)的流程,調(diào)整程序設(shè)計(jì)的難度,而且還能提高軟件的性能。
參考文獻(xiàn):
[1] 薛輝.冒泡排序的口訣教學(xué)法[J].陜西教育(高教版),2012(5):103-104.
關(guān)鍵詞:認(rèn)知教學(xué);組織;?;灰蚬?;計(jì)算機(jī)程序設(shè)計(jì)
作者簡(jiǎn)介:彭珍(1981-),女,山東東明人,華北科技學(xué)院計(jì)算機(jī)學(xué)院,講師。(北京 101601)吳立鋒(1978-),男,河北隆堯人,首都師范大學(xué)信息工程學(xué)院,講師。(北京100048)
基金項(xiàng)目:本文系華北科技學(xué)院教育科學(xué)研究2011年指導(dǎo)類課題“計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)方法的研究”、華北科技學(xué)院試題庫(kù)項(xiàng)目“《C++與面向?qū)ο蟪绦蛟O(shè)計(jì)》試題庫(kù)建設(shè)”、首都師范大學(xué)青年教師教學(xué)研究項(xiàng)目“以培養(yǎng)能力為核心的《ACCESS 數(shù)據(jù)庫(kù)》課程教學(xué)方法的研究與探索”的研究成果。
中圖分類號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-0079(2012)11-0059-02
目前已有的問(wèn)題教學(xué)、[1]任務(wù)驅(qū)動(dòng)教學(xué)、[2]案例教學(xué)、[3]引導(dǎo)教學(xué)等都側(cè)重于教學(xué)形式與手段的變新與改革,[4]很少?gòu)慕淌趦?nèi)容的本質(zhì)出發(fā),研究教學(xué)內(nèi)容的認(rèn)知規(guī)律。為此,本文基于教學(xué)賴以存在和發(fā)展的認(rèn)知機(jī)理,提出一種新的認(rèn)知教學(xué)方法,條理地、邏輯地、系統(tǒng)地組織教學(xué)內(nèi)容,符合學(xué)生學(xué)習(xí)思維的邏輯認(rèn)知過(guò)程。
“程序設(shè)計(jì)”是計(jì)算機(jī)領(lǐng)域中一門重要的軟件技術(shù),是其他軟件技術(shù)的基礎(chǔ)。“程序設(shè)計(jì)”課程是伴隨著計(jì)算機(jī)應(yīng)用和程序設(shè)計(jì)語(yǔ)言的發(fā)展而發(fā)展起來(lái)的一門重要學(xué)科,已發(fā)展成為計(jì)算機(jī)專業(yè)中重要的專業(yè)必修課程,在高等教育中確立了不可缺少的公共基礎(chǔ)課的地位。作為使用和開發(fā)計(jì)算機(jī)的重要工具,程序設(shè)計(jì)課程具備統(tǒng)一的抽象與規(guī)律。
本文將這種認(rèn)知教學(xué)應(yīng)用于“計(jì)算機(jī)程序設(shè)計(jì)”課程的教學(xué)過(guò)程中,有組織、有規(guī)律地將該課程的教學(xué)內(nèi)容貫穿始終,為學(xué)生掌握程序設(shè)計(jì)方法、提高學(xué)生程序設(shè)計(jì)能力與邏輯思維能力打下堅(jiān)實(shí)基礎(chǔ)。
一、認(rèn)知教學(xué)的概述
本文提出的認(rèn)知教學(xué)是基于Zadeh的認(rèn)知原理,Zadeh將人類的認(rèn)知概括為:[5]組織(organization)、粒化(granulation)和因果(causation)。“組織”指從部分合并為整體,“粒化”指將整體分解為部分,“因果”指原因和結(jié)果的關(guān)聯(lián)。前兩者可看作互擬的過(guò)程,因果結(jié)構(gòu)是一切知識(shí)的共性,它是對(duì)知識(shí)的一種本質(zhì)抽象,因果有直接因果關(guān)系和間接因果關(guān)系,也有潛在因果關(guān)系和真實(shí)因果關(guān)系。所謂潛在因果關(guān)系是指一個(gè)具有普遍適應(yīng)范圍的概括性的因果規(guī)律,表示給定一定的條件,原因X的滿足將引起結(jié)果Y的滿足;而真實(shí)的因果關(guān)系則是在一個(gè)特定情形下實(shí)際發(fā)生的事實(shí),即X和Y事實(shí)上發(fā)生了,而且是因果相關(guān)的。在知識(shí)表示的層次上,教師所研究的是潛在因果關(guān)系,真實(shí)因果關(guān)系可以看作是潛在因果關(guān)系在某一特定情形下的一個(gè)實(shí)例。人類認(rèn)知事物是從事物的不同側(cè)面、不同層次上認(rèn)知事物的本質(zhì),將復(fù)雜的信息結(jié)構(gòu)化(?;?,然后研究在不同結(jié)構(gòu)層次上新事物具有的特性和不同側(cè)面或?qū)哟紊闲率挛锾卣髦g的關(guān)系,進(jìn)而從本質(zhì)上全面認(rèn)知事物。
認(rèn)知教學(xué),就是按照人類認(rèn)知事物的規(guī)律進(jìn)行教授知識(shí),即將教學(xué)知識(shí)組織、?;⒁蚬?,從而使得學(xué)生抓住知識(shí)的本質(zhì)、全面地掌握知識(shí)。這里,組織可以理解為對(duì)知識(shí)宏觀的掌控,粒化是對(duì)知識(shí)微觀的演化,因果則是知識(shí)之間的關(guān)聯(lián)。因此,認(rèn)知教學(xué)能夠條理地、邏輯地、系統(tǒng)地組織教學(xué)內(nèi)容,是一種符合學(xué)生學(xué)習(xí)邏輯認(rèn)知過(guò)程的科學(xué)方法。
二、計(jì)算機(jī)程序設(shè)計(jì)課程
幾乎所有高等學(xué)校的每個(gè)專業(yè)的學(xué)生都要學(xué)習(xí)諸如C、VB或VF語(yǔ)言這樣的程序設(shè)計(jì)課程(必修課程),而且隨著各具特色的高級(jí)程序設(shè)計(jì)語(yǔ)言(C++、Java等)及網(wǎng)頁(yè)程序設(shè)計(jì)語(yǔ)言(JSP、等)的不斷涌現(xiàn),程序設(shè)計(jì)課程是高等教育中不可缺少的公共基礎(chǔ)課,而且已成為計(jì)算機(jī)專業(yè)的一門獨(dú)立必修專業(yè)課程。程序設(shè)計(jì)是大學(xué)生必備的一種計(jì)算機(jī)技能,更重要的是對(duì)其思維的特殊訓(xùn)練和對(duì)其智慧的重大挑戰(zhàn)。
“計(jì)算機(jī)程序設(shè)計(jì)”課程主要是學(xué)習(xí)如何用某種計(jì)算機(jī)語(yǔ)言編寫程序來(lái)解決問(wèn)題。程序=數(shù)據(jù)結(jié)構(gòu)+算法,所以程序設(shè)計(jì)的本質(zhì)就是設(shè)計(jì)出合理的數(shù)據(jù)結(jié)構(gòu)與算法。
根據(jù)軟件工程理論,[6]程序設(shè)計(jì)大致可以分為結(jié)構(gòu)化程序設(shè)計(jì)(Structured Programming,SP)、面向?qū)ο蟪绦蛟O(shè)計(jì)(Object-Oriented Programming,OOP)、面向數(shù)據(jù)結(jié)構(gòu)的程序設(shè)計(jì)(Jackson System Development,JSP),國(guó)內(nèi)主要用的是前兩種程序設(shè)計(jì)方法。
同一類型的計(jì)算機(jī)程序設(shè)計(jì)有若干不同程序設(shè)計(jì)語(yǔ)言,同一類型的語(yǔ)言采用的數(shù)據(jù)結(jié)構(gòu)大致相同,比如結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言采用的數(shù)據(jù)結(jié)構(gòu)絕大多數(shù)是基本數(shù)據(jù)類型,還有其他構(gòu)造類型如結(jié)構(gòu)體等;面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言主要采用的數(shù)據(jù)結(jié)構(gòu)則是類,其中還涉及繼承機(jī)制等。因此,程序設(shè)計(jì)課程首先介紹的都是數(shù)據(jù)結(jié)構(gòu),在程序中體現(xiàn)在數(shù)據(jù)的定義上。
算法的設(shè)計(jì)與具體問(wèn)題有著密切的關(guān)系,但無(wú)外乎是對(duì)數(shù)據(jù)結(jié)構(gòu)的操作,比如輸入、計(jì)算與輸出。其中計(jì)算最為復(fù)雜,可能是函數(shù),或標(biāo)準(zhǔn)的表達(dá)式語(yǔ)句,或帶有順序、選擇、循環(huán)結(jié)構(gòu)的混合。因此,程序設(shè)計(jì)課程中的重點(diǎn)和難點(diǎn)都在算法部分。
三、認(rèn)知教學(xué)在計(jì)算機(jī)程序設(shè)計(jì)課程中的應(yīng)用
根據(jù)計(jì)算機(jī)程序設(shè)計(jì)課程的抽象特征,擬從以下幾個(gè)方面將認(rèn)知教學(xué)應(yīng)用于計(jì)算機(jī)程序設(shè)計(jì)課程中。
按照數(shù)據(jù)結(jié)構(gòu)+算法的思路將計(jì)算機(jī)程序設(shè)計(jì)教學(xué)知識(shí)合理組織在一起,形成程序設(shè)計(jì)知識(shí)的宏觀體系結(jié)構(gòu);對(duì)宏觀架構(gòu)中的每一個(gè)知識(shí)點(diǎn)進(jìn)行細(xì)化,即構(gòu)建出每一知識(shí)點(diǎn)的微觀結(jié)構(gòu);搭建宏觀知識(shí)點(diǎn)之間、微觀知識(shí)點(diǎn)之間以及相互的關(guān)聯(lián)。
以“C程序設(shè)計(jì)”課程為例,[7]圖1概括了C程序設(shè)計(jì)的所有知識(shí)點(diǎn),形成了一個(gè)多層次、逐層深入的組織結(jié)構(gòu)。每一層次可以看作其上層的?;?,每一層次與其上層和下層都有直接或間接的因果關(guān)系,同層次知識(shí)點(diǎn)之間也存在因果關(guān)系。比如定義數(shù)據(jù)、輸入數(shù)據(jù)、計(jì)算數(shù)據(jù)和輸出數(shù)據(jù)構(gòu)成了程序的基本步驟,前一步是后一步的基礎(chǔ)和條件;比如定義數(shù)據(jù)中的基本數(shù)組類型是所有定義的基礎(chǔ),為了存儲(chǔ)多個(gè)有序數(shù)據(jù)(同一類型)形成了構(gòu)造性數(shù)據(jù)即數(shù)組;為了存儲(chǔ)不同類型的數(shù)據(jù)才有了構(gòu)造型數(shù)據(jù)即結(jié)構(gòu)體和共用體;為了便于表達(dá)更為復(fù)雜的數(shù)據(jù)結(jié)構(gòu)及方便有效地使用數(shù)據(jù)提出了指針,所以在定義數(shù)據(jù)中各部分之間存在著關(guān)聯(lián)。
最底層中的知識(shí)點(diǎn)還可以進(jìn)一步深入細(xì)化。“C程序設(shè)計(jì)”課程中,有關(guān)數(shù)組的認(rèn)知體系以包含10個(gè)整型數(shù)據(jù)的一維(10*10二維)數(shù)組、字符數(shù)組為例,如圖2所示。數(shù)組認(rèn)知按照數(shù)組的組成和編程的思路分別從縱向和橫向展開??v向坐標(biāo):一維數(shù)組、二維數(shù)組和字符數(shù)組,一維數(shù)組是二維與字符數(shù)組的基礎(chǔ),二維數(shù)組又是二維字符數(shù)組的基礎(chǔ);橫向坐標(biāo):定義、輸入、計(jì)算和輸出數(shù)組。特別地,(一維)字符數(shù)組的輸入/輸出的因果關(guān)系來(lái)看,它采用類似于一維數(shù)組的輸入/輸出方法,將輸入/輸出格式中的%d改為%c,進(jìn)一步可以簡(jiǎn)單地采用%s格式輸入/輸出(去除了循環(huán)結(jié)構(gòu)),更進(jìn)一步采用函數(shù)gets/puts調(diào)用來(lái)完成。
四、結(jié)束語(yǔ)
科學(xué)的教學(xué)方法應(yīng)該遵循教學(xué)賴以存在和發(fā)展的認(rèn)知機(jī)理和學(xué)生學(xué)習(xí)思維的邏輯認(rèn)知過(guò)程,認(rèn)知教學(xué)即從牢牢抓住教學(xué)本質(zhì)出發(fā),深化知識(shí)的組織、?;c因果關(guān)系,將所有知識(shí)融為一體,尤其對(duì)于程序設(shè)計(jì),這類邏輯性強(qiáng)的課程,該方法更適合。本文以“C程序設(shè)計(jì)”課程為例,闡述了認(rèn)知的應(yīng)用,并通過(guò)實(shí)際教學(xué),驗(yàn)證了該方法的有效性。
參考文獻(xiàn):
[1]羅祖兵.教育學(xué)問(wèn)題教學(xué):涵義、價(jià)值與操作[J].高等教育研究,2010,31(3):71-75.
[2]王春婷.淺談任務(wù)驅(qū)動(dòng)教學(xué)法在計(jì)算機(jī)教學(xué)中的應(yīng)用[J].太原大學(xué)教育學(xué)院學(xué)報(bào),2011,(2):103-105.
[3]趙月坤,高常.案例教學(xué)法在數(shù)學(xué)教學(xué)實(shí)踐中的應(yīng)用[J].中國(guó)成人教育,2011,(15):162-163.
[4]陳越,何欽銘.計(jì)算機(jī)專業(yè)研究型課程教學(xué)模式與創(chuàng)新能力培養(yǎng)的探索[J].計(jì)算機(jī)教育,2009,(24):99-101.
[5]Zadeh L.Some reflections on soft computing,granular computing and their roles in the conception,design and utilization of information/intelligent systems[J].Soft Computing,1998,(2):23-25.
[關(guān)鍵詞]培養(yǎng)方案 Visual Basic 教學(xué)改革 教學(xué)質(zhì)量
[中圖分類號(hào)] G642.0 [文獻(xiàn)標(biāo)識(shí)碼] A [文章編號(hào)] 2095-3437(2015)11-0141-03
為了適應(yīng)社會(huì)經(jīng)濟(jì)發(fā)展對(duì)高等教育人才培養(yǎng)的需求,各個(gè)專業(yè)的培養(yǎng)方案往往隔幾年就要修訂一次。
在山東科技大學(xué)2008版的培養(yǎng)方案中,通識(shí)教育課程包括人文社會(huì)科學(xué)、自然科學(xué)基礎(chǔ)、體育、外語(yǔ)、計(jì)算機(jī)基礎(chǔ)和公共選修課。其中,非計(jì)算機(jī)專業(yè)的計(jì)算機(jī)教學(xué)分為“計(jì)算機(jī)文化基礎(chǔ)”(60學(xué)時(shí)),“計(jì)算機(jī)技術(shù)基礎(chǔ)”(共60學(xué)時(shí),其中理論授課30學(xué)時(shí),上機(jī)實(shí)踐30學(xué)時(shí)),“計(jì)算機(jī)應(yīng)用基礎(chǔ)”(共60學(xué)時(shí),其中理論授課30學(xué)時(shí),上機(jī)實(shí)踐30學(xué)時(shí))三個(gè)層次組織教學(xué)。地球科學(xué)與工程學(xué)院的“計(jì)算機(jī)技術(shù)基礎(chǔ)(VB)”安排在大學(xué)一年級(jí)的第二學(xué)期,“計(jì)算機(jī)應(yīng)用基礎(chǔ)(VB)”安排在大學(xué)二年級(jí)的第一學(xué)期。
2013年,我校進(jìn)行了新一輪的培養(yǎng)方案修訂工作。在2013版的培養(yǎng)方案中,公共基礎(chǔ)課程包括人文社會(huì)科學(xué)、自然科學(xué)基礎(chǔ)、體育、外語(yǔ)、計(jì)算機(jī)基礎(chǔ)和公共選修課。對(duì)計(jì)算機(jī)基礎(chǔ)課程,要求非計(jì)算機(jī)專業(yè)的計(jì)算機(jī)教學(xué)實(shí)行分層、分類教學(xué),開設(shè)“計(jì)算機(jī)文化基礎(chǔ)”和“計(jì)算機(jī)程序設(shè)計(jì)”兩門課程。最終,地球科學(xué)與工程學(xué)院確定“計(jì)算機(jī)程序設(shè)計(jì)(VB)”課程共60學(xué)時(shí),其中理論授課40學(xué)時(shí),上機(jī)實(shí)踐20學(xué)時(shí),安排在大學(xué)二年級(jí)的第一學(xué)期。
轉(zhuǎn)眼2014級(jí)的“計(jì)算機(jī)程序設(shè)計(jì)(VB)”就要開課,如何應(yīng)對(duì)教學(xué)學(xué)時(shí)的巨大變化,又保證教學(xué)質(zhì)量,是目前必須要思考的問(wèn)題。
一、課程的性質(zhì)與教學(xué)基本要求
(一)課程的性質(zhì)
“計(jì)算機(jī)程序設(shè)計(jì)(VB)”是為地質(zhì)類專業(yè)開設(shè)的一門公共基礎(chǔ)課。通過(guò)本課程的教學(xué),使學(xué)生掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念,了解程序設(shè)計(jì)的基本原理、技巧和方法,并且能夠利用VB語(yǔ)言編寫相應(yīng)的程序,具有一定的程序調(diào)試能力,為以后進(jìn)一步自習(xí)其他程序語(yǔ)言和提高程序設(shè)計(jì)能力打下堅(jiān)實(shí)的基礎(chǔ)。
(二)教學(xué)基本要求
本課程以“計(jì)算機(jī)文化基礎(chǔ)(VB)”為先修課程,通過(guò)學(xué)習(xí)應(yīng)達(dá)到以下基本要求:
1.掌握VB的基本內(nèi)容和一般規(guī)定;
2.能夠獨(dú)立上機(jī)編輯、調(diào)試、運(yùn)行程序,并能得到正確結(jié)果;
3.能夠閱讀和分析VB語(yǔ)言源程序;
4.能夠使用VB語(yǔ)言編寫簡(jiǎn)單的應(yīng)用程序,解決實(shí)際問(wèn)題。
二、教學(xué)基本內(nèi)容及學(xué)時(shí)分配
根據(jù)地質(zhì)類專業(yè)對(duì)“計(jì)算機(jī)程序設(shè)計(jì)(VB)”的基本要求,結(jié)合學(xué)時(shí)及學(xué)生的接受能力和水平,教學(xué)基本內(nèi)容及學(xué)時(shí)分配如表1。
表1 教學(xué)基本內(nèi)容及學(xué)時(shí)分配表
三、教材選擇
當(dāng)前,Visual Basic程序設(shè)計(jì)方面的教材主要有:英文影印版,主要用于高校雙語(yǔ)教學(xué)試點(diǎn)、教學(xué)參考和圖書館館藏;編譯版,主要用作教學(xué)參考和圖書館館藏,較少用作教材;中文編著版,多數(shù)配有習(xí)題解答、實(shí)驗(yàn)指導(dǎo)和課件等配套教材,主要用作教材、圖書館館藏和教學(xué)參考。[1]
雖然市場(chǎng)上現(xiàn)有的Visual Basic教材種類繁多,缺乏針對(duì)性的教材是目前教學(xué)上最突出的問(wèn)題[2],真正切合高校地質(zhì)類學(xué)生實(shí)際情況的教材很少。
由同濟(jì)大學(xué)龔沛曾等人編寫的《Visual Basic程序設(shè)計(jì)教程(第4版)》[3]是在第三版的基礎(chǔ)上實(shí)施“問(wèn)題驅(qū)動(dòng)”教學(xué)法修訂而成的,教學(xué)目標(biāo)明確,易于學(xué)生了解和掌握知識(shí)點(diǎn)。該教材不再集中介紹常用控件,而是將常用控件分散在程序設(shè)計(jì)語(yǔ)言的相應(yīng)知識(shí)點(diǎn)中介紹,解決了教學(xué)學(xué)時(shí)少的矛盾;每章末配備了“自主學(xué)習(xí)”內(nèi)容,以滿足不同學(xué)習(xí)對(duì)象和教學(xué)學(xué)時(shí)的要求。因此,該教材是一個(gè)比較合適的選擇。
四、教學(xué)方法改革
面對(duì)教學(xué)學(xué)時(shí)壓縮的壓力,如果仍然沿用以往“以老師為中心”的教學(xué)方法顯然是行不通的,必須實(shí)行教學(xué)方法的改革。因材施教,靈活運(yùn)用各種恰當(dāng)?shù)慕虒W(xué)方法,以學(xué)生自主學(xué)習(xí)為中心,以問(wèn)題為中心,才能有效地調(diào)動(dòng)學(xué)生的學(xué)習(xí)興趣,促進(jìn)學(xué)生積極思考與實(shí)踐,提高教學(xué)質(zhì)量。[2]
(一)課堂理論教學(xué)
實(shí)踐證明,適用于Visual Basic程序設(shè)計(jì)的方法很多,下面結(jié)合具體內(nèi)容,以《Visual Basic程序設(shè)計(jì)教程(第4版)》(龔沛曾,等編)為例作簡(jiǎn)要說(shuō)明。
1.興趣教學(xué)法
“興趣是最好的老師”?,F(xiàn)在的大學(xué)生對(duì)計(jì)算機(jī)已經(jīng)非常熟悉,但對(duì)計(jì)算機(jī)語(yǔ)言了解不深。要從第一章授課開始(包括每一章開始)就激發(fā)學(xué)生的興趣,讓學(xué)生接受它,喜歡它。比如,“字幕動(dòng)畫”這個(gè)例子一定要講好,從一開始就吸引學(xué)生的注意力,對(duì)VB的學(xué)習(xí)產(chǎn)生興趣。[4] [5] [6]
2.案例教學(xué)法
案例教學(xué)法生動(dòng)、簡(jiǎn)潔,具有啟發(fā)和創(chuàng)造性,在促進(jìn)學(xué)生對(duì)知識(shí)點(diǎn)的理解、提高學(xué)生的創(chuàng)新能力等方面比傳統(tǒng)教學(xué)方法具有優(yōu)勢(shì)。實(shí)例教學(xué)法要求教師對(duì)VB語(yǔ)言及要講解的內(nèi)容非常熟悉,課前要認(rèn)真動(dòng)腦,準(zhǔn)備與知識(shí)點(diǎn)相關(guān)的典型例題,這是前提和必要條件。[7] [8] [9] [10]
3.任務(wù)驅(qū)動(dòng)教學(xué)法
“計(jì)算機(jī)程序設(shè)計(jì)(VB)”是一門理論與實(shí)踐并重的課程,教授根據(jù)理論教學(xué)的進(jìn)度和內(nèi)容,向?qū)W生提出由易到難、循序漸進(jìn)的一系列“任務(wù)”,使學(xué)生在完成“任務(wù)”的過(guò)程中獲得知識(shí),培養(yǎng)分析問(wèn)題、解決問(wèn)題的能力。[4] [6] [11] [12]
4.項(xiàng)目教學(xué)法
項(xiàng)目教學(xué)法是一種以項(xiàng)目為驅(qū)動(dòng)的教學(xué)形式,讓學(xué)生全面參與到教學(xué)中去,在項(xiàng)目中引入新的知識(shí)激發(fā)學(xué)生的積極性,加深所學(xué)知識(shí)的印象,提高學(xué)生綜合運(yùn)用所學(xué)知識(shí)的能力。[13] [14] [15]
5.CDIO工程教育理念
CDIO是當(dāng)前高等工程教育的一種人才培養(yǎng)理念,以構(gòu)思、設(shè)計(jì)、實(shí)施及運(yùn)作全過(guò)程為載體來(lái)培養(yǎng)學(xué)生的工程能力,以學(xué)生為中心,通過(guò)項(xiàng)目實(shí)踐,邊做邊學(xué),激發(fā)學(xué)生的學(xué)習(xí)興趣,引導(dǎo)學(xué)生主動(dòng)學(xué)習(xí)。[16] [17] [18]
表2 部分知識(shí)點(diǎn)教學(xué)方法設(shè)計(jì)表
■
此外,在教學(xué)過(guò)程中,要時(shí)刻注意深入淺出、舉一反三、歸納總結(jié)[19],引導(dǎo)學(xué)生熟練掌握并運(yùn)用所學(xué)知識(shí),解決相關(guān)問(wèn)題。
(二)上機(jī)實(shí)踐教學(xué)
上機(jī)實(shí)踐是“計(jì)算機(jī)程序設(shè)計(jì)(VB)”教學(xué)的關(guān)鍵環(huán)節(jié),對(duì)提高VB教學(xué)質(zhì)量至關(guān)重要。[20]只有經(jīng)過(guò)上機(jī)實(shí)踐操作,學(xué)生才能真正地領(lǐng)會(huì)和應(yīng)用相關(guān)知識(shí)點(diǎn)。
課堂理論授課結(jié)束后,要給學(xué)生布置適量的上機(jī)實(shí)踐內(nèi)容,讓學(xué)生充分準(zhǔn)備好。上機(jī)實(shí)踐課上,學(xué)生的主要任務(wù)是調(diào)試程序,在此過(guò)程中遇到的問(wèn)題,教師應(yīng)盡量啟發(fā)學(xué)生自己解決。對(duì)共性的問(wèn)題,可以采用集中講解的方式。[21]在上機(jī)實(shí)踐課結(jié)束之前,教師要針對(duì)本次課的總體情況加以點(diǎn)評(píng),以利于學(xué)生的課后自學(xué)和總結(jié)。
五、結(jié)語(yǔ)
Visual Basic程序設(shè)計(jì)是一門重要的基礎(chǔ)性編程語(yǔ)言,雖然相對(duì)于有些計(jì)算機(jī)語(yǔ)言而言簡(jiǎn)單易學(xué),但仍需在教學(xué)中綜合運(yùn)用多種方法,善于探索,敢于改革,增強(qiáng)學(xué)生的學(xué)習(xí)興趣,培養(yǎng)學(xué)生運(yùn)用所需知識(shí)解決實(shí)際問(wèn)題的能力。
[ 注 釋 ]
[1] 艾菊梅,王曉燕,宋文琳.基于案例的VB立體化教材建設(shè)研究[J].大學(xué)教育,2012(11):21-22.
[2] 張榮華,殷士勇.以教材建設(shè)為中心的VB課程改革與實(shí)踐[J].吉林農(nóng)業(yè)科技學(xué)院學(xué)報(bào),2009(1):83-84.
[3] 龔沛曾,楊志強(qiáng),陸慰民,等編.Visual Basic程序設(shè)計(jì)教程(第4版)[M].北京:高等教育出版社,2013.
[4] 王鵬宇.VB教學(xué)改革的幾點(diǎn)認(rèn)識(shí)[J].科技信息,2007(5):33.
[5] 李林,劉毅,秦洪英.“VB程序設(shè)計(jì)”教學(xué)模式改革[J].現(xiàn)代計(jì)算機(jī),2009(10):97-98,106.
[6] 朱智謀,陳建軍.就“應(yīng)用型”人才培養(yǎng)下的《VB語(yǔ)言程序設(shè)計(jì)》課程教學(xué)改革探討[J].軟件,2013(11):166-167.
[7] 何小年.VB程序設(shè)計(jì)教學(xué)的改革與實(shí)踐[J].湖南第一師范學(xué)報(bào),2006(1):55-57.
[8] 楊潞霞.“VB程序設(shè)計(jì)”教學(xué)的改革與實(shí)踐[J].計(jì)算機(jī)教育,2007(8):24-26.
[9] 劉洪坡,石磊.Visual Basic程序設(shè)計(jì)課程教學(xué)改革的探索與實(shí)踐[J].廣州番禺職業(yè)技術(shù)學(xué)院學(xué)報(bào),2010(3):32-35.
[10] 史媛.案例驅(qū)動(dòng)法對(duì)VB程序設(shè)計(jì)課程的改革[J].宜春學(xué)院學(xué)報(bào),2011(4):168,185.
[11] 王洪艷.高?!癡B程序設(shè)計(jì)語(yǔ)言”課程教學(xué)改革探索與實(shí)踐[J].鞍山師范學(xué)院學(xué)報(bào),2013(6):56-59.
[12] 鐘玉峰,運(yùn)海紅,葛冬梅.高校VB程序設(shè)計(jì)課程教學(xué)改革研究[J].黑龍江教育(高教研究與評(píng)估),2013(5):26-27.
[13] 金林樵.基于項(xiàng)目教學(xué)法的VB課程教學(xué)改革與實(shí)踐[J].浙江樹人大學(xué)學(xué)報(bào),2012(1):61-65.
[14] 張小衛(wèi),謝巧玲.VB課程項(xiàng)目化教學(xué)改革的探索與實(shí)踐[J].河南科技,2013(9):274-275.
[15] 程鵬.VB課程項(xiàng)目化教學(xué)改革的探索[J].延安職業(yè)技術(shù)學(xué)院學(xué)報(bào),2014(6):84-85.
[16] 廖麗嶸.CDIO工程教育理念下《VB程序設(shè)計(jì)》課程教學(xué)改革研究[J].韶關(guān)學(xué)院學(xué)報(bào)(自然科學(xué)),2011(8):96-98.
[17] 李艷梅,張亞峰,燕振剛.面向CDIO理念的VB程序設(shè)計(jì)應(yīng)用型本科教學(xué)改革初探[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2012(1):112-114.
[18] 周蚌艷,欽明皖.基于CDIO理念的VB程序設(shè)計(jì)基礎(chǔ)課程教學(xué)改革初探[J].中國(guó)電力教育,2014(35):123-124.
[19] 文靜.淺議VB教學(xué)方法改革的探討和實(shí)踐[J].吉林省教育學(xué)院學(xué)報(bào),2012(2):17-18.
關(guān)鍵詞:獨(dú)立學(xué)院;課程改革;人才培養(yǎng);程序設(shè)計(jì)
隨著計(jì)算機(jī)軟件行業(yè)的發(fā)展與普及,十幾年來(lái)計(jì)算機(jī)軟件技術(shù)發(fā)生了翻天覆地的變化,而高等學(xué)校的教學(xué)內(nèi)容、教學(xué)模式與教學(xué)方法卻沒(méi)有多大的改變,課程教學(xué)理念嚴(yán)重滯后于實(shí)際需要,教學(xué)效果存在相當(dāng)大的問(wèn)題?,F(xiàn)在的計(jì)算機(jī)軟件專業(yè)學(xué)生擁有的優(yōu)勢(shì)越來(lái)越少,就業(yè)壓力也越來(lái)越大。對(duì)獨(dú)立學(xué)院的計(jì)算機(jī)軟件專業(yè)學(xué)生而言,更是如此。比專業(yè)理論知識(shí),他們沒(méi)有一本、二本的學(xué)生全面扎實(shí),比實(shí)踐操作能力,他們又遠(yuǎn)不及高職學(xué)生。那么獨(dú)立學(xué)院應(yīng)該培養(yǎng)怎樣的計(jì)算機(jī)軟件人才呢?學(xué)生將來(lái)畢業(yè)以后,憑借什么在社會(huì)上立足呢?這是我們老師一直在思考和探索的問(wèn)題。
為適應(yīng)新的形勢(shì),我院明確了計(jì)算機(jī)軟件人才的定位:培養(yǎng)應(yīng)用型軟件人才。這個(gè)培養(yǎng)目標(biāo)既是從獨(dú)立學(xué)院學(xué)生的自身?xiàng)l件出發(fā),又符合當(dāng)前社會(huì)對(duì)計(jì)算機(jī)軟件人才的需求。在這個(gè)培養(yǎng)目標(biāo)的指導(dǎo)下,我們?cè)谟?jì)算機(jī)程序設(shè)計(jì)課程教學(xué)上進(jìn)行了大膽嘗試,修訂了教學(xué)大綱,增加、刪除了部分教學(xué)內(nèi)容,并將新的教學(xué)模式與教學(xué)方法引入計(jì)算機(jī)基礎(chǔ)教學(xué)中,取得了較好的效果。
1存在的問(wèn)題
已往的教學(xué)經(jīng)驗(yàn)表明,學(xué)生在學(xué)習(xí)程序設(shè)計(jì)類課程時(shí)最難的地方不是掌握某種程序設(shè)計(jì)語(yǔ)言的語(yǔ)法規(guī)范,而是掌握程序設(shè)計(jì)的基本方法。
程序設(shè)計(jì)語(yǔ)言的語(yǔ)法規(guī)范是死的,并且與任何一種自然語(yǔ)言相比,程序設(shè)計(jì)語(yǔ)言的語(yǔ)法規(guī)范更簡(jiǎn)單規(guī)則。因此,只要學(xué)生掌握好了程序設(shè)計(jì)的基本方法,再花費(fèi)一定的時(shí)間掌握某一種程序設(shè)計(jì)語(yǔ)言的語(yǔ)法規(guī)范,就能用該程序設(shè)計(jì)語(yǔ)言設(shè)計(jì)程序,甚至達(dá)到精通水平。
具體而言,目前教學(xué)中存在的主要問(wèn)題有:教學(xué)內(nèi)容與教材組織過(guò)于陳舊;教學(xué)目標(biāo)沒(méi)有反映新形勢(shì)的需要。其典型表現(xiàn)在:程序設(shè)計(jì)方法強(qiáng)調(diào)不夠,抽象思維能力培養(yǎng)不足;某些程序設(shè)計(jì)中重要的概念講授力度不足,如庫(kù)與接口、UML建模以及目前流行的軟件開發(fā)方法等,學(xué)生在實(shí)際的軟件開發(fā)中無(wú)法滿足企業(yè)的需要。
2構(gòu)建程序設(shè)計(jì)基礎(chǔ)培養(yǎng)四階段課程體系
大多數(shù)獨(dú)立學(xué)院的本科計(jì)算機(jī)軟件專業(yè)現(xiàn)行的課程設(shè)計(jì),與普通的一本、二本院校相比相差無(wú)幾,沒(méi)有突出獨(dú)立學(xué)院的特點(diǎn),也沒(méi)有明確獨(dú)立學(xué)院的培養(yǎng)目標(biāo)。因此,對(duì)獨(dú)立學(xué)院計(jì)算機(jī)軟件專業(yè)課程體系進(jìn)行改革迫在眉睫。我院以“計(jì)算機(jī)導(dǎo)論與C語(yǔ)言程序設(shè)計(jì)”為公共基礎(chǔ)的程序邏輯訓(xùn)練、以“高級(jí)程序設(shè)計(jì)技術(shù)”為核心的程序設(shè)計(jì)方法培養(yǎng)、以“數(shù)據(jù)結(jié)構(gòu)”為支持的數(shù)據(jù)與程序抽象能力培養(yǎng)、以“C++程序設(shè)計(jì)”貫穿面向?qū)ο蟪绦蛟O(shè)計(jì)新理念,并在大三大四高年級(jí)開設(shè)了Java、Linux、UML建模等程序設(shè)計(jì)類選修課程,形成了“基礎(chǔ)訓(xùn)練+方法培養(yǎng)+提高能力+拓展層面+實(shí)踐應(yīng)用”的程序設(shè)計(jì)教學(xué)新模式[1],在強(qiáng)化程序設(shè)計(jì)能力培養(yǎng)過(guò)程中發(fā)揮了重要的作用。
3提出并實(shí)施四層次軟件人才培養(yǎng)新模式
我院以課程體系為基礎(chǔ),提出并實(shí)施了“基礎(chǔ)訓(xùn)練+提高能力+拓展層面+實(shí)踐運(yùn)用”的四層次軟件人才培養(yǎng)模式。
3.1基礎(chǔ)訓(xùn)練
程序設(shè)計(jì)基礎(chǔ)訓(xùn)練課程開設(shè)在大學(xué)一年級(jí),是大學(xué)階段系統(tǒng)認(rèn)識(shí)計(jì)算機(jī)、應(yīng)用計(jì)算機(jī)的入門課程,通過(guò)程序設(shè)計(jì)的詞法、語(yǔ)法及使用方法的學(xué)習(xí),要求學(xué)生掌握、體會(huì)計(jì)算機(jī)解決問(wèn)題的基本技能。在基礎(chǔ)訓(xùn)練中,通過(guò)對(duì)計(jì)算機(jī)導(dǎo)論課程的學(xué)習(xí),讓學(xué)生認(rèn)識(shí)并能熟練運(yùn)用計(jì)算機(jī)編寫程序;通過(guò)對(duì)C語(yǔ)言程序設(shè)計(jì)課程的學(xué)習(xí),讓學(xué)生初步掌握程序設(shè)計(jì)的方法,訓(xùn)練程序設(shè)計(jì)中的邏輯思維。
3.2能力提高
程序設(shè)計(jì)能力提高課程開設(shè)在二年級(jí),主要從兩個(gè)方面提高學(xué)生的程序設(shè)計(jì)能力:一是高級(jí)程序設(shè)計(jì)技術(shù)課程,重點(diǎn)學(xué)習(xí)典型的程序設(shè)計(jì)方法技術(shù),便于學(xué)生系統(tǒng)地學(xué)習(xí)并掌握程序設(shè)計(jì)方法技術(shù)。二是數(shù)據(jù)結(jié)構(gòu)課程,通過(guò)構(gòu)造性思維的訓(xùn)練,重點(diǎn)突出數(shù)據(jù)抽象與程序抽象能力的培養(yǎng),讓學(xué)生在基礎(chǔ)訓(xùn)練階段之后能更深入地理解程序設(shè)計(jì)的概念。
3.3層面拓展
主要以市場(chǎng)需求為基礎(chǔ),包括工具類別與應(yīng)用環(huán)境的拓展,以選修課形式開設(shè)在三、四年級(jí)。在具有良好C程序設(shè)計(jì)能力基礎(chǔ)上,展開其他程序設(shè)計(jì)工具層面,如開設(shè)Java、VC++、VB等程序設(shè)計(jì)類選修課程,增強(qiáng)學(xué)生掌握新工具,舉一反三的能力。隨著我國(guó)經(jīng)濟(jì)發(fā)展,國(guó)外市場(chǎng)份額不斷增加,熟悉和使用Unix環(huán)境已成為計(jì)算機(jī)軟件專業(yè)應(yīng)當(dāng)掌握的重要技術(shù),開設(shè)Unix環(huán)境編程和Linux程序設(shè)計(jì)等課程,將拓展應(yīng)用環(huán)境,提高學(xué)生適應(yīng)新環(huán)境的程序設(shè)計(jì)能力。
3.4實(shí)踐應(yīng)用
自2006年以來(lái),我院就加大了程序設(shè)計(jì)課程中的實(shí)踐課時(shí)比例,實(shí)踐課時(shí)占到總學(xué)時(shí)的1/2或1/3,每門實(shí)踐課都單獨(dú)安排了實(shí)踐課老師,指導(dǎo)學(xué)生更好地進(jìn)行實(shí)踐。在實(shí)踐課設(shè)計(jì)中,我們既重視學(xué)生理論知識(shí)的鞏固,又注重其解決實(shí)際問(wèn)題能力的培養(yǎng),因此,我們把實(shí)驗(yàn)自下而上分為知識(shí)層、應(yīng)用層和綜合層3個(gè)層次。
知識(shí)層注重對(duì)知識(shí)的理解和掌握,數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫(kù)原理和Java程序設(shè)計(jì)等理論課增設(shè)了相應(yīng)的課程設(shè)計(jì),課程設(shè)計(jì)的主要內(nèi)容是:按軟件企業(yè)先進(jìn)的項(xiàng)目管理和開發(fā)模式,以“項(xiàng)目驅(qū)動(dòng)”進(jìn)行軟件系統(tǒng)開發(fā)的實(shí)訓(xùn)。應(yīng)用層重點(diǎn)在于鞏固與應(yīng)用,學(xué)生在校期間參加課外興趣小組或在畢業(yè)論文設(shè)計(jì)中,大部分學(xué)生都能使用VC++做系統(tǒng)級(jí)深層次應(yīng)用。綜合層則關(guān)注綜合與創(chuàng)新,學(xué)校鼓勵(lì)學(xué)生參加大型的綜合性IT比賽,如ITAT、大學(xué)生挑戰(zhàn)者杯創(chuàng)業(yè)大賽等。
3.5創(chuàng)造性思維能力的強(qiáng)化
計(jì)算機(jī)程序設(shè)計(jì)能力,對(duì)計(jì)算機(jī)專業(yè)學(xué)生的知識(shí)結(jié)構(gòu)、技能的提高和智力的開發(fā)變得越來(lái)越重要,技能培養(yǎng)的重要程度決不亞于知識(shí)傳授。對(duì)程序設(shè)計(jì)能力的提高來(lái)講,編程序不難,編好程序不易。質(zhì)的飛躍來(lái)自量的積累、艱苦的磨煉,所以良好的專業(yè)技能和創(chuàng)造性思維培養(yǎng)的關(guān)鍵在于實(shí)踐。程序設(shè)計(jì)是高強(qiáng)度的腦力勞動(dòng),是創(chuàng)造性的藝術(shù),只有提高了科學(xué)思維,學(xué)會(huì)了程序設(shè)計(jì)的真本領(lǐng),才會(huì)將知識(shí)與技術(shù)變成能力,應(yīng)用自如。
3.5.1案例驅(qū)動(dòng)教學(xué):興趣引導(dǎo)
針對(duì)獨(dú)立學(xué)院學(xué)生思維靈活但學(xué)習(xí)自覺(jué)性較差的特點(diǎn),我們采用案例教學(xué)法,避免了傳統(tǒng)填鴨式教學(xué)方法的呆板,通過(guò)實(shí)例演示,讓學(xué)生對(duì)所學(xué)知識(shí)產(chǎn)生興趣,有了一定的感性認(rèn)識(shí)之后,再提升到理論高度,循序漸進(jìn)地掌握知識(shí)。經(jīng)過(guò)多次教學(xué)的探索,總結(jié)出重點(diǎn)講授解題思路、算法設(shè)計(jì)及編程構(gòu)思,突出上機(jī)訓(xùn)練,在編寫程序過(guò)程中讓學(xué)生自己進(jìn)行探索性的學(xué)習(xí),程序設(shè)計(jì)中的成果能極大地增加學(xué)生的成就感、培養(yǎng)學(xué)生程序設(shè)計(jì)的興趣,并達(dá)到更加牢靠地鞏固理論知識(shí)的目的。好的程序設(shè)計(jì)案例所采用的程序設(shè)計(jì)方法教會(huì)學(xué)生用適當(dāng)?shù)恼Z(yǔ)言清晰地表達(dá)其思考過(guò)程。
3.5.2指導(dǎo)―大運(yùn)動(dòng)量實(shí)踐―反饋訓(xùn)練:加強(qiáng)創(chuàng)造性思維培養(yǎng)
數(shù)據(jù)結(jié)構(gòu)[2]的學(xué)習(xí)過(guò)程,是進(jìn)行復(fù)雜程序設(shè)計(jì)的訓(xùn)練過(guò)程。技能培養(yǎng)的重要程度不亞于知識(shí)傳授。難點(diǎn)在于讓學(xué)生理解,習(xí)慣算法構(gòu)造思維方法。針對(duì)數(shù)據(jù)結(jié)構(gòu)技術(shù)性與綜合性較突出的特點(diǎn),我們提出并實(shí)施了“指導(dǎo)―大運(yùn)動(dòng)量實(shí)踐―反饋訓(xùn)練”教學(xué)法。通過(guò)作業(yè)練習(xí)、課程實(shí)習(xí)、課程設(shè)計(jì)3個(gè)環(huán)節(jié)實(shí)現(xiàn)實(shí)踐過(guò)程,前者偏重于對(duì)課程內(nèi)容的理解,后者側(cè)重于軟件設(shè)計(jì)綜合訓(xùn)練,促進(jìn)了專業(yè)學(xué)生邏輯抽象能力和創(chuàng)新能力的培養(yǎng)。
3.5.3項(xiàng)目訓(xùn)練:提高應(yīng)用能力
通過(guò)“項(xiàng)目訓(xùn)練”[3]方法,我們提出課程設(shè)計(jì)規(guī)范要求,突出關(guān)鍵技術(shù)要點(diǎn),貫穿基本技能訓(xùn)練主線,精心設(shè)計(jì)綜合性實(shí)驗(yàn),體現(xiàn)加強(qiáng)實(shí)踐能力培養(yǎng)的重要思路。數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)時(shí)進(jìn)行軟件開發(fā)綜合訓(xùn)練的第一門課,通過(guò)選用具有一定實(shí)用性的綜合題目,采用學(xué)生個(gè)人進(jìn)行和小組合作的方式,通過(guò)問(wèn)題分析、總體結(jié)構(gòu)設(shè)計(jì)、用戶界面設(shè)計(jì)、程序設(shè)計(jì)基本技能和技術(shù)的一系列過(guò)程,培養(yǎng)學(xué)生動(dòng)手實(shí)踐、合作研究、協(xié)作開發(fā)大型軟件項(xiàng)目的能力,培養(yǎng)學(xué)生采用軟件工程正規(guī)方法進(jìn)行設(shè)計(jì)與實(shí)現(xiàn),為專業(yè)技能訓(xùn)練奠定了基礎(chǔ)。“項(xiàng)目訓(xùn)練”方式將學(xué)生引入具體的項(xiàng)目研發(fā),使學(xué)生有更多的主動(dòng)學(xué)習(xí)機(jī)會(huì),培養(yǎng)了科研能力。
3.5.4提高學(xué)生的興趣與創(chuàng)新能力
競(jìng)賽等多種活動(dòng)為學(xué)生提供了展現(xiàn)程序設(shè)計(jì)能力的舞臺(tái),激發(fā)了學(xué)生學(xué)習(xí)的主動(dòng)性。我們已連續(xù)3年開展全?!半娔X文化節(jié)”、“網(wǎng)頁(yè)設(shè)計(jì)大賽”、“Flash競(jìng)賽”、“計(jì)算機(jī)知識(shí)競(jìng)賽”;學(xué)生參加省級(jí)、國(guó)家級(jí)數(shù)學(xué)建模比賽,6人次獲國(guó)家級(jí)獎(jiǎng)勵(lì),20人次獲得省級(jí)獎(jiǎng)勵(lì);學(xué)生在程序設(shè)計(jì)大賽中取得優(yōu)異成績(jī),獲得多項(xiàng)獎(jiǎng)勵(lì),3人次獲ITAT國(guó)家級(jí)獎(jiǎng),多人次獲省大學(xué)生挑戰(zhàn)杯一等獎(jiǎng)。
4結(jié)語(yǔ)
計(jì)算機(jī)課程改革勢(shì)在必行,特別是對(duì)于獨(dú)立學(xué)院來(lái)說(shuō),更是迫在眉睫。改革的成功與否將直接關(guān)系到學(xué)生以后的就業(yè)。在進(jìn)行計(jì)算機(jī)課程改革的基礎(chǔ)上,我們針對(duì)軟件人才的培養(yǎng),提出程序設(shè)計(jì)教學(xué)的新模式和以設(shè)計(jì)為中心的能力培養(yǎng)新方法。作為一種有益的嘗試,新的課程體系通過(guò)一種有趣的、面目可親的方式向?qū)W生說(shuō)明了創(chuàng)造性思維能力在程序設(shè)計(jì)中起到的重要作用。
參考文獻(xiàn):
[1] 翟玉慶,鄧建明. 計(jì)算機(jī)科學(xué)研究型人才培養(yǎng)模式的探討與實(shí)踐[J]. 計(jì)算機(jī)教育,2005(1):31-33.
[2] 耿國(guó)華. 數(shù)據(jù)結(jié)構(gòu)[M]. 北京:高等教育出版社,2007.
[3] 王志英,寧洪,戴葵. 強(qiáng)化計(jì)算機(jī)專業(yè)實(shí)踐教學(xué)[C]//第七屆全國(guó)計(jì)算機(jī)系系主任論壇論文集. 北京:高等教育出版社, 2004:37.
Reform of Computer Courses and Training of Software Personnel in Independent Colleges
LIU Ya, TAN Qian-mao, ZHOU Li
(Computer Science and Engineering Department, Jinjiang College, Sichuan University, Pengshan 620860, China)
>> 技工學(xué)校計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)的研究 技工學(xué)校計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)的思考 技工學(xué)校VB程序設(shè)計(jì)課程教學(xué)方法淺析 技工學(xué)校計(jì)算機(jī)基礎(chǔ)教學(xué)探討 談技工學(xué)校計(jì)算機(jī)教學(xué) 技工學(xué)校工程制圖與計(jì)算機(jī)輔助設(shè)計(jì)課程教學(xué)構(gòu)想與設(shè)計(jì) 技工學(xué)校《計(jì)算機(jī)應(yīng)用》課程教學(xué)的探索 技工學(xué)校計(jì)算機(jī)應(yīng)用基礎(chǔ)課程教學(xué)淺議 淺析技工學(xué)校計(jì)算機(jī)應(yīng)用課程教學(xué)改革 略談技工學(xué)校計(jì)算機(jī)應(yīng)用基礎(chǔ)課程教學(xué) 技工學(xué)?!队?jì)算機(jī)應(yīng)用基礎(chǔ)》課程教學(xué)特點(diǎn)及講授策略 民辦技工學(xué)?!队?jì)算機(jī)應(yīng)用基礎(chǔ)》課程教學(xué)的研究與探索 淺議技工學(xué)校計(jì)算機(jī)基礎(chǔ)課程教學(xué)質(zhì)量的提高 淺談機(jī)械類技工學(xué)校的《計(jì)算機(jī)基礎(chǔ)》課程教學(xué) 淺議技工學(xué)校計(jì)算機(jī)應(yīng)用基礎(chǔ)課程的教學(xué) 技工學(xué)校計(jì)算機(jī)課程的創(chuàng)新教學(xué)淺析 淺談高級(jí)技工學(xué)校計(jì)算機(jī)教學(xué)課程的設(shè)置 新時(shí)期技工學(xué)校計(jì)算機(jī)高效課堂的構(gòu)建思路分析 淺談技工學(xué)校計(jì)算機(jī)應(yīng)用課程考試試卷設(shè)計(jì)的基本原則 技工學(xué)校計(jì)算機(jī)專業(yè)一體化課程的開發(fā)與設(shè)計(jì) 常見問(wèn)題解答 當(dāng)前所在位置:內(nèi)容如下:
1
2
3
4
5 function information(name,sex,height,weight,score)
6 {
7 this.name=name;
8 this.sex=sex;
9 this.height=height;
10 this.weight=weight;
11 this.score=score;
12 this.way1=function outprint1()
13 {
14 alert("姓名:"+this.name+",性別:"+this.sex+",身高:"+this.height+",體重:"+this.weight+",成績(jī):"+this.score);
15 }
16 this.way2=function outprint2()
17 {
18 document.write("
"+this.name+"
"+this.sex+"
"+this.height+"
"+this.weight+"
"+this.score);
19 }
20 }
21 var Information=new information("陳普光","男","170cm","60kg","90分");
22 Information.way1();
23 Information.way2();
24 //-->
25
26
27
程序第5行至第20行是一個(gè)對(duì)象的構(gòu)造部分,其中第7行至第11行是對(duì)象屬性部分,絕大多數(shù)學(xué)生對(duì)“對(duì)象屬性是對(duì)象所具有的性質(zhì)”經(jīng)過(guò)老師的對(duì)上例的講解能很快掌握,但對(duì)從第12行至19行的對(duì)象方法部分即“對(duì)象方法是對(duì)象可執(zhí)行的操作”絕大多數(shù)學(xué)生無(wú)法理解。面對(duì)這種局面,結(jié)合大多數(shù)學(xué)生對(duì)“函數(shù)”的理解比較好,接著深入下一層:
3.2 拿學(xué)生已經(jīng)掌握的知識(shí)和新知識(shí)進(jìn)行比照教學(xué)
根據(jù)大多數(shù)學(xué)生對(duì)“函數(shù)”的理解比較好,我將上述程序變形為程序ch_y.htm內(nèi)容如下:
1
2
3
4
5 function information(name,sex,height,weight,score)
6 {
7 this.name=name;
8 this.sex=sex;
9 this.height=height;
10 this.weight=weight;
11 this.score=score;
12 }
13 function outprint1()
14 {
15 alert("姓名:"+Information.name+",性別:"+Information.sex+",身高:"+Information.height+",體重:"+Information.weight+",成績(jī):"+Information.score);
16 }
17 function outprint2()
18 {
19 document.write("
"+Information.name+"
"+Information.sex+"
"+Information.height+"
"+Information.weight+"
"+Information.score);
20 }
21 var Information=new information("陳普光","男","170cm","60kg","90分");
22 outprint1();
23 outprint2();
24 //-->
25
26
27
我將程序ch_x.htm中封裝在對(duì)象第12行至第19行的方法,在程序ch_y.htm變形為第13行至第20行的函數(shù),由于大多數(shù)學(xué)生對(duì)“函數(shù)”理解比較好,通過(guò)對(duì)這兩個(gè)程序的對(duì)照講解,特別對(duì)兩者不同用“加粗”重點(diǎn)講解,使絕大部分學(xué)生最終理解了“對(duì)象方法”。
為了鞏固教學(xué)效果,進(jìn)入最后一個(gè)環(huán)節(jié):
3.3 布置課堂實(shí)操作業(yè),讓學(xué)生自己動(dòng)手舉一反三
著名的美國(guó)新行為主義心理學(xué)家斯金納提出“強(qiáng)化理論”,指出人類學(xué)習(xí)必須經(jīng)歷強(qiáng)化,特別要遵循“及時(shí)強(qiáng)化原則”,因此布置課堂實(shí)操作業(yè)如下:①根據(jù)自己的個(gè)人信息用“函數(shù)”設(shè)計(jì)一個(gè)類似ch_y.htm的程序②根據(jù)自己的個(gè)人信息用“對(duì)象”設(shè)計(jì)一個(gè)類似ch_x.htm的程序
通過(guò)以上分三層次剖析教學(xué),全班25名學(xué)生有20名順利完成了課堂作業(yè),達(dá)到了較理想的教學(xué)效果。
4 結(jié)束語(yǔ)
從事技工教育多年,總結(jié)技工學(xué)校計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)思路如下:一是素材要貼近學(xué)生的日常生活,二是講解要拿學(xué)生已經(jīng)掌握的知識(shí)和新知識(shí)進(jìn)行比照教學(xué),三是讓學(xué)生自己動(dòng)手舉一反三,達(dá)到鞏固教學(xué)成果的目標(biāo)。
參考文獻(xiàn):
[1]吳以欣,陳小寧.動(dòng)態(tài)網(wǎng)頁(yè)設(shè)計(jì)與制作:CSS+JavaScript[M].人民郵電出版社,2009,8.
[2]段智毅.Visual C++程序設(shè)計(jì)教程[M].人民郵電出版社,2009,5.
級(jí)別:北大期刊
榮譽(yù):Caj-cd規(guī)范獲獎(jiǎng)期刊
級(jí)別:省級(jí)期刊
榮譽(yù):中國(guó)期刊全文數(shù)據(jù)庫(kù)(CJFD)
級(jí)別:北大期刊
榮譽(yù):中國(guó)優(yōu)秀期刊遴選數(shù)據(jù)庫(kù)
級(jí)別:省級(jí)期刊
榮譽(yù):中國(guó)優(yōu)秀期刊遴選數(shù)據(jù)庫(kù)
級(jí)別:統(tǒng)計(jì)源期刊
榮譽(yù):中國(guó)優(yōu)秀期刊遴選數(shù)據(jù)庫(kù)