999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

拓寬基礎,強化實踐,程序設計語言類課程教學的探索與實踐

2009-01-18 07:44:34孫昌愛于雙元吳盡昭
計算機教育 2009年20期
關鍵詞:實踐教學教學改革

孫昌愛 于雙元 吳盡昭

摘要:程序設計語言是高等學校計算機專業本科教學計劃中不可缺少的基礎課程,由于語言種類多、發展快、實踐性強,如何在有限的課時內讓學生系統地掌握程序設計語言的基本原理、具備初步的編程能力,是該類課程教學面臨的一個主要挑戰。本文介紹北京交通大學在程序設計語言類課程教學方面進行的研究性教學與實踐性教學相結合的探索與嘗試。

關鍵詞:計算機教育;程序設計語言類課程教學;教學改革;研究性教學;實踐教學

中圖分類號:G642 文獻標識碼:B

1程序設計語言類課程教學的問題

程序設計語言的研究與開發一直是計算機科學領域的核心問題之一。事實上,信息技術領域的任何新技術與新方法都離不開程序設計語言的表達和實現,多名“圖靈獎”獲得者都是因為在程序設計語言方面的開創性成果而獲獎。研究型大學的計算機專業本科生不僅應掌握特定程序語言的應用,更應了解不同類型程序設計語言的理論基礎及其背后所蘊涵的程序設計方法學。

我國絕大多數高校計算機專業方向的本科生教學培養計劃中安排了程序設計語言的教學任務。與西方發達國家的高等院校相比,程序設計語言教學方面的突出不足之處主要表現為:

(1) 程序設計語言的教學在有限的本科生教學課時中占用了較大比例,開設了如C、C++、Java、C#、Web程序設計語言、腳本語言等課程,設置零散,缺乏系統性。

(2) 程序設計語言的教學大綱側重語言的語法教學,忽視程序語言設計的理論基礎。學生缺乏研究和開發新型程序設計語言的能力,與研究型大學的學生培養目標有較大差距。

(3) 程序設計語言實例教學的效果不能令人滿意。相當比例的計算機專業本科畢業生需要經過一段時間的編程訓練后方能滿足工業界需求。

初步調研發現,我國計算機學科排名靠前的幾所高校,如北京大學、北京航空航天大學、東南大學,開設了“高級程序設計語言的設計與實現”或“程序設計語言的原理與實踐”課程,但這些課程大多是面向計算機專業方向的研究生。據我們所知,德國和荷蘭等西方發達國家的高校在本科生層次上就已經開設了相應課程,并且將程序設計語言的教學任務分配到多個階段。

基于以上分析,我們認為,有必要在計算機專業本科生教學培養計劃中增設程序設計語言的理論基礎課程,適當刪減程序設計語言實例教學課時,實現從程序設計語言基礎理論到編程實踐的系統化教學。

以培養可持續發展的計算機專業人才為導向,本文探討“研究性”教學與“實踐性”教學相結合的“程序設計語言”課程教學的探索與實踐。具體說來,在程序設計語言理論基礎教學方面,歸納與整理幾類程序設計語言的理論基礎,并以代表性程序設計語言為例進行分析與講解;在程序設計語言實踐教學方面,保留“C程序設計”課程教學,但對已有的教學內容與方式實施改革。上述教學改革的目標是提高學生程序設計語言的理論水平,增強對程序設計語言的理解與應用能力,為后期從事計算機相關領域的研發活動夯實基礎。

2程序設計語言理論基礎的研究性教學探索

程序設計語言理論基礎研究性教學遵循“三結合”的基本原則,設計和實施課程教學。具體說來,采用“授之以漁”與“授之以魚”相結合、“演繹”與“歸納”相結合、“原理”與“實踐”相結合的方式。

由教授、副教授、講師各一名組成本課程的教學小組。三名授課教師均長期從事計算機軟件與理論方面的研究工作,在國內外學術期刊或學術會議上發表多篇高水平的研究論文。其中,一名教師負責講授不同類型程序設計語言的理論基礎,另外兩名教師配合理論基礎講授語言實例。

本課程以授課教師編寫的講義為主,并提供大量相關的參考文獻。通常,程序設計語言的理論基礎可按三種編排方式講授,即按照不同語言的重要特征及比較、或者按照程序設計語言的基本結構及實現、或者按照程序設計語言的形式化語義講解。基于近幾年程序設計語言的研究進展,本課程采用第一種編排方式組織課程的教學大綱。

