亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        做中學——面向對象程序設計與數據結構課程一體化研究

        2008-12-31 00:00:00林亞平
        計算機教育 2008年16期

        文章編號:1672-5913(2008)16-0151-02

        摘要:我院基于“做中學”的教學理念,以項目為載體,研究“面向對象程序設計”和“數據結構”課程的有機結合。本文介紹了我院的改革方案及實施效果。

        關鍵詞:課程融合;做中學;項目驅動

        中圖分類號:G642

        文獻標識碼:B

        1引言

        “面向對象程序設計”和“數據結構”是信息學科相關專業(yè)本科生的必修課程,也是專業(yè)基礎課程?!懊嫦驅ο蟪绦蛟O計”課程通過全面、系統(tǒng)地介紹面向對象程序設計的基本概念、分析方法、設計方法、基本語法和編程方法,使學生能深刻理解和領會面向對象程序設計的特點和風格,類的封裝性、繼承性和多態(tài)性與程序的安全性、結構性和靈活多樣性之間的關系,進而掌握面向對象的程序設計方法和編程基礎,并具備解決一般程序設計問題的能力;“數據結構”課程有助于學生更有效地組織數據、設計高效的算法、完成高質量的程序以滿足錯綜復雜的實際需要,強調數據的組織方式和解決問題的思想。

        在實際的教學過程中,學生對這兩門課程的掌握和運用不盡人意。一方面,相當部分學生雖然學過了“面向對象程序設計語言”課程,但在“數據結構”課程中卻難以利用面向對象的思想設計和實現相關的數據結構和算法,影響了學生對數據結構課程知識的掌握;另一方面,數據結構和算法是計算機科學的核心問題,很多學生在學習的過程中沒有意識到這一點,以至于到了實際項目中不知道運用所學的“數據結構”知識來解決實際問題。

        2問題分析

        “面向對象程序設計”和“數據結構”課程作為非常重要的專業(yè)基礎課,各高校在課時分配和課程建設方面都非常重視,出現上述問題的原因主要是課程設置和教學方式上存在問題。

        在現代教學體系中,從抽象數據類型和面向對象觀點來討論數據結構已經成為一種主流,使得“面向對象程序設計”和“數據結構”兩門課程構成了強相關的課程。但在當前的實際教學中,這兩門課程被一直被設定為相互獨立的課程,課程間的教學出現了相互脫節(jié)現象,而且這種

        現象在許多高校的教學中普遍存在。

        在實踐環(huán)節(jié)上,由于課程設置上的相對獨立,也使得兩門課程在實踐教學方面有相當的重復,雖然總體的實踐教學學時很多,但各自側重點在實踐教學中沒有有效地體現,使得學生“事倍功半”,收效甚微。課程中實驗項目過于單一和相對獨立,也使得實踐環(huán)節(jié)與實際項目聯系過于松散,學生運用所學知識解決實際問題的能力和實際工程能力很難得到鍛煉,也難以培養(yǎng)軟件開發(fā)中所必須的團隊合作精神。

        3課程改革方案及實施

        針對目前“面向對象程序設計”和“數據結構”這兩門課程教學中存在的問題,我們將這兩門課程進行有機結合,探索采用教師指導下的以項目為驅動的“做中學”教學方式進行教學。精心設計項目,將面向對象的設計思想、程序設計語言和數據結構課程教學內容恰當地融入到所設計的項目當中,有效整合兩門課程中的重疊部分,突出各自的側重點。面向對象程序設計教學采用“做中學”(Learning By Doing)以及“按需教學”(Teaching On Demand)的方式進行教學,使學生在具體項目過程當中在掌握和熟練運用高級語言的特征的同時,深入理解和鞏固相應的數據結構知識;教學采用的項目與實際項目接軌,提高學生利用所學知識解決實際問題的能力;在教學過程中以項目組的方式組織學生,培養(yǎng)學生的團隊合作精神,提高學生的職業(yè)素養(yǎng)。

        3.1課程項目

        為了有效整合這兩門基礎課,我們精心設計了“Mini數據庫”項目,該項目較好地包含了“數據結構”中線性表、字符串、二叉樹、索引、查找、排序、文件等章節(jié)的主要內容。通過該項目實現了“數據結構”和“面向對象程序設計”課程內容的有機融合。

        Mini數據庫分為三個模塊:基本數據模塊,數據庫內核模塊,數據庫管理界面模塊。其中,數據庫管理界面模塊呈現數據庫管理的總界面風格及形式,在項目具體實施過程當中,這一塊不作太多要求以免轉移項目重點,學生可以只完成控制臺形式界面。

        基本數據庫模塊定義基本數據結構,采用哈希表和二叉樹結構,負責讀出業(yè)務數據的存儲,包括對最基本數據的查詢,刪除,修改和添加等操作。其結構如圖1所示。其中Index類創(chuàng)建索引,Matrix類以順序表形式存放所有數據,并且該類的設計融入了可利用空間表、模擬指針等思想,對學生在數據結構設計方面有較大的啟發(fā)作用。

        數據庫內核模塊(如圖2所示)主要負責對文件中數據進行讀寫操作,實現定義表及表的屬性,設置主鍵和外鍵,定義表之間的關聯以及實現表的更改等功能。

        Mini數據庫項目所涉及到的數據結構基本上基于本科教材中介紹的常用數據結構,部分數據結構在課本的基礎上稍做修改便可用于該項目,部分需要對教材所介紹的相應數據結構進行重新設計以適于項目。每一個數據結構都有其相關的代價和效益權衡,要完成項目,學生需要對多種數據結構的有效性進行評估來決定在什么情況下需要采取哪種數據結構。通過該項目我們希望達到三個目的:

        (1) 使學生熟悉一些常用的數據結構,這些常用的數據結構形成了一個程序員的基本數據結構工具箱,對于實際中的很多問題,工具箱里的數據結構便是理想的選擇;

        (2) 引入“權衡(tradeoff)“的概念,在項目中通過分析不同數據結構的代價和效益來討論“權衡”的概念;

        (3) 評估數據結構或算法的有效性,在項目過程中引導學生分析工具箱中哪一種數據結構最適合解決項目中的某一問題,這種技術也使得程序員能夠判斷自己或別人發(fā)明的新數據結構的價值。

        3.2教學方式及實踐

        Mini數據庫系統(tǒng)在難度和復雜度上較傳統(tǒng)實驗高,如何引導學生在學習“數據結構”課程的同時完成該項目是一個值得研究的問題。我們的做法是:首先在教師指導下讓學生全面了解所要完成項目的整體結構,在學習“數據結構”課程的過程中結合所學知識逐步完成系統(tǒng)的各個模塊,最終完成整個項目。

        我們采用集課堂理論教學、開放實驗、每周討論、網上答疑等多環(huán)節(jié)組成的立體化教學方式進行教學。

        在課堂理論教學部分,根據所設計的項目我們對教學內容進行適當調整,強調所學內容在項目中的應用。完成相關理論知識的講授后,指導學生如何運用所學知識解決課程項目中的問題,并且理論教學中部分內容采取“做中教”方式進行,教師在現場編寫程序完成教學任務,幫助學生克服“編程難”的心理陰影,培養(yǎng)學生分析問題和解決問題的能力以及養(yǎng)成良好的編程風格,該方法深受學生歡迎。

        實驗上機部分,學生以項目組的形式進行組織,3~4名同學為一組,共同完成課程項目,培養(yǎng)他們的團隊合作能力。為了防止項目組中個別動手能力弱的學生不參與或少參與課程項目的設計與實現工作,在課程項目進行的同時,我們布置了相應的課程實驗,課程實驗與教學內容直接相關,并且對課程的項目有直接幫助作用,每一個學生都要單獨完成課程實驗內容。為了給學生提供良好的實驗環(huán)境,我們采取開放實驗形式,為學生提供了專門實驗室。指導教師以office hour的形式解答學生問題,并且每個班配備了一名指導教師和一名助教。

        為了克服簡單的“說教”型教學,每一周由指導教師或助教召集開展“每周討論”活動,學生以自愿方式參與“每周討論”?!懊恐苡懻摗币詫W生為主體,由學生講解他們所設計的代碼以及所遇到的問題,特別鼓勵學生將上一周在課程項目或課程實驗中所遇到的問題提出來,由參與學生一起討論問題的解決辦法。為了鼓勵學生積極參與 “每周討論”活動,我們對積極參與討論和提出問題的學生在平時成績上予以體現,下一步我們將考慮對由學生評選“每周討論”活動積極分子,并給與獎勵。

        課程網站是課程教學的有機組成部分,我們逐步建立了相對完善的課程網站。課程網站在為學生提供課程資源、發(fā)布課程項目和實驗任務的同時,為學生提供了網絡交流平臺。在“學習交流”板塊中,學生可以提出學習中遇到的問題,回答其他學生的提問。為了及時解決學生的提問,我們安排了教師和助教進行網絡值班。為鼓勵學生積極提問和回答其他學生問題,網上“學習交流”模塊中設計了加分功能,學生所得分數將作為平時成績的重要組成部分。

        采用上述方式,我們在湖南大學軟件學院2004級和2005級本科生中進行了試點,每次挑選了30多位學生參加。第一次挑選的學生在全年級中屬于較為優(yōu)秀的學生,完成情況非常好,其中兩位同學進入微軟亞洲工程院實習,并將他們在本課程中完成的項目作為一個亮點向實習單位介紹;第二次參加的學生的整體素質處于全年級中等水平,也順利完成了整個項目。在前兩屆學生成功試點的情況下,目前我們對2006級本科生全面采用上述教學方式進行“數據結構”和“面向對象程序設計”兩門課程的教學,通過近一個學期的教學,從教學的效果來看,學生的動手能力整體上較上幾屆學生有明顯改觀,并且學生的學習積極性也大大提高,90%以上的學生項目組能夠按照教學進度完成項目內容。

        參考文獻:

        [1] 溫莉芳,劉江. 美國名校計算機科學專業(yè)本科教學體系現狀分析[J]. 計算機教育,2004,(8):40-43.

        [2]D.S. Malik. C++ Programming: Program Design Including Data Structures[M]. 北京: 電子工業(yè)出版社,2003.

        [3]凌小寧,邊耐政,林亞平,黃學東. 以學生為中心的做中學軟件教學模式[C]. 2007全國高校軟件工程教育年會論文集[A].北京:高等教育出版社.

        亚洲av日韩av无码污污网站| 国产精品亚洲一区二区三区久久| 麻豆人妻性色av专区0000| 日本又色又爽又黄的a片18禁| 躁躁躁日日躁| 成人综合久久精品色婷婷| 精品一区二区三区a桃蜜| 国产老熟妇精品观看| 欧美日韩一区二区三区自拍| 2021国产最新无码视频| 国产在线视频一区二区三区| 久久久久99人妻一区二区三区| 国产sm调教视频在线观看| 妺妺窝人体色www在线直播| 国产大屁股白浆一区二区三区| 老熟女富婆激情刺激对白| 无遮挡边摸边吃奶边做视频免费| 亚洲αⅴ无码乱码在线观看性色| 国产午夜激情视频在线看| 免费人成在线观看| 亚洲美国产亚洲av| 日本熟妇中文字幕三级| 日韩av天堂一区二区| 无码国产精品一区二区免费式直播 | 国产自拍91精品视频| 最近中文字幕免费完整版| 在线精品国产一区二区| 亚洲一区二区丝袜美腿| 欧美高清精品一区二区| 午夜成人理论无码电影在线播放| 亚洲高清中文字幕精品不卡| 国产精品一区二区韩国av| 免费人成视频x8x8入口| 911香蕉视频| 国产午夜激情视频在线看| 国产又大又硬又粗| y111111少妇影院无码| 色婷婷av一区二区三区不卡| 亚洲综合天堂av网站在线观看 | 亚洲欧美成人久久综合中文网| 蜜桃臀av一区二区三区|