国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多課程交叉的程序設(shè)計教學(xué)改革

2017-02-27 01:22
計算機教育 2017年2期
關(guān)鍵詞:郵電大學(xué)程序設(shè)計交叉

馮 瀟

(重慶郵電大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,重慶 400065)

基于多課程交叉的程序設(shè)計教學(xué)改革

馮 瀟

(重慶郵電大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,重慶 400065)

提出利用多課程交叉實現(xiàn)程序設(shè)計類課程的教學(xué)改革,探討課程的教學(xué)內(nèi)容、課堂教學(xué)方法改革和配套教材建設(shè)情況,說明多課程交叉改革取得的效果和下一步改革方向。

多課程交叉;整潔代碼;知識發(fā)現(xiàn);活代碼

1 背 景

2003年,根據(jù)華為、中興、上海貝爾等國內(nèi)多家知名IT企業(yè)的內(nèi)部培訓(xùn)資料整理出版的《高質(zhì)量編程指南C++/C語言》指出:“國內(nèi)大學(xué)的計算機教育壓根就沒有灌輸高質(zhì)量程序設(shè)計的概念”“在企業(yè)內(nèi)部測試過近百名新老程序員的編程技能,質(zhì)量合格率大約是10%”“高質(zhì)量程序設(shè)計非常重要”[1]。

2010年,軟件工程領(lǐng)域的領(lǐng)袖Robert C. Martin,根據(jù)多年軟件開發(fā)和管理經(jīng)驗出版了《Clean Code》,站在軟件學(xué)科建設(shè)和軟件行業(yè)發(fā)展的高度,提出代碼整潔度直接影響軟件的生命力。Robert C. Martin進一步指出,應(yīng)將書寫整潔代碼的相關(guān)方法、技巧視為基本的程序設(shè)計能力。該書中文版譯者韓磊更是明確指出:“代碼整潔性的缺乏是職業(yè)素養(yǎng)和基本功的雙重缺陷?!盵2]可見,企業(yè)更需要知識、能力和素質(zhì)兼具的人才。

教育部高等學(xué)校計算機科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會(2006—2010)制定了《計算機科學(xué)與技術(shù)專業(yè)發(fā)展戰(zhàn)略、規(guī)范及認(rèn)證》,指出:“高等學(xué)校計算機類相關(guān)課程在滿足社會需要方面的針對性不夠強,課程內(nèi)容和課程模式必須進行大力度的改革?!?/p>

2006年,教育部高等學(xué)校計算機科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會發(fā)布了《關(guān)于進一步加強高等學(xué)校計算機基礎(chǔ)教學(xué)的意見》(簡稱白皮書)。白皮書以目前主流的程序設(shè)計語言C、C++、VB為例,詳細(xì)羅列了程序設(shè)計語言的基本知識、語法、初步的調(diào)試能力。

必須指出的是,白皮書中的程序設(shè)計教學(xué)重點是知識和語法,屬于狹義上的“程序設(shè)計”,即軟件生命周期中的下游環(huán)節(jié)——實現(xiàn)(編碼)。廣義上講,程序設(shè)計是針對現(xiàn)實中的特定問題進行建模并最終利用計算機求解或控制。該過程可分為建模和實現(xiàn)兩部分,從軟件質(zhì)量控制的角度來講,建模和實現(xiàn)都必須遵守軟件工程的相關(guān)規(guī)范、原則、模式,也就是說,建模、實現(xiàn)和規(guī)范(原則、模式)是程序設(shè)計的三要素,是相互聯(lián)系的有機整體,如圖1所示。

由于建模、實現(xiàn)各自涉及不同的理論方法,通常將建模、實現(xiàn)和軟件工程設(shè)置為多門課程:一般在一、二學(xué)年設(shè)置以C、Pascal為代表的面向過程程序設(shè)計課程,以C++、Java為代表的面向?qū)ο蟪绦蛟O(shè)計課程;在三、四學(xué)年設(shè)置面向?qū)ο蠓治雠c建模、軟件工程、算法分析與設(shè)計等課程。