(1) 分析與整理現有的各種程序設計語言,如C、C++、C#、Java、Ada、Lisp、Prolog等,歸納不同范型程序設計語言的特點與由來,繪制程序設計語言的發展譜系。

(2) 整理與探討過程式、函數式、邏輯式、面向對象式、并發式等不同范型程序設計語言的理論基礎,結合有代表性的程序設計語言實例分析講解。

(3) 探討新型程序設計語言的發展趨勢,討論開發新型程序設計語言的一般過程與方法。

在實施課程教學時,采取教師講授、學生演講與報告、課堂討論等各種形式的研究性教學方式。首先教師主講先導性知識與理論基礎,然后由教師指定相關文獻,學生課前必須認真研讀、準備課堂演講與報告,老師和其他同學提問;學生無法回答或解釋不清時,由教師進行疏導。學生準備課堂演講與報告時,應能運用合適的研究方法,并結合具體程序設計語言進行分析與討論。該教學方式將“學”與“教”互相融合,學生既是“學”的主體,又具有“教”的能力,即學習新知識并能清晰地講授給別人。通過積極參與課堂討論,學生必須積極思考教師或其他同學提出的問題,并進一步研讀文獻,鍛煉“提問題”、“回答問題”的能力,提高做研究的素質。

下面以“過程式程序設計語言的理論基礎”與“過程式程序設計語言實例”為例,簡要論述“學”與“教”相結合的研究性教學方式。

(1) 由教師講解過程式程序設計語言的基本思想、特點與理論基礎。

(2) 教師指定過程式程序設計語言中相關問題的研究論文,要求學生課后進行認真閱讀,并安排不同的學習小組對這些研究文章進行課堂演講與報告。

(3) 教師與學生提出各種問題,要求作報告的同學進行回答。例如,教師讓學生思考或回答“作為過程式程序設計語言的代表,C語言是如何處理控制結構、類型、存儲”等問題,學生必須將所學的基礎理論與C語言設計的基本思想結合起來才能回答此類問題。

類似地,教師系統地講授各類程序設計語言的理論基礎,學生結合各自程序設計語言實例進行分析與研究。通過這樣的由“一般”到“具體”或“歸納”與“演繹”相結合的過程,學生不僅可以深入理解面向對象、函數、邏輯、并發等各種范型的程序設計語言的理論基礎、設計思想,還可以對不同范型的程序設計語言進行系統的分析與比較。更重要的是,已知的程序設計語言上百種,課堂教學中不可能講授所有的程序設計語言,因此上述研究性教學方式有助于學生快速掌握新型程序設計語言。

課程考核采用“課堂演講與報告”加“課程論文”的形式,前者占40%,后者占60%。“課堂演講與報告”布置一些經典的程序設計語言方面的研究論文,學生閱讀并理解其中的關鍵思想,運用本課程講授的各種計算機專業研究方法、并結合程序設計語言實例進行課堂演講與報告,所有同學必須參與課堂討論。“課程論文”則要求學生運用計算機專業研究方法學習和追蹤某種新程序設計語言,或對當前主流程序設計語言進行評述。為了鼓勵討論,課程論文可以以研究小組為單位提交。但小組成員必須獨立參加口頭答辯,并說明自己在論文研究中的貢獻。

不難看出,上述課程教學將計算機專業研究方法潛移默化地運用到程序設計語言的教學中。通過本課程的學習,學生不僅要掌握程序設計語言的理論基礎,增強對程序設計語言的理解與應用,而且應理解如何應用各種計算機專業研究方法。

3程序設計語言實例實踐性教學的改革與嘗試

盡管程序設計語言的理論基礎教學已經部分講授具有代表性的程序設計語言,但是距如何熟練地運用這些程序設計語言進行編程實踐還有一段距離。為此,有必要開設具體程序設計語言實例的課程教學。在本科生教學計劃中,我們認為應該保留“C程序設計”課程教學。一方面,C語言在實踐中有著廣泛的應用;另一方面,C語言是面向對象程序設計語言C++的基礎。

