韓明慧
(江蘇廣播電視大學(xué)東臺學(xué)院江蘇鹽城224200)
《面向?qū)ο蟪绦蛟O(shè)計》課程教學(xué)模式探索
韓明慧
(江蘇廣播電視大學(xué)東臺學(xué)院江蘇鹽城224200)
《面向?qū)ο蟪绦蛟O(shè)計》這門課程理論性與實踐性較強,學(xué)生要循序漸進地理解教材內(nèi)容,逐步掌握各個知識點;教師要分過程、分階段引導(dǎo)學(xué)生學(xué)習(xí),包括學(xué)習(xí)過程的輔導(dǎo)、教學(xué)過程的控制、復(fù)習(xí)考試的策略等。實踐證明,這樣的教學(xué)模式有獨到之處,對本課程的教學(xué)效果有明顯的提升。
面向?qū)ο蟪绦蛟O(shè)計;教學(xué)模式;實踐
《面向?qū)ο蟪绦蛟O(shè)計》是開放教育計算機科學(xué)與技術(shù)專業(yè)(本科)的一門必修課程,按照教學(xué)計劃安排在第一學(xué)期開課。學(xué)生在學(xué)習(xí)這門課程之前,必須掌握一些前導(dǎo)的專業(yè)知識,如C語言、程序設(shè)計基礎(chǔ)、軟件工程等,同時,這門課程也是計算機本科其他專業(yè)課,如數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)及計算機網(wǎng)絡(luò)等課程的先修課程,所以,在整個教學(xué)體系中,該門課程占據(jù)非常重要的地位。
開放教育計算機本科的學(xué)生都是??粕究频模胁糠謱W(xué)生??齐A段讀的并非計算機專業(yè),這部分學(xué)生都沒有學(xué)過《面向?qū)ο蟪绦蛟O(shè)計》這門課程的前導(dǎo)基礎(chǔ)課,如C語言、程序設(shè)計基礎(chǔ)等,這就給該課程教學(xué)帶來了相當(dāng)大的難度。
“面向?qū)ο蟪绦蛟O(shè)計”的思想是當(dāng)前一種全新的程序設(shè)計理念。它具有傳統(tǒng)結(jié)構(gòu)化程序設(shè)計思想不能比擬的優(yōu)點。
面向?qū)ο蟪绦蛟O(shè)計思想的基本概念
對象對象是人們要進行研究的任何事物,從最簡單的整數(shù)到復(fù)雜的飛機等均可看作對象,它不僅能表示具體的事物,還能表示抽象的規(guī)則、計劃或事件。
類具有相同或相似性質(zhì)的對象的抽象就是類。因此,對象的抽象是類,類的具體化就是對象,也可以說,類的實例是對象。類具有屬性,它是對象的狀態(tài)的抽象,用數(shù)據(jù)結(jié)構(gòu)來描述類的屬性。類具有可操作性,它是對象的行為的抽象,用操作名和實現(xiàn)該操作的方法來描述。
消息和方法對象之間進行通信的結(jié)構(gòu)叫做消息。在對象的操作中,當(dāng)一個消息發(fā)送給某個對象時,消息包含接收對象去執(zhí)行某種操作的信息。發(fā)送一條消息至少要包括說明接受消息的對象名、發(fā)送給該對象的消息名(即對象名、方法名)。一般還要對參數(shù)加以說明,參數(shù)可以是認識該消息的對象所知道的變量名,或者是所有對象都知道的全局變量名。類中操作的實現(xiàn)過程叫方法,一個方法有方法名、參數(shù)、方法體。
面向?qū)ο笤O(shè)計的核心思想
面向?qū)ο蟮暮诵木褪穷惖睦^承,可讓類的代碼以非常方便的方式的重使用。有時候,為設(shè)計合理的面向?qū)ο蟮木幊?,都是圍繞繼承來進行設(shè)計的,這里面最為重要的就是方法的繼承,于是有了.net中的許多關(guān)鍵字,如virtual,override,new,abstract等。
設(shè)計的過程其實就是對現(xiàn)實世界事物建立合理的關(guān)系,使得處于這些事物中的人(用戶)可以合理、簡單、高效地工作。所以我覺得最重要的就是處理事物和關(guān)系,面向過程的核心是功能調(diào)用,這并不能很好地應(yīng)對現(xiàn)實的變化需求,而面向?qū)ο蟮慕U嬲w現(xiàn)了現(xiàn)實世界的這種特征。
任何事物都有共性與個性,并且不是孤立的。分類后找出共性就是類和接口的模型。關(guān)系自然就是類之間的通信。所以說,面向?qū)ο笫前炎匀唤绲奈矬w和概念直接映射到程序界的一種比較優(yōu)雅的手段。
面向?qū)ο缶褪前褦?shù)據(jù)及對數(shù)據(jù)的操作方法放在一起,作為一個相互依存的整體——對象。對同類對象抽象出其共性,形成類。類中的大多數(shù)數(shù)據(jù),只能用本類的方法進行處理。類通過一個簡單的外部接口與外界發(fā)生關(guān)系,對象與對象之間通過消息進行通信。這就是面向?qū)ο蟮拇蟾潘枷搿?/p>
通過以上內(nèi)容的介紹,我們不難發(fā)現(xiàn)《面向?qū)ο蟪绦蛟O(shè)計》這門課程理論性與實踐性很強,學(xué)生要循序漸進地理解書本內(nèi)容,逐步掌握各個知識點,教師要分過程、分階段引導(dǎo)學(xué)生學(xué)習(xí),主要抓好以下幾個步驟。
(一)課程導(dǎo)學(xué)
課程一體化導(dǎo)學(xué)開學(xué)初的面授課,針對學(xué)生對課程缺乏了解的情況,教師應(yīng)對學(xué)生進行該課程的性質(zhì)、學(xué)習(xí)目的和任務(wù)、學(xué)習(xí)重點內(nèi)容和要求、多種媒體資源的配置情況、教學(xué)活動整體安排等內(nèi)容的教育和指導(dǎo)。講解課程使用的軟件工具和安裝、使用方法,要求學(xué)生學(xué)會在自己的機器上安裝和使用。另外,輔導(dǎo)教師要進行網(wǎng)上資源建設(shè)與整合、面授輔導(dǎo)、指導(dǎo)小組協(xié)作學(xué)習(xí)、實踐教學(xué)、網(wǎng)上教學(xué)、作業(yè)批改講評、課程教研、課程教學(xué)質(zhì)量與效果分析及維持正常的教學(xué)秩序等。指明每章的重點、難點,給出導(dǎo)學(xué)提綱:明確應(yīng)該理解哪些基本概念,熟記哪些語法結(jié)構(gòu),會編寫哪些程序,學(xué)員自學(xué)中有疑點,可以帶著問題利用錄像、網(wǎng)上資源學(xué)習(xí),也可以在輔導(dǎo)課中解決或進行網(wǎng)絡(luò)、電話答疑。其實輔導(dǎo)教師不僅僅是導(dǎo)觀念、導(dǎo)課程內(nèi)容,更要導(dǎo)技能、導(dǎo)方法。
課程章節(jié)導(dǎo)學(xué)在教學(xué)過程中,課程輔導(dǎo)教師應(yīng)針對某一門課程中某一章節(jié)對學(xué)生進行預(yù)習(xí)指導(dǎo)。讓學(xué)生了解本章的基本概念、基本知識、基本技能和重點、難點以及教學(xué)要求的層次、網(wǎng)上資源的地址等。
課程考核導(dǎo)學(xué)課程輔導(dǎo)教師對本課程形成性考核、自評自測、期中考試、期末考試等進行指導(dǎo)并提出要求。
(二)自主學(xué)習(xí)
自主學(xué)習(xí)是遠程教育教學(xué)過程中主要的學(xué)習(xí)階段,是在完整的學(xué)習(xí)支持服務(wù)體系下的主動學(xué)習(xí)。但由于學(xué)生學(xué)習(xí)的基礎(chǔ)和自主性參差不齊,學(xué)習(xí)過程中會遇到的問題各異,所以,需要教師進行“助學(xué)”,這就要求教師既要注意學(xué)生的整體水平,又要照顧個體差異,體現(xiàn)個性化助學(xué)服務(wù),提高學(xué)生學(xué)習(xí)效率,保證學(xué)習(xí)質(zhì)量。具體的實施方式如下。
個體自主學(xué)習(xí)學(xué)生根據(jù)自己的個別化學(xué)習(xí)計劃,結(jié)合相應(yīng)的教學(xué)資源和教學(xué)支持服務(wù)體系,實現(xiàn)個體自主學(xué)習(xí)。在自主學(xué)習(xí)過程中,輔導(dǎo)教師提供的學(xué)習(xí)過程設(shè)計及相應(yīng)的資源使用建議均只起參考作用,在總體完成學(xué)習(xí)任務(wù)的前提下,學(xué)生可以依據(jù)自身知識結(jié)構(gòu)、學(xué)習(xí)偏好和學(xué)習(xí)時間,自主選擇學(xué)習(xí)進程和學(xué)習(xí)資源?!睹嫦?qū)ο蟪绦蛟O(shè)計》課程第九、十、十二章的內(nèi)容都可以納入學(xué)生自主學(xué)習(xí),教師只需要對這些章節(jié)內(nèi)容簡單講解,學(xué)生就可以根據(jù)網(wǎng)上視頻資源和電子教案自主學(xué)習(xí)。
協(xié)作學(xué)習(xí)協(xié)作學(xué)習(xí)有兩種類型,一種是學(xué)生自行開展的小組協(xié)作學(xué)習(xí),一種是教師直接組織的主題性小組活動。開放教育教學(xué)實質(zhì)是一種基于網(wǎng)絡(luò)的教學(xué),需要做到現(xiàn)實與虛擬兩個課堂相結(jié)合,充分利用適應(yīng)個別化需求的虛擬課堂開展交互教學(xué),是提高開放教育教學(xué)質(zhì)量的有效途徑。為此,教師應(yīng)從引導(dǎo)入手,認真組織學(xué)員開展網(wǎng)上交互教學(xué)活動。以網(wǎng)絡(luò)為媒介組成網(wǎng)上學(xué)習(xí)小組,消除學(xué)員協(xié)作學(xué)習(xí)中交通和場所的制約;小組長事先在QQ群上發(fā)布小組學(xué)習(xí)活動的安排,確定時間與交流主題,然后,各成員準(zhǔn)時上網(wǎng)進行協(xié)作學(xué)習(xí)。通過小組協(xié)作學(xué)習(xí)不僅能解決學(xué)習(xí)中的問題,強化學(xué)習(xí)效果,而且能相互交流學(xué)習(xí)體會和經(jīng)驗,提高自主學(xué)習(xí)能力。成人學(xué)習(xí)特別是網(wǎng)絡(luò)學(xué)習(xí)往往是“孤獨”的學(xué)習(xí),而協(xié)作學(xué)習(xí)可以克服這一不足,有利于發(fā)展學(xué)生個體的思維能力、增強學(xué)生個體之間的溝通能力以及對學(xué)生個體之間差異的包容能力。
(三)重點與難點講解
《面向?qū)ο蟪绦蛟O(shè)計》課程整個教學(xué)量是非常大的,整個教材實際上由三個部分組成:C++過程化語言基本概念和方法(第一章到第六章);基本數(shù)據(jù)結(jié)構(gòu)(第七章、第八章);面向?qū)ο蟮母拍?、方法和技巧(第九章到第十四章)。因此,對于教師來說,進行教學(xué)內(nèi)容改革首先必須仔細分析這門課程各章節(jié)的特點、全書重點章節(jié)、考試考點范圍、平臺已有資源情況等等內(nèi)容,從而能在不影響專業(yè)計劃培養(yǎng)要求及考試前提下,對全書教學(xué)內(nèi)容進行分解,部分內(nèi)容弱化,部分內(nèi)容重點講,需要說明的是弱化不等于不講,而是選擇重點、難點內(nèi)容進行講解,只是一個講解點密度問題。對于C++過程化語言的基本概念和方法部分,由于其本身難度小,并且有完整的直播課堂資源,所以,這部分的內(nèi)容就可以弱化介紹,將第一章C++編程基礎(chǔ)、第二章基本C++程序結(jié)構(gòu)、第三章數(shù)據(jù)類型、第四章程序流程控制以及第六章簡單程序設(shè)計的主要學(xué)習(xí)任務(wù)與內(nèi)容留給學(xué)生自主學(xué)習(xí)。這部分內(nèi)容教師只需要告訴學(xué)生每章節(jié)的重點是什么,難點是什么。
可以準(zhǔn)備幾個簡單實用的經(jīng)典案例,通過VC++環(huán)境實際運行給學(xué)生看。讓他們覺得C++程序用有實用價值,并且也不復(fù)雜。然后,詳細介紹VC++的開發(fā)環(huán)境使用的幾個關(guān)鍵步驟,包括項目建立、關(guān)閉、打開、程序調(diào)試(錯誤定位及常見的錯誤提示信息)。這個環(huán)節(jié)應(yīng)該走在課程教學(xué)的前面,這樣學(xué)生在邊看教材、邊看直播錄像的自主學(xué)習(xí)中遇到的很多感興趣或困惑的內(nèi)容,都可以放到VC++下去測試,這既能有效地幫助他們克服自學(xué)中的問題,又能幫助他們鍛煉動手能力。
對第一部分的第五章函數(shù)需要教師重點講解。函數(shù)編寫及函數(shù)調(diào)用也是考試的主要考點之一,但同時也要給學(xué)生準(zhǔn)備一些編程習(xí)題。教材的第二部分所涉及的兩個章節(jié):數(shù)組與結(jié)構(gòu)、指針與引用都是重點章節(jié),建議教師重點講解,并補充鏈表的建立和遍歷。第三部分是全書的重點、難點部分,整個面向?qū)ο蟛糠謨?nèi)容包括六個章節(jié),由于面向?qū)ο蟊硎痉椒ǖ奶厥庑?,建議學(xué)生自主學(xué)習(xí)第九章,教師重點講解第十、十一、十二、十三及十四章。
教師上課最好要用生動的電子講義,并配以一定的實例。因為是本科課程,教材內(nèi)容多,每節(jié)課要講授的內(nèi)容多,跨越的章節(jié)也多,如果采用傳統(tǒng)的板書形式來講授,會浪費很多書寫的時間。同時,用多媒體上課可以實時用電腦演示一些程序?qū)嵗?,學(xué)生即時看到運行的結(jié)果,學(xué)習(xí)效果非常好。用動態(tài)的電子講義來講解,配以實時運行的程序,學(xué)生既有理性的認識,亦有感性的認識,教學(xué)效果可達到事半功倍。
(四)練習(xí)測試
學(xué)生都是業(yè)余學(xué)習(xí),在校時間不長,與教師見面的機會不多,課后如果不配以一定的練習(xí),學(xué)生很容易將堂上講授過的內(nèi)容忘記。所以,必須給出每一章要做的習(xí)題,這些習(xí)題可以是教材上的,但最好是教師自己準(zhǔn)備的一些更具有綜合性的問題。另外,本課程亦是動手能力很強的一門課,編程能力的提高必須配以大量的練習(xí),才能提高學(xué)生的編程能力和算法分析能力。很多學(xué)生在堂上能聽懂教師的講授,但考試時很多類似的編程題不會做,這就是平時缺少練習(xí)的原因。所以,最好在每次課堂講授結(jié)束之前,布置一些相關(guān)的測試題,測試題的題型、難度,輔導(dǎo)教師要根據(jù)學(xué)習(xí)者的學(xué)習(xí)水平來設(shè)置,要達到檢測和激勵的作用。學(xué)生按時完成測試后,教師要及時進行批閱,找出學(xué)生共性的錯誤,在課堂上進行講評,這樣有針對性的講評對學(xué)生有很大的幫助。
(五)答疑解惑
教師通過答疑能夠監(jiān)控學(xué)生短期學(xué)習(xí)行為,引導(dǎo)學(xué)生承上啟下,同時,及時糾正其產(chǎn)生的偏差。答疑的形式可以采用以下方式。
電話、電子郵件可作為上機輔導(dǎo)的輔助手段。電話使用方便,但不是免費的,有的問題也很難用語言表達清楚;電子郵件是免費的,但交互太慢,效率不高。通過電話和電子郵件與學(xué)生交流,適合解決一些簡單的問題。
課程論壇可作為解決公共問題的發(fā)布點。在學(xué)校的教學(xué)平臺上,每門課程都有論壇,教師和學(xué)生要充分利用這個交流平臺。有一些問題具有公共性,教師要具有預(yù)見性,將這些問題摘出放在論壇的顯要位置,這樣既可方便學(xué)生,又可減輕自己回答學(xué)生問題的工作量。
建立課程的QQ學(xué)習(xí)群。QQ聊天工具幾乎每個學(xué)生都會使用,教師可以用QQ申請一個學(xué)習(xí)群,開學(xué)初就將QQ學(xué)習(xí)群的號碼公布給學(xué)生,所有學(xué)習(xí)這門課程的學(xué)生都可以加入群。大家在群里共同討論學(xué)習(xí)的問題,不管認識的、不認識的,都可以發(fā)表見解,有很好的學(xué)習(xí)氛圍,學(xué)生可以相互解答問題,也能大大減輕教師的答疑工作量。
推薦一些優(yōu)秀的學(xué)習(xí)網(wǎng)站給學(xué)生。要學(xué)好程序設(shè)計類課程,在個人努力的同時,要與別人多交流。學(xué)生可以經(jīng)常訪問一些專業(yè)的學(xué)習(xí)網(wǎng)站,與全國各地甚至國外的編程高手交流,以達到自主學(xué)習(xí)、提高水平的目的。
(六)作業(yè)講評
作業(yè)講評可達到系統(tǒng)指導(dǎo)與全面復(fù)習(xí)的目的。具體實施方式有:(1)課后作業(yè)講評。在對章節(jié)小結(jié)時,以課后習(xí)題來驗證分析方法與計算步驟,加強學(xué)生的應(yīng)用能力。(2)形成性考核冊講評。重在對本課程知識點的融會貫通,以點帶面達到綜合復(fù)習(xí)的目的。
(七)復(fù)習(xí)指導(dǎo)
開放教育期末考試成績是衡量學(xué)習(xí)效果的主要依據(jù),期末復(fù)習(xí)工作的質(zhì)量直接關(guān)系到考試的效果和考風(fēng)考紀的優(yōu)劣。所以,期末復(fù)習(xí)工作應(yīng)作為重點來抓,本人主要采用以下方式對該課程進行復(fù)習(xí)指導(dǎo)。
充分利用網(wǎng)絡(luò)上的期末復(fù)習(xí)資源,在鞏固知識的基礎(chǔ)上增加復(fù)習(xí)的針對性,同時,鼓勵學(xué)生參與在線測試,認真做模擬試題和往年的試題,起到熟悉題型、自查和摸底的作用。中央電大和省電大的該課程教學(xué)輔導(dǎo)欄目中提供了單選題、填空題、程序填充、寫出算法運行結(jié)果排序、寫出算法功能和改錯及程序設(shè)計等綜合練習(xí)題,通過這些綜合題的下載練習(xí),可使復(fù)習(xí)更具有針對性。完成這些綜合題后,可以下載歷年的試題進行模擬測試,從而可以找到自己復(fù)習(xí)過程中的不足。
學(xué)生復(fù)習(xí)要抓基礎(chǔ),抓重點,大膽放下部分難點。筆者對往年考試的試卷進行分析、篩選,對考試時經(jīng)常遇到的問題要有所側(cè)重。通過對以往考試的試卷進行分析,發(fā)現(xiàn)一般基礎(chǔ)內(nèi)容占70~80%,難點只占20~30%,復(fù)習(xí)時就要大膽放下難以弄懂的難點內(nèi)容,將精力全部投放到基礎(chǔ)內(nèi)容,對大部分學(xué)生來說,掌握基礎(chǔ)內(nèi)容并不難,這樣,大多數(shù)學(xué)生都能考及格,雖然這對學(xué)生學(xué)習(xí)來說不是最佳方案,但對于考試過關(guān)來說,不能不認為是可行的方法。
[1]王萍.C++面向?qū)ο蟪绦蛟O(shè)計[M].北京:清華大學(xué)出版社,2005.
[2]徐孝凱.面向?qū)ο蟪绦蛟O(shè)計實驗[M].北京:中央廣播電視大學(xué)出版社,2003.
[3]劉文英.《面向?qū)ο蟪绦蛟O(shè)計》課程教學(xué)模式的探索與實踐[J].湖南廣播電視大學(xué)學(xué)報,2006,(1).
[4]梅炳夫.《面向?qū)ο蟪绦蛟O(shè)計》課程教學(xué)模式的探索[J].廣西輕工業(yè),2008,(8).
G712
A
1672-5727(2011)02-0094-03
韓明慧(1978—),男,江蘇東臺人,江蘇廣播電視大學(xué)東臺學(xué)院講師,主要從事計算機相關(guān)學(xué)科的教學(xué)與研究。