教育者必須清楚地認(rèn)識到,即使把建模、實現(xiàn)和軟件工程設(shè)置為不同的課程,也不能割斷其天然的、內(nèi)在的聯(lián)系,廣義上的程序設(shè)計其本質(zhì)特征就是“多課程交叉”?;镜某绦蛟O(shè)計能力的培養(yǎng)不僅應(yīng)包含程序設(shè)計相關(guān)知識的傳授,更應(yīng)包括軟件工程基礎(chǔ)實踐技能的培養(yǎng)、基礎(chǔ)的系統(tǒng)設(shè)計和優(yōu)化原則、模式的運用。

目前,高校的程序設(shè)計課程從課程內(nèi)容、教材建設(shè)、教學(xué)方法來講,多數(shù)都是單一的知識傳授,忽視了基于交叉課程的能力和素質(zhì)培養(yǎng)。程序設(shè)計教育應(yīng)擺脫單一的知識傳授功能,做好知識、能力、素質(zhì)的無縫銜接。

圖1 程序設(shè)計三要素

2 多課程交叉模式教學(xué)改革思路

改革的主要目標(biāo)是針對程序設(shè)計初學(xué)者改革課程內(nèi)容和教學(xué)模式,幫助學(xué)生在學(xué)習(xí)程序設(shè)計之初,就樹立高質(zhì)量編程的意識,能初步運用基本的軟件工程實踐技能、基礎(chǔ)的系統(tǒng)設(shè)計和優(yōu)化原則、模式,提高程序質(zhì)量。

圍繞改革目標(biāo),首先確立“多課程交叉”的知識范圍,將其有機組織為課程內(nèi)容。由于軟件工程和建模領(lǐng)域涉及的知識具有極強的實踐性,因此這些領(lǐng)域的知識在程序設(shè)計課程中往往以例題的形式出現(xiàn),求解時常常需要多次迭代同一個例題,引出更優(yōu)的建模方法和更好的軟件工程實踐規(guī)范。因此,“多課程交叉”模式的教材建設(shè)和課堂教學(xué)方法是改革中極為重要的一環(huán)。

從實踐角度講,程序設(shè)計能力的培養(yǎng)離不開多讀、多寫程序,因此,必須改革實踐和考核環(huán)節(jié),以動手能力和團隊協(xié)作能力為實踐環(huán)節(jié)的主要評價標(biāo)準(zhǔn),使之更面向能力的訓(xùn)練和素質(zhì)的培養(yǎng)。

3 多課程交叉模式教學(xué)改革實踐

自2011年起,在重慶郵電大學(xué)范圍內(nèi),以計算機專業(yè)的限選課程面向?qū)ο蟪绦蛟O(shè)計C++、非計算機專業(yè)的全校任選課程C++程序設(shè)計作為試點,進行了“多課程交叉”模式的教學(xué)改革實踐和探索。

3.1 “多課程交叉”模式知識板塊設(shè)計

在多次教學(xué)實踐活動中我們發(fā)現(xiàn),交叉課程里反復(fù)涉及的內(nèi)容有設(shè)計模式、敏捷軟件開發(fā)(主要是測試驅(qū)動開發(fā)、簡單設(shè)計)、整潔代碼,而程序設(shè)計的三要素中,建模主要涉及面向?qū)ο蠓治雠c建模課程,實現(xiàn)主要涉及面向?qū)ο蟪绦蛟O(shè)計課程,軟件工程不僅涉及基礎(chǔ)的實踐技能,更需引入初步的敏捷軟件開發(fā)技能,如圖2所示。

圖2 “多課程交叉”模式知識板塊設(shè)計