與程序設計語言的理論基礎教學不同,“C程序設計”應側重于實踐性教學。根據北京交通大學近兩年的“C程序設計”教學實踐,我們發現程序設計語言實例教學存在一些不足之處:如學生對C語言的基本概念、特征與簡單的數據類型掌握較好,但對指針、數組、函數等復雜概念的理解與運用有待進一步提高;如具備了一定的程序分析能力,但程序設計能力較差。以筆者任教的信息與計算科學本科生的“C程序設計”為例,本課程共32學時,其中理論教學24課時,實驗教學8課時。表1總結了2008年度2007級“C程序設計”課程考察情況。本次考察由6道考題組成,題1~題6分別為概述題、填空題、選擇題、程序分析題、程序填空題和程序設計題。最高分、最低分、平均分行分別給出了各道題的最高得分、最低得分和平均分。得分率的高低與學生的基礎以及試題的難易程度有關。橫向比較發現:題1~題3的得分率較高,表明學生基本掌握與理解C語言的基本概念;題1~題3得分率較低,表明學生對C語言的運用能力較差。

針對上述不足之處,我們進行了加強實踐性教學的嘗試:

(1) 引進啟發式問題,增加提問,增強互動,讓學生主動思考問題。例如,在講解為何學習C語言時,提問“人們可采用哪些途徑跟計算機打交道?”在講解C語言3種控制結構時,提問“如何通過程序設計語言讓計算機按照人們的想法工作?”在講解C語言的輸入輸出處理時,提問“計算機怎樣接受要處理的數據,怎樣將計算的結果反饋給人們?”等。我們發現,學生對這些啟發式問題比較感興趣,會主動構想一些答案。

(2) 在講授內容上遵循“抓住主干,忽略細節”的原則。理論教學課時非常有限,無法講授C語言的全部知識點,因此要抓住重點,忽略細節。

(3) 增加例子與解析,著重提高學生的程序構造能力。通過與學生的廣泛交流,我們發現學生基本可以掌握C語言的各種概念,能讀懂一般難度的C程序,但是編寫程序則感到棘手。編程就是將各種C語言的成分按照一定的方式組合起來解決實際問題,是一個構造性思維過程。提高程序構造能力的唯一辦法是多實踐,一個有效的辦法是增加程序舉例與解析,然后讓學生模仿這些例子。

表2總結了實施上述加強實踐性教學的嘗試之后,筆者任教的信息與計算科學本科2009年度2008級“C程序設計”課程考察情況。本次考察由5道題組成,題1~題5分別為填空題、選擇題、程序分析題、程序填空題和程序設計題。與2007級“C程序設計”課程考察相比,難度稍有增加。比較表1和表2,可以得出如下結論:

(1) 表2中,不同題之間得分率差距進一步拉大。例如,題1(填空題)得分率為85%,題5(程序設計題)為60%,表明學生較好地掌握了C語言的概念,編程能力仍然欠缺。

(2) 表2中,每道題的最高分與最低分差距進一步拉大。例如,題5的最高分為滿分,最低分為3分,表明學生的編程能力差距大。

(3) 表2中,程序填空得分率較表1有大幅度的提高,但程序分析與程序設計得分率稍有下降。

從近兩年來的課程考察結果看來,如何提高程序構造能力仍然是“C程序設計”課程實踐性教學面臨的主要問題。通過加強實踐性教學的改革與嘗試,學生能較好地掌握C語言的概念,但應用能力仍有待提高;另一方面,高分的學生數多了,同時低分的學生數也在增多,說明上述教學改革導致了學生對C語言的理解與應用出現了較大差距。

4結束語

程序設計語言是計算機專業本科教學計劃中的一門基礎課程。由于程序設計語言種類多、實踐性強,如何在有限的課時內讓學生系統地掌握并應用多種程序設計語言,是該類課程教學面臨的一個主要挑戰。為此,我們進行了拓寬程序設計語言的理論基礎、強化程序設計語言運用能力的初步教學探索與嘗試。在程序設計語言理論基礎教學方面,我們探索了研究性教學方式,加強程序設計語言基礎原理的教學,講授多種語言之間的共性與不同點,力求舉一反三。在程序設計語言實例教學方面,我們初步嘗試了強化實踐性教學。值得注意的是,程序設計語言的理論基礎和實例教學是兩門緊密配合的系列課程,應分為兩個階段實施。為配合該系列課程的有效實施,現有的教學大綱需要進一步調整課時分配,更合理地規劃理論和實踐教學的協同。

本文提出的教學改革與嘗試有利于實現程序設計語言的系統化教學。學生具備理論基礎及某種程序設計語言的編程能力后,應該有能力自學和運用其他程序設計語言這正是我們強調的可持續發展的計算機專業人才應該具備的基本素質。上述程序設計語言類課程教學改革是我們的初步嘗試,需要進一步完善、檢驗實際效果。

注:本文得到北京交通大學計算機與信息技術學院本科教改項目“計算機專業研究方法論課程建設”(2008.9~2010.3)和北京市實驗示范中心“計算機科學實踐教學體系建設項目”(2008.4~2009.3)的大力支持。

