蘭州交通大學(xué) 王紅鷹
我國(guó)信息科學(xué)的不斷發(fā)展,計(jì)算機(jī)應(yīng)用到社會(huì)和生活的各個(gè)方面,提升了社會(huì)發(fā)展的速度,成為人們通過(guò)網(wǎng)絡(luò)進(jìn)行溝通和交流的有效手段,同時(shí)掌握一定的計(jì)算機(jī)知識(shí)和技能已經(jīng)成為當(dāng)時(shí)人們找工作和勝任工作的必備條件,因此,計(jì)算機(jī)課程在我國(guó)各大高校中也占據(jù)了非常重要的地位,程序設(shè)計(jì)作為計(jì)算機(jī)基礎(chǔ)教學(xué)的必要內(nèi)容,能夠?qū)W(xué)生的實(shí)踐能力和創(chuàng)造性思維能力進(jìn)行培養(yǎng),并且通過(guò)計(jì)算思維能力的學(xué)習(xí)能夠?yàn)閷W(xué)生其他學(xué)科的學(xué)習(xí)奠定良好的基礎(chǔ)。但是在當(dāng)前的計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)教學(xué)中存在一些問(wèn)題,包括教學(xué)方式單一,教學(xué)內(nèi)容老舊,使學(xué)生的學(xué)習(xí)能力和解決問(wèn)題的能力并沒(méi)有得到提高。因此,對(duì)當(dāng)前的程序設(shè)計(jì)課程進(jìn)行改革是非常必要的。
現(xiàn)代社會(huì)需要高素質(zhì)人才,需要他們具有強(qiáng)烈的創(chuàng)新意識(shí)和極強(qiáng)的動(dòng)手實(shí)踐能力,學(xué)生們?cè)诖髮W(xué)校園中主要學(xué)習(xí)理論基礎(chǔ)知識(shí)和一些指導(dǎo)實(shí)踐的技能,在目前這個(gè)創(chuàng)新型社會(huì)背景下,我們更需要關(guān)心實(shí)際生產(chǎn)生活中需要什么樣的技能型人才,需要何種創(chuàng)新型人才,根據(jù)社會(huì)的需要培養(yǎng)優(yōu)秀人才,這就需要我們培養(yǎng)學(xué)生的得學(xué)習(xí)態(tài)度和學(xué)習(xí)方法,從以前的教學(xué)生學(xué)什么到培養(yǎng)學(xué)生如何去學(xué),主動(dòng)去學(xué)。進(jìn)而培訓(xùn)學(xué)生發(fā)掘問(wèn)題,思考問(wèn)題,處理問(wèn)題的能力?;谟?jì)算思維為導(dǎo)向的程序設(shè)計(jì)課程不僅要掌握相關(guān)理論知識(shí),更要有很強(qiáng)的實(shí)踐能力。類(lèi)似課程的學(xué)習(xí)與教授需要理論與實(shí)踐的結(jié)合。用理論指導(dǎo)實(shí)踐,再實(shí)踐中完善理論。可以實(shí)現(xiàn)解決問(wèn)題的全過(guò)程訓(xùn)練及培養(yǎng)。此程序在培養(yǎng)專(zhuān)業(yè)人才知識(shí)結(jié)構(gòu)體系方面起著至關(guān)重要的決定性地位。對(duì)于課程的指導(dǎo)從課程授予方式來(lái)講,只要學(xué)生能夠掌握基本的代碼編寫(xiě),及相關(guān)語(yǔ)法結(jié)構(gòu)以及一些簡(jiǎn)單的程序設(shè)計(jì)即可;從人才培養(yǎng)角度來(lái)講,不僅要求學(xué)生學(xué)會(huì)掌握編寫(xiě)程序,還要能夠使用程序、分析程序、評(píng)價(jià)程序、掌握保障程序運(yùn)行的基本結(jié)果和流程,進(jìn)而能夠優(yōu)化程序,提高程序運(yùn)行的能力;從程序設(shè)計(jì)角度來(lái)看,要求學(xué)生們能夠根據(jù)所學(xué)的知識(shí),對(duì)遇到的實(shí)際問(wèn)題對(duì)問(wèn)題進(jìn)行算法描述和具體分析,進(jìn)而結(jié)合問(wèn)題分析流程,對(duì)程序進(jìn)行系統(tǒng)的分析和優(yōu)化;從計(jì)算思維培養(yǎng)角度來(lái)看,程序設(shè)計(jì)是解決問(wèn)題的利器,而計(jì)算思維是發(fā)現(xiàn)問(wèn)題表述問(wèn)題解決問(wèn)題的基本。再進(jìn)行程序設(shè)計(jì)之初,首先要選好相應(yīng)工具,也就是說(shuō)選取哪門(mén)程序語(yǔ)言來(lái)處理此問(wèn)題,例如C語(yǔ)言和JAVA語(yǔ)言,當(dāng)然也可以選擇其他相應(yīng)的程序語(yǔ)言為工具。在一般的程序設(shè)計(jì)教學(xué)過(guò)程中,首先根據(jù)培養(yǎng)目標(biāo),設(shè)定一個(gè)完整的知識(shí)體系,然后根據(jù)相應(yīng)體系確立重點(diǎn)教學(xué)內(nèi)容和教學(xué)點(diǎn),之后再根據(jù)教學(xué)體系中的重點(diǎn)和教學(xué)方法確立驗(yàn)收標(biāo)準(zhǔn)及考核辦法。當(dāng)然需要授課老師編排明確的授課計(jì)劃,授課內(nèi)容,授課方式。將程序計(jì)算的重點(diǎn)分解到每一個(gè)課時(shí),最終培養(yǎng)學(xué)生獨(dú)立學(xué)習(xí)、獨(dú)立思考、獨(dú)立處理問(wèn)題的能力。
程序設(shè)計(jì)基礎(chǔ)教學(xué)中對(duì)學(xué)生計(jì)算思維的培養(yǎng)是非常重要的,在計(jì)算機(jī)程序教學(xué)中應(yīng)將計(jì)算思維貫穿到整個(gè)教學(xué)實(shí)踐過(guò)程中,并將這種思維方式作為計(jì)算機(jī)人才培養(yǎng)的重點(diǎn)。在計(jì)算機(jī)專(zhuān)業(yè)課程教學(xué)中,一些程序設(shè)計(jì)課程是必修科目,在這些程序設(shè)計(jì)過(guò)程中就體現(xiàn)了計(jì)算思維,例如對(duì)問(wèn)題的分析和數(shù)據(jù)變量以及算法機(jī)構(gòu)和程序代碼的編寫(xiě)等。因此,在實(shí)際教學(xué)過(guò)程中應(yīng)制定出能夠培養(yǎng)學(xué)生計(jì)算思維能力的教學(xué)體系,并依照制定的教學(xué)體系對(duì)程序設(shè)計(jì)知識(shí)進(jìn)行系統(tǒng)的塑造,并根據(jù)實(shí)際案例的分析,讓學(xué)生逐步的掌握解決問(wèn)題的方法,形成計(jì)算思維能力。
例如,首先在向?qū)W生講解具體的算法過(guò)程中。程序設(shè)計(jì)基礎(chǔ)實(shí)踐教學(xué)中對(duì)算法的講解首先應(yīng)該結(jié)合實(shí)際生活中的例子,針對(duì)解決實(shí)際問(wèn)題為主,將生活中存在的問(wèn)題進(jìn)行列舉,并通過(guò)科學(xué)合理的計(jì)算和比較,從而選擇合適的解決方式,這就需要引入算法的概念和特征。例如我們需要到一個(gè)地方去旅游,那么針對(duì)生活中的這一問(wèn)題,需要考慮的首先是從出發(fā)地到目的地的線路問(wèn)題,其次,要考慮到天氣情況,最后選擇合適的交通工具,在這三方面因素進(jìn)行考慮過(guò)程中,可以發(fā)現(xiàn)其具有一定的制約因素,因素分析的過(guò)程能夠體現(xiàn)出計(jì)算思維的思想。
另外,在控制結(jié)構(gòu)的講解中,程序設(shè)計(jì)中控制結(jié)構(gòu)可以分為順序結(jié)構(gòu)和選擇結(jié)構(gòu)以及循環(huán)結(jié)構(gòu),在講解順序結(jié)構(gòu)時(shí)可以通過(guò)輸入輸出和賦值語(yǔ)句來(lái)進(jìn)行講解,并通過(guò)輸入輸出一些有意思的字符信息來(lái)提高學(xué)習(xí)趣味性,而在講解選擇結(jié)構(gòu)時(shí),可以引入一些具體的案例,比如以邏輯思維中的探案推導(dǎo)為例,通過(guò)案例的吸引力來(lái)引導(dǎo)學(xué)生掌握基本方法,避免枯燥的語(yǔ)法學(xué)習(xí),而且可以進(jìn)一步將生活中的實(shí)際問(wèn)題延展進(jìn)入循環(huán)結(jié)構(gòu),即能加強(qiáng)學(xué)習(xí)的連續(xù)性,還能環(huán)環(huán)相扣提高學(xué)生的思維能力。
當(dāng)然計(jì)算思維能力的培養(yǎng)是一個(gè)潛移默化的過(guò)程,需要在長(zhǎng)期、系統(tǒng)地學(xué)習(xí)中積累而成。
學(xué)生課前階段的知識(shí)點(diǎn)和技能點(diǎn)上具有一致性,并在對(duì)學(xué)生學(xué)習(xí)能力提升上就要一定的延伸和拓展作用,學(xué)生是課堂教學(xué)實(shí)踐的主體,教師需要訓(xùn)練其能夠自主進(jìn)行程序設(shè)計(jì)和拓展的能力。程序設(shè)計(jì)基礎(chǔ)課程在教師的課堂教學(xué)中,其基本的教學(xué)辦法有以下兩種:一是通過(guò)全面的講解,以輸入/出語(yǔ)句、常量、變量、運(yùn)算符、順序/選擇/循環(huán)結(jié)構(gòu)、賦值語(yǔ)句、函數(shù)等為主線進(jìn)而周祥的論述程序設(shè)計(jì)的基本方法和作用;二是項(xiàng)目化教學(xué)法,首先將各種理論概念以及軟件的使用應(yīng)用到現(xiàn)實(shí)項(xiàng)目中去,根據(jù)實(shí)戰(zhàn)去構(gòu)建計(jì)算思維能力,進(jìn)而對(duì)程序設(shè)計(jì)有更深入的理解并最終指導(dǎo)實(shí)踐應(yīng)用到實(shí)踐中去。再不斷的授課實(shí)踐中,通過(guò)不斷總結(jié),發(fā)現(xiàn)項(xiàng)目化教學(xué)能更好的更快的使學(xué)生產(chǎn)生學(xué)習(xí)興趣,更好的理解相關(guān)理論,更容易在實(shí)踐中舉一反三。根據(jù)學(xué)生的自身特點(diǎn),結(jié)合現(xiàn)階段的實(shí)際授課情況,將相應(yīng)程序計(jì)算法進(jìn)行整理,使其標(biāo)準(zhǔn)化、序列化、最大限度實(shí)現(xiàn)理論、技術(shù)、能力和計(jì)算思維相融合,最終目的是解決現(xiàn)實(shí)工作中遇到的實(shí)際問(wèn)題。項(xiàng)目授課方式一般分為以下幾個(gè)步驟:任務(wù)申領(lǐng)——相關(guān)理論——實(shí)施任務(wù)。但在具體教學(xué)中,理論知識(shí)的學(xué)習(xí)占用了絕大部分時(shí)間,而實(shí)踐內(nèi)容相對(duì)較少,這就導(dǎo)致了學(xué)生的討論機(jī)會(huì)比較少,更不能很好的進(jìn)行獨(dú)立分析,更多的是按照既定模式、或者教師的思維去執(zhí)行、設(shè)計(jì)。通過(guò)綜合考慮之后,提出了翻轉(zhuǎn)課堂與項(xiàng)目教學(xué)模式相結(jié)合的方式,以Robert Talbert模型為基礎(chǔ),建立起翻轉(zhuǎn)課堂的教學(xué)模式。此種教學(xué)方式需要通過(guò)課前階段和課中階段兩個(gè)階段對(duì)程序設(shè)計(jì)所涉及的知識(shí)進(jìn)行鞏固和學(xué)習(xí)。實(shí)際教學(xué)中以一個(gè)完整的教學(xué)項(xiàng)目為單位來(lái)講述程序設(shè)計(jì)課程,涵蓋教學(xué)從提出到具體實(shí)施的整個(gè)過(guò)程,包括教學(xué)環(huán)節(jié)的設(shè)置。在實(shí)際教學(xué)過(guò)程中,首先課前教師需要為學(xué)生提供自主預(yù)習(xí)的時(shí)間,學(xué)生通過(guò)觀看相關(guān)視頻和進(jìn)行有針對(duì)性的課前練習(xí)來(lái)完成課前階段的學(xué)習(xí)任務(wù);繼而在課堂上教師需要根據(jù)學(xué)生的實(shí)際學(xué)習(xí)情況,設(shè)計(jì)出新的教學(xué)項(xiàng)目,新教學(xué)項(xiàng)目的設(shè)計(jì)需要能起到一定的監(jiān)督和指導(dǎo)作用,可以給予學(xué)生更多的動(dòng)手實(shí)踐和思考的空間。教師在課堂上重點(diǎn)扮演是教練的角色,一是對(duì)學(xué)生進(jìn)行自主練習(xí)過(guò)程中遇到的問(wèn)題進(jìn)行及時(shí)的解決,并給學(xué)生提供正確的思考方向,引導(dǎo)學(xué)生進(jìn)行討論和思考,二是對(duì)課堂教學(xué)的內(nèi)容進(jìn)行總結(jié)和梳理,讓學(xué)生對(duì)程序設(shè)計(jì)所涉及的內(nèi)容和知識(shí)進(jìn)行有效的貫穿,做到詳略得當(dāng)。
總體來(lái)說(shuō),首先教師要引導(dǎo)培養(yǎng)學(xué)生自主學(xué)習(xí)能力,只有具備了自主學(xué)習(xí)能力,才能學(xué)習(xí)和掌握到更豐富、充實(shí)的知識(shí),從而構(gòu)建完整的知識(shí)體系。在完整的計(jì)算機(jī)科學(xué)知識(shí)體系基礎(chǔ)上,從全局高度理解計(jì)算機(jī)科學(xué)的精髓,更有利于計(jì)算思維能力的形成。其次在教學(xué)過(guò)程中要將基本技能的掌握和計(jì)算思維能力的培養(yǎng)有機(jī)地結(jié)合起來(lái),有意識(shí)地將計(jì)算思維融入基本技能的訓(xùn)練中,突出計(jì)算機(jī)科學(xué)基本概念、方法及思想的理解,將一般規(guī)則傳授給學(xué)生,啟發(fā)學(xué)生思考,引導(dǎo)學(xué)生探索,逐步培養(yǎng)計(jì)算思維能力,讓學(xué)生能更容易地去解決實(shí)際應(yīng)用中的復(fù)雜問(wèn)題。
現(xiàn)以FORTRAN程序設(shè)計(jì)教學(xué)為例,對(duì)實(shí)際課堂教學(xué)效果進(jìn)行評(píng)價(jià)。主要對(duì)以下兩方面進(jìn)行評(píng)價(jià),一是FORTRAN程序設(shè)計(jì)的實(shí)際學(xué)習(xí)效率和學(xué)習(xí)的效果,二是學(xué)習(xí)完成后,對(duì)學(xué)生編程能力和分析解決問(wèn)題能力是否具有一定的推動(dòng)作用。教學(xué)評(píng)價(jià)可以分為兩個(gè)階段,第一階段,在程序設(shè)計(jì)基礎(chǔ)模塊教學(xué)完成之后,通過(guò)布置的學(xué)生作業(yè)和考核,來(lái)考察學(xué)生基礎(chǔ)知識(shí)掌握情況。另外,通過(guò)布置課程設(shè)計(jì)作業(yè),要求學(xué)生可以根據(jù)自身的興趣和愛(ài)好來(lái)自由的選擇題目,應(yīng)用FORTRAN語(yǔ)言編寫(xiě)算法程序,通過(guò)學(xué)生的實(shí)際解答情況對(duì)編程能力進(jìn)行考察,第二階段,程序課程設(shè)計(jì)結(jié)束之后,教師可以自制問(wèn)卷調(diào)查,通過(guò)學(xué)生的主觀意識(shí)來(lái)考察整個(gè)的學(xué)習(xí)過(guò)程對(duì)學(xué)生計(jì)算思維能力培養(yǎng)所產(chǎn)生的實(shí)際效果。根據(jù)當(dāng)前計(jì)算機(jī)應(yīng)用程序設(shè)計(jì)實(shí)踐教學(xué)課程的改革,對(duì)本校開(kāi)設(shè)FORTRAN程序設(shè)計(jì)課程的學(xué)生進(jìn)行考核和作業(yè)情況的調(diào)查,大體上可以分為兩種類(lèi)型,基本技能型和能力拓展型,基本技能型的程序設(shè)計(jì)中包括了對(duì)三種基本結(jié)構(gòu)的應(yīng)用的計(jì)算程序,例如窮舉法應(yīng)用的計(jì)算程序,個(gè)人所得稅計(jì)算程序,排序的程序等;能力拓展型主要包括常用的工程數(shù)值計(jì)算程序,學(xué)生成績(jī)信息管理系統(tǒng)等,能力拓展型的程序設(shè)計(jì)綜合性都較強(qiáng)。從學(xué)生完成的總體情況上來(lái)看,具有較高的完成效率,并且質(zhì)量較好,這可以說(shuō)明通過(guò)計(jì)算思維的引導(dǎo),對(duì)程序設(shè)計(jì)基礎(chǔ)實(shí)踐教學(xué)課程的改革具有一定的效果,使學(xué)生的計(jì)算思維能力得到了很大的提高,在未來(lái)程序設(shè)計(jì)課程教學(xué)實(shí)踐中應(yīng)不斷的將教學(xué)的方式和思維方式進(jìn)行創(chuàng)新,這樣才能使計(jì)算機(jī)教學(xué)方式和教學(xué)理念與時(shí)俱進(jìn)的發(fā)展。
程序設(shè)計(jì)基礎(chǔ)實(shí)踐教學(xué)與計(jì)算思維進(jìn)行有效的結(jié)合,能夠促進(jìn)學(xué)生程序設(shè)計(jì)能力的提升,同時(shí)在實(shí)際教學(xué)中應(yīng)改變傳統(tǒng)的教學(xué)方式,將整個(gè)教學(xué)過(guò)程始終貫穿抽象和自動(dòng)化兩種核心思想,另外,還要在實(shí)際授課中將程序設(shè)計(jì)的具體知識(shí)引入計(jì)算思維方式。傳統(tǒng)教學(xué)方式主要是通過(guò)對(duì)程序中涉及的語(yǔ)法結(jié)構(gòu)進(jìn)行講解,然后講解實(shí)際例子,最后教師做總結(jié)并布置作業(yè),從計(jì)算思維培養(yǎng)的角度出發(fā),教學(xué)內(nèi)容應(yīng)從問(wèn)題導(dǎo)入和語(yǔ)法引用以及面向?qū)嵺`等方式,突出知識(shí)點(diǎn)和程序中涉及技術(shù)點(diǎn)的關(guān)聯(lián)性,并注重課堂教學(xué)內(nèi)容的層次性。程序設(shè)計(jì)中以循環(huán)結(jié)構(gòu)為例,教學(xué)可以分為以下步驟:首先,結(jié)合學(xué)生的日常生活,為學(xué)生展示當(dāng)前程序設(shè)計(jì)的學(xué)習(xí)已經(jīng)深入到我們實(shí)際生活中,并對(duì)未來(lái)的就業(yè)具有重要的影響,這樣會(huì)讓學(xué)生對(duì)課程的學(xué)習(xí)給與足夠的重視。第二步,利用抽象方法,對(duì)循環(huán)結(jié)構(gòu)中的基本結(jié)構(gòu)先進(jìn)行提煉,比如引導(dǎo)學(xué)生利用等比數(shù)列,把等比數(shù)列的前n項(xiàng)進(jìn)行求和的算術(shù)問(wèn)題轉(zhuǎn)化成相應(yīng)的循環(huán)結(jié)構(gòu),這樣就在無(wú)形中將數(shù)學(xué)思想灌輸?shù)綄W(xué)生的知識(shí)學(xué)習(xí)中,第三步,給學(xué)生提供實(shí)踐的機(jī)會(huì),例如可以讓學(xué)生由簡(jiǎn)入難,逐層探求解決實(shí)際案例,鼓勵(lì)學(xué)生進(jìn)行積極的思考和討論,從計(jì)算角度分析,引入計(jì)算思維的簡(jiǎn)約和嵌入以及轉(zhuǎn)化等方法,將復(fù)雜的程序問(wèn)題進(jìn)行轉(zhuǎn)化和分解,提出有效的解決方式。第四步,進(jìn)一步拓展,需要引入多層循環(huán)嵌套結(jié)構(gòu),并對(duì)基本結(jié)構(gòu)和多層循環(huán)結(jié)構(gòu)的差異性和適用的范圍進(jìn)行分析和研究。
基于計(jì)算思維為導(dǎo)向的程序設(shè)計(jì)課程是當(dāng)前教學(xué)改革關(guān)注的熱點(diǎn),在非計(jì)算機(jī)專(zhuān)業(yè)課程中僅僅通過(guò)單一課程的學(xué)習(xí)來(lái)提高計(jì)算思維是不符合學(xué)生學(xué)習(xí)和教學(xué)實(shí)際的,高校在培養(yǎng)學(xué)生時(shí)應(yīng)將計(jì)算思維貫穿到人才培養(yǎng)的始終,培養(yǎng)出復(fù)合型的創(chuàng)新人才,并讓學(xué)生在學(xué)習(xí)和工作中都具有運(yùn)用計(jì)算機(jī)科學(xué)概念對(duì)實(shí)際生活中的問(wèn)題進(jìn)行解答的能力;對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行設(shè)計(jì)和問(wèn)題解答,使學(xué)生樹(shù)立計(jì)算思維方式,通過(guò)計(jì)算機(jī)程序設(shè)計(jì)實(shí)踐教學(xué)改革能夠提高學(xué)生對(duì)程序設(shè)計(jì)學(xué)習(xí)的興趣,同時(shí)能夠提高學(xué)生利用計(jì)算機(jī)分析和解決實(shí)際問(wèn)題的能力。
[1]張敏.以計(jì)算思維為導(dǎo)向的C語(yǔ)言程序設(shè)計(jì)課程案例教學(xué)法研究[J].微型電腦應(yīng)用,2015,31(9):63-65.
[2]呂紅,呂海燕,周立軍,等.基于MOOC的以計(jì)算思維為導(dǎo)向的大學(xué)計(jì)算機(jī)實(shí)驗(yàn)教學(xué)改革研究[J].自動(dòng)化技術(shù)與應(yīng)用 2016,35(12):37-42.
[3]張陽(yáng),李雄偉,盧宏鋒,等.基于計(jì)算思維的計(jì)算機(jī)基礎(chǔ)教學(xué)改革與實(shí)踐[J]. 北京郵電大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版),2015,17(2):113-118.
[4]劉道文.高校非計(jì)算機(jī)專(zhuān)業(yè)計(jì)算思維能力培養(yǎng)策略研究與實(shí)踐[J].計(jì)算機(jī)教育,2013,13(1):39-43.
[5]郭福亮,崔良中,李永杰,等.基于計(jì)算思維能力培養(yǎng)的計(jì)算機(jī)基礎(chǔ)教學(xué)改革探索[J].計(jì)算機(jī)工程與科學(xué),2014,36(s2):162-164.
[6]于寧,崔武子,蔡春,等.突出計(jì)算思維訓(xùn)練的VB程序設(shè)計(jì)實(shí)驗(yàn)教學(xué)[J].實(shí)驗(yàn)技術(shù)與管理,2016,33(9):182-185.
[7]何明,陳衛(wèi)衛(wèi),陳希亮,等.基于計(jì)算思維的大學(xué)計(jì)算機(jī)基礎(chǔ)課程改革方法探析[J].計(jì)算機(jī)工程與科學(xué),2014,36(a01):96-99.