這里,引入整潔代碼相關(guān)規(guī)范和技能,將軟件工程和面向?qū)ο蟪绦蛟O(shè)計銜接起來,提高編碼的規(guī)范性和整潔度;引入設(shè)計模式,將軟件工程和面向?qū)ο蠼c暯悠饋恚瑥娀?xùn)練可復(fù)用面向?qū)ο蟪绦蛟O(shè)計的能力;引入敏捷軟件開發(fā)中的測試驅(qū)動開發(fā)和簡單設(shè)計,采用更符合學(xué)生思維特點的方式進行建模能力訓(xùn)練。

3.2 “多課程交叉”模式課程內(nèi)容設(shè)計

C++程序設(shè)計課程的內(nèi)容由各知識板塊和對應(yīng)實例構(gòu)成,如圖3所示。實例為知識服務(wù),通過學(xué)習(xí)知識、完成實例,學(xué)生能理解、掌握、初步運用知識。所以,可以將課程內(nèi)容視為平面結(jié)構(gòu),其主要目標(biāo)是知識的單向傳授。

圖3 以知識傳授為目標(biāo)的課程內(nèi)容設(shè)置

為了實現(xiàn)“知識、能力、素質(zhì)”的無縫銜接,課程內(nèi)容改革著眼于實例改革。具體地說:為每個知識板塊精心挑選實例,通過逐次迭代,為同一實例建立更優(yōu)的模型。模型優(yōu)化的指導(dǎo)思想是相關(guān)交叉課程——設(shè)計模式、整潔代碼、敏捷軟件開發(fā)。這種在實例基礎(chǔ)上反復(fù)迭代、優(yōu)化模型的方法,做到將知識、軟件工程基礎(chǔ)實踐技能、初步的系統(tǒng)構(gòu)建和優(yōu)化原則運用作為整體的基礎(chǔ)程序設(shè)計能力同步傳授給學(xué)生,其課程內(nèi)容是整體的、多維度的,實例是知識、能力的銜接口,如圖4所示。

目前,改革已經(jīng)連續(xù)在6個年級中貫徹,最終形成一套系統(tǒng)、完整的“多課程交叉”模式講義和教案。

3.3 “多課程交叉”模式課堂教學(xué)方法改革

由于課程改革著眼于通過在同一實例上迭代出不同的模型,并且后續(xù)模型應(yīng)優(yōu)于前面的模型,所以在課堂教學(xué)方法上應(yīng)尤其注意例題的講授方法和建模思想方法的傳授。因此,課堂教學(xué)方法擬將活代碼教學(xué)法和知識發(fā)現(xiàn)、整潔代碼教學(xué)法有機結(jié)合在一起。

這里活代碼教學(xué)法指:教學(xué)過程中將求解問題的過程以完整的、可以運行的程序進行演示的教學(xué)方法;知識發(fā)現(xiàn)教學(xué)法指:教師在講授知識的過程中,不應(yīng)將知識和其中包含的思想、方法割裂開來,而應(yīng)該同步傳授給學(xué)生,幫助學(xué)生理解問題的來龍去脈,實現(xiàn)“授人以漁”的教學(xué);整潔代碼教學(xué)法指:按照軟件工程、敏捷軟件開發(fā)、設(shè)計模式等課程的指導(dǎo)思想將高質(zhì)量、規(guī)范的編碼應(yīng)用于教學(xué)活動中。

課堂教學(xué)方法的具體改革思路:從實例建立第一個模型開始,每個模型都采用活代碼教學(xué),而模型1到模型n的多次迭代,采用知識發(fā)現(xiàn)、整潔代碼作為模型優(yōu)化的指導(dǎo)思想。整個優(yōu)化過程就是傳授軟件工程核心思想、良好設(shè)計模式的過程,有助于學(xué)生通過課堂教學(xué)中的實踐環(huán)節(jié)將知識、能力和素養(yǎng)作為一個整體進行理解和掌握,如圖5所示。

圖4 以知識、能力、素質(zhì)為目標(biāo)的課程內(nèi)容設(shè)置

圖5 課堂教學(xué)方法改革示意圖

4 改革效果