參考文獻:

[1] 吳鶴齡. ACM圖靈獎(1966-2006)-計算機發展史的縮影[M]. 3版. 北京:高等教育出版社,2008.

[2] 蔡啟先. CC2004計算機學科教程體系分析與思考[J]. 高等工程教育研究,2006(5).

[3] 吳平,黃燕,黃嵐,等. 本科計算機專業課程體系改革初探[J]. 中國大學教學,2004(6).

[4] [美]Kenneth C.Louden. 程序設計語言—原理與實踐[M]. 黃林鵬,毛宏燕,黃曉琴,等譯. 2版. 北京:電子工業出版社,2004.

猜你喜歡
實踐教學教學改革
茶學專業校企合作實踐教學探索
考試周刊(2016年79期)2016-10-13 23:35:16
《電氣工程畢業設計》 課程的教學設計
考試周刊(2016年79期)2016-10-13 23:26:02
研究型學習在傳熱學實踐教學中的應用
大學教育(2016年9期)2016-10-09 08:34:10
思想政治理論課實踐教學研究述評
大學教育(2016年9期)2016-10-09 08:17:37
高職院校商務禮儀課程教學改革探索芻議
大學教育(2016年9期)2016-10-09 08:12:01
中職學校“生本課堂”的調查研究與實踐
成才之路(2016年25期)2016-10-08 10:03:04
高校三維動畫課程教學方法研究
成才之路(2016年25期)2016-10-08 10:00:36
基于人才培養的技工學校德育實效性研究
成才之路(2016年25期)2016-10-08 09:51:08
現代信息技術在高職數學教學改革中的應用研究
科技視界(2016年20期)2016-09-29 12:59:03
《數據庫高級應用》教學創新方法研究
科技視界(2016年20期)2016-09-29 11:25:15
主站蜘蛛池模板: 99国产精品一区二区| 伊人色综合久久天天| 99视频在线观看免费| swag国产精品| 久久亚洲高清国产| 色婷婷亚洲十月十月色天| 9999在线视频| 精品亚洲国产成人AV| 人与鲁专区| аⅴ资源中文在线天堂| 国产精品xxx| 欧美a√在线| 亚洲二三区| 国产女人在线| 欧美不卡视频在线| 亚洲视频免费播放| 19国产精品麻豆免费观看| 亚洲动漫h| 亚洲综合18p| 极品私人尤物在线精品首页| 99久久精品视香蕉蕉| 国产在线精品人成导航| 亚洲第一成年人网站| 亚洲无线视频| 亚洲一区网站| 亚洲一区无码在线| 暴力调教一区二区三区| 黄色一及毛片| 女人一级毛片| 国产精品成人观看视频国产| 久久精品日日躁夜夜躁欧美| 久久国产亚洲欧美日韩精品| 亚洲愉拍一区二区精品| 国产福利微拍精品一区二区| 久久久久国产精品嫩草影院| 日韩小视频在线观看| 日本欧美精品| 中文字幕人成人乱码亚洲电影| 国产欧美中文字幕| 国产91小视频在线观看| 91免费精品国偷自产在线在线| 欧美一级高清片欧美国产欧美| 日韩国产高清无码| 在线视频亚洲欧美| 99激情网| 国产精品开放后亚洲| 亚洲人成在线精品| 香蕉久久永久视频| 亚洲欧美一区在线| 国产成人高清精品免费| 日韩福利在线观看| 99re免费视频| 亚洲第一视频区| 97精品国产高清久久久久蜜芽| 亚洲午夜国产片在线观看| 国产亚洲精久久久久久久91| 久久视精品| 国产成人精品高清在线| 天堂亚洲网| 四虎影视8848永久精品| 国产福利不卡视频| 欧美激情视频一区| 国模粉嫩小泬视频在线观看| 精品1区2区3区| 无码精品一区二区久久久| 国产综合亚洲欧洲区精品无码| 亚洲 成人国产| 日韩毛片免费| 亚洲一区免费看| 欧美一级高清免费a| 欧美在线导航| 韩日无码在线不卡| 国产91丝袜在线播放动漫 | 国内精品九九久久久精品| 精品日韩亚洲欧美高清a| 国内精品伊人久久久久7777人| 在线无码九区| 色综合国产| 狠狠色香婷婷久久亚洲精品| 亚洲全网成人资源在线观看| 四虎精品国产永久在线观看| 在线国产欧美|