目前,基于多課程交叉的教學(xué)改革已經(jīng)在課堂教學(xué)方法、教案設(shè)計、教改立項、教材建設(shè)上取得了突出的成果:①2013年,獲得重慶郵電大學(xué)教育教學(xué)改革立項支持;②2013年,獲得重慶郵電大學(xué)規(guī)劃教材立項支持;③貫徹該改革思想的課程面向?qū)ο蟪绦蛟O(shè)計C++在2014年重慶市普通高校青年教師教學(xué)技能競賽中獲得二等獎、重慶郵電大學(xué)青年教師教學(xué)技能競賽中獲一等獎;④2013年,面向?qū)ο蟪绦蛟O(shè)計C++課程教案設(shè)計獲得重慶郵電大學(xué)優(yōu)秀教案一等獎;⑤在清華大學(xué)出版社出版教材《解析C++面向?qū)ο蟪绦蛟O(shè)計》;⑥改革獲得了學(xué)生的肯定和喜愛,課程主研的學(xué)評教連續(xù)4學(xué)期排名全校前5%。

5 結(jié) 語

將建模、模型優(yōu)化、模型實踐這3個環(huán)節(jié)有機結(jié)合在一起,同步培養(yǎng)學(xué)生的知識、能力、素養(yǎng)是軟件領(lǐng)域相關(guān)課程教學(xué)的薄弱環(huán)節(jié)。基于多課程交叉模式的程序設(shè)計類課程改革致力于改進這一現(xiàn)狀。改革的下一個重點:以C++課程為試點,建設(shè)多課程交叉模型的MOOC平臺,提供豐富的課堂教學(xué)視頻和相應(yīng)的在線互動平臺;完善課程群配套的教材改革建設(shè),精心設(shè)計出基于C、Java、C++的體現(xiàn)多課程交叉教學(xué)思想的教材;將多課程交叉模式運用到學(xué)生的第二課堂中,包括課程設(shè)計、隨堂實驗和課外科技活動,進一步檢驗、修正和完善該改革模式。

[1] 林銳, 韓永泉. 高質(zhì)量程序設(shè)計指南C++C語言(第3版修訂版)[M]. 北京: 電子工業(yè)出版社, 2012.10.

[2] Robert C M. 代碼整潔之道[M]. 韓磊, 譯. 北京: 人民郵電出版社, 2009.12.

(編輯:郭田珍)

1672-5913(2017)02-0018-04

G642

重慶郵電大學(xué)2013年教育教學(xué)改革項目(XJG-1311);重慶郵電大學(xué)2013年規(guī)劃教材項目(JC2013-09)。

馮瀟,女,講師,研究方向為云計算、大數(shù)據(jù),fengxiao@cqupt.edu.cn。

猜你喜歡
郵電大學(xué)程序設(shè)計交叉
《西安郵電大學(xué)學(xué)報》征稿啟事
西安郵電大學(xué)設(shè)計作品
菌類蔬菜交叉種植一地雙收
《西安郵電大學(xué)學(xué)報》征稿啟事
醫(yī)學(xué)專業(yè)“Python程序設(shè)計”課程教學(xué)改革總結(jié)與思考
《西安郵電大學(xué)學(xué)報》征稿啟事
基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
“六法”巧解分式方程
從細(xì)節(jié)入手,談PLC程序設(shè)計技巧
高職高專院校C語言程序設(shè)計教學(xué)改革探索
衡水市| 湖州市| 荔波县| 惠来县| 资兴市| 金寨县| 东兰县| 山东| 五莲县| 聂拉木县| 嘉祥县| 宝兴县| 张掖市| 新民市| 克山县| 淮安市| 漠河县| 乌苏市| 丹寨县| 永昌县| 皋兰县| 荣成市| 兴城市| 吐鲁番市| 哈密市| 广昌县| 轮台县| 资源县| 五河县| 株洲市| 格尔木市| 南陵县| 广州市| 汉沽区| 灌南县| 濮阳市| 个旧市| 靖西县| 封开县| 竹山县| 大石桥市|