前言:中文期刊網精心挑選了計算機編程自學教程范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。
計算機編程自學教程范文1
關鍵詞:網絡教學;任務驅動;程序設計能力
中圖分類號:G642 文獻標識碼:A
1程序設計能力培養的現狀與存在的問題
程序設計能力在計算機學科知識體系結構中具有核心位置,對計算機專業的學生來說,他們不僅應該具備這種職業技能,它也是學生學習后續專業課程所應具有的基本能力。目前我國高校計算機專業在培養學生的編程能力上存在很多問題。第一,各門課程相互獨立,沒有從整體上進行良好的規劃和安排,各自的培養目標和任務不明確,因此,每門程序設計課程都從講解最基本的語法開始,把有限的時間浪費在不必要的重復上。第二,教學重點沒有放在編程能力的培養上。教師通常按照一本教材,將上面的知識點一一給學生進行講授,由于課時有限,課程結束時,學生學到的僅僅是程序設計語言的基本語法,而真正的編程能力卻沒有得到培養。第三,學生成績考評通常以期末筆試試卷成績為主,在這種成績評定模式下,學生把大量時間浪費在對語法的死記硬背上,更加抑制了學生編程能力的形成。第四,在教學中教師處于絕對主導地位,學生只是被動地接受,不能充分發揮學生的主觀能動性。由于實際教學中存在的這種種問題,造成的直接后果就是大部分學生沒有真正具備基本的編程能力,“成績好”的學生并不意味著具有優秀的編程能力。從以上分析我們已經看到,要使學生真正具備高水平的編程能力,在教學模式和教學方法上必須進行大膽的改變。為此,我們提出了一種全新的程序教學模式――基于網絡教學的程序設計能力培養模式。
2基于網絡教學的程序設計能力培養模式
2.1編程能力培養相關課程的整體規劃
首先,作為教師我們要分清程序設計語言的教學和程序設計能力的培養是完全不同的。程序設計能力的培養需要若干門程序設計語言以及其他計算機專業課程的相互配合,程序設計能力的形成是一個循序漸進,各種計算機專業只是相互融會貫通的過程。要使學生獲得高水平的編程能力不是簡單的一蹴而就的過程,不是一個教師或一門課程就能辦到的。對此我們必須有充分的認識,從整體上做好編程能力培養的各課程的整體規劃,使各課程緊密配合,共同完成培養編程能力的目標。
整個學院要以培養編程能力為核心,重新安排各相關課程的順序、應完成的目標和任務。(1)將編程課程劃分為連續相關的三個階段,分別是基礎編程、編程提高、綜合編程。這樣的課程規劃和傳統的基本是相似的,問題的關鍵是我們必須使各部分緊密配合。(2)將學生應該掌握的所有知識和能力進行劃分,為每一階段確定明確的目標和任務。(3)按照階段目標和任務的劃分重新編寫教程,避免無謂的重復,使各階段有效配合,編寫合適的教程是我們的重點和難點。(4)為每一階段建立明確的達標點,學生只有在該階段達標的情況下,才能進入下一階段的學習。(5)成立專門的編程能力培養教研室,組織教師以培養學生編程能力為中心相互配合,相互交流,而不是各自為戰。
2.2基于網絡教學的程序設計能力培養
進行了整體的規劃之后,我們應該如何有效地完成各階段的教學呢?傳統的方法是課堂講授加上機實驗,結果表明這種方式沒有取得好的效果。由于程序設計課程和我們傳統的理工科課程有著很大的不同,它非常強調實踐,實踐越多效果越好,只掌握理論不進行實踐,可以說根本不能培養出編程能力。如果我們仍使用課堂講授加實驗的老模式,再加上課時的限制,結果必然是導致學生重理論、輕實踐。所以,我們必須進行徹底的大膽的改革。我們提出了如下措施。
(1) 學生通過視頻課件自學基礎知識。程序設計課程的理論比較簡單,難點是上機操作和學生運用知識去創造性地解決問題。在教學實踐中我們也經常聽到學生反映上課都聽懂了,老師講過的例子也都沒問題,可讓自己去編寫調試一個簡單的程序往往做不出結果。傳統模式中教師將大量的時間用在學生比較容易理解的語法上,當然也就沒有時間對學生進行真正的編程能力和上機操作的培養。學生自學基礎知識,一方面可以培養學生的自學能力,另一方面可將節約下來的寶貴的課堂時間用于上機實踐。
(2) 采取真正以學生為主體的任務驅動式學習。首先將課程內容劃分為幾個階段,每一階段包含相關的若干知識點,經過精心設計將知識點融入到系列任務之中,讓學生通過完成任務掌握知識培養能力。例如對循環知識點的學習,教師可設計若干個任務,其中第一個任務給出設計過程及代碼,第二個給出設計過程,第三個只給出問題描述,這三個任務要求學生必須完成,再給出若干難度遞增的任務讓學生選做。每一階段的所有知識點全部學習完成之后,再為該階段設計幾個較為復雜的綜合性任務。整個課程學習完之后,對學生進行分組,要求每組必須完成一個綜合性的項目。
(3) 培養扎實過硬的上機調試糾錯能力。學生覺得編程難主要有兩方面的原因:一是沒有形成解決問題所需的良好的邏輯思維能力,二是覺得上機調試糾錯難。特別是調試糾錯成了學生學習編程的一道難于逾越的鴻溝,作為教師有責任為學生搭建一座通向彼岸的橋梁。根據以往的教學經驗,學生在上機過程中會遇到許多共性的問題,如果我們能將為學生解決問題的過程公開在所有學生面前,一定可以起到事半功倍的效果。為此,我們可在實驗室中配備一臺投影儀,將正在問問題學生的電腦屏幕投影在大屏幕上,這樣教師的解答便可讓所有關心此問題的學生知曉。通過這種方式,肯定能有效提高所有學生的調試糾錯能力,從而為編程能力的形成奠定堅實的基礎。
(4) 充分實現教師與學生,學生與學生之間的交流互動。教師通過指導學生上機的過程實現了與學生的充分交流,還可以通過網絡教學系統中的答疑系統、論壇等與學生進行更深入的交流。這種充分的交流是傳統課堂教授方式所難以達到的,在此基礎上,教師可階段性地總結學生存在的問題,并進行重點講解。教師的這種有針對性的講解,往往能得到學生的高度關注,從而獲得非常好的教學效果。
(5) 成績評定充分重視實踐。要使學生真正重視上機實踐,必須改變傳統的重理論輕實踐的考試方式。學生的最終成績可由三部分組成,一部分是平時成績,一部分是期末考試成績,一部分是綜合項目成績。平時成績由教師根據學生的出席情況和任務完成情況打分;期末考試采用在線考試,試題包含理論部分和編程實踐部分;綜合項目分由學生所在小組的項目得分和小組內成員的打分綜合評定。
(6) 支撐環境的建設。首先是網絡教學系統的建設,要求系統具備視頻課件、Powerpoint課件、各種參考資料、答疑系統、網上論壇等功能;其次是實驗室的建設,除了配備投影儀外,還應將所有電腦建設成為可由教師集中控制的智能化的網絡教室,這是值得進一步研究的課題。
2.3在其他課程中延伸編程能力的培養
具備基本的編程能力是后續課程如操作系統、數據結構等的基礎,同時這些后續課程的學習又可以促進編程能力的提高。為每一課程設計一個綜合性的大作業,既能加深對該課程的理解,又能進一步提高學生的編程能力。但是單憑教授該課程的教師指導學生完成大作業,肯定會心有余而力不足。所以,學院應該為這些課程配備若干名經驗豐富的指導教師。
編程的精髓在于實踐,學生通過完成大量的任務和若干個項目,一定能在大量的實踐中逐步形成扎實的編程功底。
3總結
為了解決計算機專業學生編程能力普遍較弱的問題,在我院軟件工程專業教學模式的基礎上,通過深入地研究,我們提出了基于網絡教學的以任務驅動為核心的編程能力培養模式。在這種教學模式中,能充分發揮學生的主觀能動性,學生是真正的主體,教師只是一個引導者;以培養學生的編程能力為中心,強調通過大量的編程實踐在潛移默化中逐步形成扎實的編程基本功;這種模式注重編程能力培養的連續性,認為編程能力的培養不僅要依靠程序設計課程,還要在其他專業課程的學習中不斷得到加強和提高。
在實際教學中,我們用此種模式對部分學生進行教學,實踐證明這種模式對學生編程能力的形成有良好的效果。這種模式對提高學生的編程能力有較強的現實指導意義,但是它還存在著不足和需要改進的地方。例如,連貫的相互配合的教程的編寫,建設智能化的網絡實驗室,教師隊伍的組織和管理都是值得我們繼續深入研究的問題。在以后的教學中,我們還會不斷探索,繼續豐富完善這種模式,使之能夠為我國的軟件行業培養出具有過硬編程能力的人才作出貢獻。
參考文獻:
[1] 李陶深.以能力培養為核心的程序設計課程教學研究與探索[J].廣西大學學報,2008(9),36-37.
[2] 周榮輝.學生程序設計能力培養的思考[J].吉林大學學報,2005(8),122-126.
[3] 翁健紅.提高學生編程能力的實踐與思考[J].科技信息,2007(17),217.
[4] 舒蘭英.以小組學習模式進行軟件工程的教學[J].西華師范大學學報,2003(1),138-140.
To Explore the Programming-Capability-Building Mode Based on Web-Teaching
SHU Lan-ying
(School of Computer Science, China West Normal University, Nanchong, Sichuan 637002, China)
計算機編程自學教程范文2
關鍵詞:程序設計;教學方法;能力
中圖分類號:G642文獻標識碼:A文章編號:1009-3044(2008)31-0922-02
An Exploration of VB Program Design Teaching Methods
REN Hong-jian
(Nantong University, Nantong 226019, China)
Abstract: In teaching program design, finding new ways to solve the dryness and complexity of program design has always been a fascinating subject for many computer science educators. This article provides several ideas on the following aspects of teaching VB program design: how toimprove course quality, how to enhance the teaching effectiveness, how to nurture and strengthen students’ ability and creativity in analyzingand solving a design problem, etc.
Key words: program design; teaching methods; aptitude
1 引言
掌握和應用好計算機知識是當代大學生必須具備的基本條件,為此,國家教育部根據高等院校非計算機專業計算機培養目標提出了“計算機文化基礎”、“計算機技術基礎”、“計算機應用基礎”三個層次的教育體系。VB屬于第二層次范疇的計算機編程語言,已被列為公共必修課程。
程序設計語言類課程的指導思想是:使學生通過學習既掌握高級編程語言的知識、編程技術和基本算法,又掌握程序設計的思想和方法,更具備利用計算機求解實際問題的能力,能靈活運用高級語言進行程序設計。其重點是培養學生掌握程序設計的思想和方法,難點是作為程序設計的入門課程,應當如何引導學生突破傳統的思維方式,培養程序設計的新思想。本文結合教學實踐與理論思考,談談在教學上的一些經驗和體會。
2 VB教學中存在的問題
第一,課堂教學模式單一。目前,Visual Basic 課程的教學模式主要是使用多媒體教室,教師采用Powerpoint課件加實例演示的教學模式,該模式比以前的“粉筆”+“黑板”教學模式有了很大的提高,加大了課堂的信息量,更直觀形象了。但如果僅采用這樣單一的教學模式,學生的學習過程還是以教師為中心,課件的信息量很大,授課速度又快,學生的自主學習和協作學習的積極性仍然沒有得到充分調用;第二,上機實驗過程中,學生是自主學習,忽視教師的引導作用。首先,在上機實驗中,教師布置上機的任務后,學生自行練習,教師就忙于解答學生提出的問題,而不引導全局。在這種放任學生自主練習的狀況下,整個上機實驗過程節奏松散,而實驗任務對大部分同學來說臺階過高,于是學生感到很茫然,便很快就喪失了學習興趣,甚至厭惡上機。其次,上機人數又多,學生遇到的問題往往得不到教師的及時解決,于是挫折感增加,產生厭煩心理。
3 教學方法的探索
3.1 實例教學,培養學生的學習興趣
程序設計是一種構造性的技術,對于學生來說,程序設計的思維方式和概念都是全新的,學生接受起來很困難,因此必須研究程序設計的教學方法。教學的過程是師生交往、共同發展的互動過程。在程序設計教學中要從學生的興趣入手,利用學生對事物的好奇心,選擇一些有趣的、有實際意義的程序,激發學生的學習興趣。俗話說:教無定法,學無定法。打破課本原有以知識的邏輯結構體系為順序組織課堂教學的方式,以學生的已有知識為基礎,按照學生的認知規律,遵循先易后難、先具體后抽象的原則,通過觀看、模仿、理解、總結、提高五個階段進行教學。讓學生成為學習的主人。
興趣是最好的老師,興趣決定了教學效果的好壞。讓學生明確學習目的很重要,而教師還要在教學過程中去提高學生的學習興趣,使學生對學習本身或過程有興趣,而不是在外界剌激下只關心學習的結果,這直接影響到學生對這門課程的學習效果。教學中僅僅單純地傳遞教材內容是不夠的,在第一堂課中,教師應從學生的興趣入手,利用其對事物的好奇心,選擇一些有趣的、有實際意義的程序,從一開始便激發學生的學習興趣。
3.2 創設問題情境,激發學生學習的主動性
在教學過程中提出問題,集中學生的注意力,促進學生主動思考、主動探索,可以使學生在學習的過程中成為主體。實際上,問題是最好的老師,是學生學習的引導者,沒有問題便沒有深入,老師要引導學生在解決問題中學習,即提出問題,留給學生時間思考、討論、解決問題,從而更深入地展開學習。實踐證明,這種教學方法充分調動了學生學習的積極性和主動性。
例如,在講數組的概念時,老師先設置問題編程計算10個數的和。根據以前所學,學生會想到需要定義10個變量用于存放這10個數。再進一步要求計算50個數的和。這時候如果再定義50個變量,則會非常麻煩,學生此刻開始思考該如何合理地聲明變量。再深人一步求100個數的和。此時,當教師引出數組的概念、分析數組的性質時,學生不僅能夠很容易記住數組的性質,還能夠知道在什么情況下使用數組,事半功倍。
3.3 舉一反三,培養學生的創新思維
編程教學的根本目的是要使學生能夠獨立地編寫程序,而這正是編程教學中最大的難點。在實際教學中,筆者采用以下幾步措施來逐漸使學生能夠獨立編一些簡單的程序:第一步精講例題,詳細分析其算法,逐一列出解題步驟,給出完整程序;第二步精心挑選很多程序題,讓學生閱讀程序,寫出程序執行結果,這一步十分關鍵,讀懂理解人家的程序是以后自行獨立編程的前提;第三步是讓學生做程序填充題和程序改錯題,即給出相應程序,把其中一些關鍵地方留空,讓學生填充,或在程序中提供一些錯誤語句,要求學生修改正確;第四步出一些類似例題的編程問題,讓學生模仿完成;第五步讓學生獨立編寫簡單的程序。例如,為了讓學生獨立解決求s=1-1/2+1/3-1/4+...+1/99-1/100的程序,首先詳細分析了求s=1+2+3+...+99+100 的編程,程序如下:
Dim i As Integer
Dim sum As Integer
sum=0
For i=1 to 100 step 1
sum=sum+i
Next i
Print "sum="; sum
然后,將上題中“For i=1 to 100 step 1”這一語句略作改動:①For i=1 to 100 step 2;②For i=0 to 100 step 2;其余不變,讓學生閱讀程序并分析。程序①實際上是求100 以內奇數之和,程序②實際上是求100 以內偶數之和。再將上題中sum=sum+i 這一語句改成sum=sum+1/i,其余不變,那又如何呢?學生很容易得出程序實際上是求s=1+1/2+1/3+...+1/100,進一步引導學生,這個程序有什么問題?答案是由于求和結果不可能是整數,故語句Dim sum As Integer 應該改成Dim sum As Single。再引導學生思考,要求s=1-2+3-4+...+99-100的編程,上題中循環體sum=sum+I 應該怎樣改動? 結合相關數學知識,學生很自然得到正確結sum=sum+i*(-1)^(i+1)。有了上述的層層鋪墊,相信學生是能夠獨立完成s=1-1/2+1/3-1/4+...+1/99-1/100 的程序代碼設計的。
能獨立編程后,還應善于總結。有些編程題,表面上看起來好象不一樣,它們實質上可以用一道通用的程序來實現,只要改變其中的一條語句就可以了。如:
例1:編程求任意三個數中的最小數。
例2:編程求任意三個數中的最大數。
例3:編程求任意三個數中的中間數。
例4:編程將任意三個數從大到小輸出。
例5:編程將任意三個數從小到大輸出。
這五個編程題,雖然不一樣,但只要會編寫其中的一道題程序,其它題目只要在這道題程序的墓礎上,修改最后的PRINT語句就可以了。
4 根據課程特點,做好歸納小結
程序設計的教學,一般都是從局部分散地講,如果不歸納總結,學生則難以形成完整、清晰的框架,因此,教學中要及時歸納、做好小結。歸納可以是一個控件多方面(如事件、屬性設置等)的歸納,也可以是對一種結構的歸納(如分支結構的歸納)??偨Y可以是一課的總結,也可以是幾課的總結。歸納總結的形式也可以多種多樣,可以使用文字概括,也可以使用圖示總結,重難點要著重強調。這種歸納總結,一方面有利于學生理解知識、融會貫通,順利實現知識遷移,另一方面對于提高學生的學習效率也有很大的幫助。
總之,教學方法在程序設計教學中舉足輕重,它制約著程序設計教學的效率。雖然教無定法,但萬變不離其宗,絕不能離開程序設計的教學內容和教學目標、脫離學生的知識背景和認知規律。采取符合學生認知規律的、科學的教學方法,必然會提高教學效率,取得事半功倍的效果。
5 不斷培養學生的自學能力
在教學中筆者還注意不斷培養學生的自學能力。自學能力在大學生能力層次當中屬于最重要最基本的,首先,有了自學能力就可以通過課外閱讀,學到課本里沒有的東西,知識豐富了,眼界也開闊了,對于活躍學生的思想,提高科學思維能力大有好處:它可以使學生打破老師和課堂的限制,在學習上獲取更大的自由。其次,學生在學校里生活畢竟是短暫的,現在提倡終身教育,將來不論他們從事哪種工作,都需要在工作中不斷提高文化科學水平,這種提高主要靠自學,即自已閱讀有關書籍和報刊,運用已掌握的知識,去認知新知識,自覺發現問題,再歸納概念,作出判斷,進而解決問題。再次,針對計算機的飛速發展、日新月異的特點,自學能力的成長和提高,顯得更為重要。
在不斷的教改實踐中,筆者始終堅持一個指導思想,即充分相信學生的學習潛力,減少學生對教師和教材的依賴性,激發學生的學習興趣,提高學生學習的主動性,培養學生的好奇心,從而發展學生的分析能力,觀察能力和獨創能力,使學生真正成為課堂的主體。
參考文獻:
[1] 牛又奇,孫建國.新編Visual Basic 程序設計教程[M].蘇州:蘇州大學出版社,2002.
[2] 沈國珍.《VB 程序設計》課堂教學的探索與實踐[J].福建電腦,2007(4).
計算機編程自學教程范文3
關鍵詞:中等職業技術院校 計算機 專業設置 發展
在職業技術教育類的培訓中,計算機專業處于一個不斷下滑,日漸淡化的境地,再沒了曾經的熱度。這是社會發展的階段性的必然結果。短短20年的時間,計算機從無到有,從單位到家庭,從稀有到普遍,發展異常迅速。如今,傳統的計算機普及率和電腦相關知識的普及率都已經很高了。
面對這種情況,我們職業技術類的計算機專業應該如何生存并發展,就成為了一個問題。就此,談及以下幾點,與同行進行交流分析。
一、與其他專業相結合的教學設置
計算機本身就是一個工具而已,發展到現階段,正是將它“工具”的屬性特征表現了出來。如今各行各業計算機的使用是廣泛而普及的,計算機作為基礎的支撐平臺已是最基本的現實了。
這就為我們計算機專業帶來了一個生存的空間,那就是與其他專業的結合,在協助他們培養出高素質、多技能的人才同時,伴隨著其他專業的成長而成長。
例如:財會類專業。如今的金融、稅收、財會電算化系統俱已是網絡化的工作了,一切程序都由網絡辦公進行解決。社會需要能夠掌握新型工作方式的人員,而我們則可以將自身專業知識與財會類傳統專業知識相結合,協助他們提高培養目標的同時,為本專業的發展開辟新的道路。
這個方式幾乎可以與所有的專業相結合,如:汽車類專業。如今汽車制造工藝的核心除發動機研發,幾乎全部都是由電腦主板控制,汽車故障則采用電腦診斷儀來進行判斷處理。
還譬如:醫護專業。現代醫療的模式更依賴先進的醫療設備,由電腦控制的設備對采樣數據進行分析,其結果成為如何治療的基本依據。
再如現代工業4.0的提出,現代制造業的技術升級,機器人替代人力勞動率的不斷提高等等,這些壓力必將迫使職業技術教育要培養出更高素質的人員。
二、自身專業的教學設置
就自身專業而言,計算機的軟、硬件的發展與更新都是非常迅速的。計算機專業的教學設置更是要追求:創新,務實。
創新就是新知識、新技術的不斷學習更新,并將新知識和發展的趨勢盡快傳遞給學生,以使其適應發展的要求。
務實就是面對社會的發展,一要及時調整更新專業設置,培養出社會需要的人員;二要及時調整專業教程,培養出符合社會需要的技能突出的人員。
三、意見與建議
職業技術教育教學是非常困難的一件事情。面對著基礎文化知識不扎實,學習能力不高的學生,想要把專業的新知識與技能傳遞給他們確是一件不容易的事情。筆者認為還是要把握好基礎與應用兩個方面來開展。
1.基礎方面
掌握好理論與實際操作的分配。事實證明,案例教學對本專業是一條很好的路徑。在案例教學中,由于職業教育對象的特殊情況,往往會在理論與實際操作的教學分配上出現不同意見。個人意見:如硬件的原理、軟件的編程基礎數據結構等課程還是要有的。這樣的基礎課程由于教學效果不明顯,實際應用不上,往往被忽視了。但是這樣的基礎課程,對于一個學生未來的成長是至關重要的。它可以使得學生在離開學校后具備自學的能力,受益終生。
2.應用方面
這應該是工作的重點,學生培養的最終目標是由這個環節體現出來。學生所掌握的技能多與少、水平的高和低,對于社會需要的適應性,都由應用這個環節的工作成果來決定。
在應用方面,筆者認為教程的設置應該在除了考慮專業自身傳統教程的設置需求以外,更加需要考慮到社會的現實需要來進行教程的設置,從而達到教育目標。
例如:電子商務專業。作為現在的一個社會的行業熱點,我們在做教程設置時只教授計算機的傳統知識顯然是不行的。如何解決呢?
我們可以將之細分。就電子商務專業而言,可以開網店。那么店鋪的裝修,可以設置繪圖設計等專業軟件教程;還需要進行產品推廣,那么就設置廣告宣傳、產品設計等專業軟件教程;不開店做運營,那么就可以設置網絡安全等專業軟件的教程。
一個專業的設置,其基本培養目標是讓學生在掌握基本的專業知識上,加強對現實社會需求技能的培養,成為社會需要的人員,從而實現專業設置的目標。
四、小結
今天的計算機專業雖然面臨著階段性的困難,但是應該說現在又是一個非常好的機遇。傳統的計算機已經被網絡所替代,傳統的PC也已經為移動終端取代,智能化的發展成果將很快走進生活。
計算機編程自學教程范文4
【關鍵詞】C語言;程序設計;項目教學
C程序設計是計算機專業的一門必修課程,也是學習如何編程的入門課程。不少高校不僅在計算機專業開設了C語言的課程,而且在非計算機專業也開設了C語言課程。我院建筑工程學院各專業也開設了這門課,主要是培養學生邏輯思維能力。但每學期期中教學質量檢查的學生座談會上,都有學生提出C語言枯燥、難學的問題。為此,我們專門成立課改小組,分析問題存在的原因,并探究改善教學效果的方法,讓學生真正喜歡上C語言,并能從中學到一些編程方法和技巧,為以后專業服務。
1.目前存在的問題
傳統教學方式多以課堂講解、小程序模擬為主,學生雖然理解了各章節知識點,但遇到一個復雜問題仍然不能綜合運用所學知識來解決它。實驗課大多是驗證性是實驗,缺少設計性實驗。學生在調試程序過程中,出現編譯錯誤,不能快速找出原因,缺乏理論與實踐相結合的能力和英語閱讀能力。由于上機學時有限,課堂不能完成的實驗需要學生課后繼續完成,在自學過程中有疑問,是查找資料解決還是請老師幫助都是我們改善教學效果要解決的問題。另外,學生在學期前1/3時間里還能保持精神集中、興趣飽滿的狀態投入學習,但隨著內容難度的加深,慢慢會出現畏難、厭學等情緒,需要老師多加鼓勵,并利用學生感興趣的游戲、管理系統、圖形等案例激發他們的學習興趣。
2.改變教學方式及方法,合理評價學生能力
2.1 項目教學,注重能力培養
實踐中我們采用“項目驅動”教學法對整個教學過程進行整合,課程教學從學科式課程模式改變為工作過程導向課程模式,整個教學過程分為兩個階段:基礎知識儲備階段和項目開發階段?;A知識儲備階段,結合教材章節設計簡單的任務,使學生對C程序設計的基本概念、基本語法規則以及基本編程技巧進行熟悉、演練,直至基本掌握。我們選擇了通訊錄輸入輸出、計算器設計、個人所得稅計算、九九乘法表等小實驗引出相關知識點的學習。項目開發階段,學生以小組為單位選擇適當的項目按照一定的規范進行項目實踐。我們的項目包括系統類、小應用程序類和游戲類。通過教師的指導,以及學生自己到圖書館查閱資料或網上咨詢,以小組為單位完成程序的編寫,并能運用學過的技巧獨立上機調試完成。以團隊協作的方式,培養了學生的創新精神、創新能力,調動學生學習的主動性,挖掘學生的學習潛能,激發學生的學習熱情,讓學生體驗到學習的樂趣。
2.2 精選案例,激發學習興趣
在課堂中我們引用了生活中的一些實例來講解知識點,比如以“計算器設計”講解switch語句的用法,以“ATM界面設計”為例講解函數的調用,以“掃雷游戲”中旗子、雷爆炸為例講解圖形函數的應用等。舉例宜少而精,分析應細而透,要盡可能安排較多的上機時間,讓學生有充分鍛煉、展示才華的機會。
C程序設計是一門實踐性很強的課程,學生只有在實際編程過程中才能提高自己的能力,唯有通過實踐,學生才可以加深理解,培養興趣,獲取知識。比爾·蓋茨及他的伙伴艾倫·保羅的編程知識基本上都是從實踐中摸索出來的。因此教師的主要作用是“授之以漁”。只要有興趣,無師也能自通,而且興趣的培養比知識的獲取更為重要。
2.3 項目考核,掌握整個程序開發過程
C程序設計課程我們采用項目考核與平時成績相結合的考核方式,培養學生使用程序設計方法求解問題和編程的能力。在項目開發階段,我們為學生提供多個題目,各設計小組自由選擇,也可以令立新題目,要求每個班題目不能相同,小組共同討論分析所選項目的基本功能,引導學生進行系統總體設計,畫出項目模塊功能圖,分任務模塊編寫代碼,最后提交項目報告。
課程成績由兩部分構成:平時成績(包括平時作業、課堂表現等)占40%,項目考核成績占60%。項目考核成績按100分記,具體得分標準見表1。
3.創新教學手段
3.1 采用現代化教學媒體
積極制作和使用多媒體課件,充分高效地發揮這些教學工具的功能,但要注意講課時不能將例題的程序代碼一下子全部顯示在屏幕上,運行時只能看到最后結果,學生沒有機會思考代碼過程,更無法體會其運行過程中可能出現的錯誤。較好的方法是,對于比較難理解的知識在課件中制作形象的動畫,比如循環的執行用動態鼠標指針跟蹤運行過程就能很好幫助學生理解。教師對經典的題目進行現場編程或將代碼逐行顯示,并設置典型錯誤,讓程序在調試中完善,讓學生在思考中掌握,引導學生讀懂英文提示,提高程序改錯速度。比如數組的賦值,可以采用分步執行,讓學生逐步看到每個數組元素值的變化。
3.2 合理利用Blackboard教學平臺
合理利用網絡資源可以解決學生課外學習困惑和教師輔導答疑等問題。Blackboard(簡稱BB系統)是我院廣泛使用的教學平臺。在C程序設計的BB系統中,我們提供了該課程的所有教學資料,包括課程介紹、課程大綱、考核方案、課件、教學案例、項目報告模板等,還有常用軟件的相關下載及討論板,為學生提供作業提交、小組討論、師生互動、作業評分等功能,方便使用,資源共享,溝通自由,是教學相長的好伙伴。
4.總結
在教學實踐過程中,我們在內容上進行了合理的刪繁就簡,在教學方法上采取了項目驅動,在教學手段上采用了多媒體演示與板書分析相結合,對難于理解的概念設計了大量的動畫說明。平時成績和項目考試成績評定采用了人性化評分原則。通過情境教學、項目教學、課堂討論、上機操作等方式,給學生提供一個激發創造性的環境,真正做到以學生為中心。以上是我們在C程序設計教學中關于教學方法、教學手段等方面的一些微薄經驗,已經收到了較好的成效,學生學習本課程的積極性明顯提高,動手能力明顯增強,教學質量顯著提高。關鍵是學生參與了整個項目的設計與開發過程,對程序設計的思路與方法得到了新的認識和鍛煉,培養了其邏輯思維能力,為后續專業課的學習奠定了基礎。
參考文獻:
[1]張燕紅.C語言程序設計的教學探討[J].電腦科技,2010,3.
[2]謝書良.創設“多元”條件,激發學生潛能[J].計算機教育,2010,1.
[3]馮林.淺析C語言程序設計教學[J].機電技術,2010,1.
計算機編程自學教程范文5
Abstract: Computer programming courses are the important specialized basic course in computer science, which are also applied courses, and are generally considered as the most difficult courses to understand and study. In order to arouse students' interest and passions of computer porgrammingcourses study, considering that most of students like to play computer games, the teaching theory of learning through play was introduced in the process of experimental teaching, teaching effects and quality have been improved.
關鍵詞: 游戲化學習;程序設計;Robocode;Java
Key words: learn through play;programming courses;Robocode;Java
中圖分類號:G42 文獻標識碼:A文章編號:1006-4311(2011)01-0211-02
0引言
程序設計課程不僅是計算機學科的專業基礎課,也是很多非計算機專業學科的必修課,它是人們進入計算機世界的必經之路。特別是對于計算機專業的學生來說,程序設計課程更顯得格外地重要,其重要性在美國計算機學會制定的CC2001教程和CC2002中國計算機科學與技術教程2002中的程序設計課程相關的教學內容和學時數比例(14個知識單元中程序設計與算法占3個,計90個核心學時,占32.2%)即可以體會到[1]。國內外很多著名大學都越來越重視程序設計課程,因為程序設計課程一方面是專業的啟蒙課,通過程序設計使學生漸漸了解計算機是怎么工作的,通過程序設計使學生慢慢掌握該如何讓計算機為我們解決各種各樣的實際問題,如數學問題、物理問題、工程問題、管理問題等;另一方面,程序設計課程也是訓練學生各種能力如抽象思維能力、邏輯判斷能力、解決問題能力的重要平臺。但是從實際教學效果來看,學生普通反映程序設計課程枯燥難懂,教學效果不甚理想。建構主義教學論原則指出:“復雜的學習領域應針對學習者先前的經驗和學習者的興趣,只有這樣,才能激發學習者的學習積極性,學習才可能是主動的”[2]。為了激發學生持久的學習興趣和產出極大的驅動力,教育工作者一直在不停地進行積極的探索,在程序設計課程實驗教學過程中引入游戲化編程學習就是其中一個行之有效的方法。
1游戲化編程學習概述
游戲化學習(Learn through play),又稱為學習游戲化,是指采用游戲化的方式進行學習。是目前在國內外比較流行的教學理論。愛好游戲是人類的天性,如果將學生對游戲的癡迷轉化為學習的動力,則可以使教師的工作事半功倍。這正是游戲化學習研究的核心。
關于游戲化學習,目前存在兩種觀點:
第一種觀點使用了評估中學習的理論,利用編制的教學游戲軟件,將教學的內容通過游戲或網上競技的方式引導學生學習,避免了傳統教學模式的死板和枯燥。采用這種方式學習者處于被動接受知識的角色,適合年齡偏小的學習者,如中、小學生,這不是本文探討的重點。
另一種觀點認為游戲本身就具有學習性。因此,通過研究游戲的特性,用這些特性來改造學習機制,使得學習本身成為一項游戲――而不是將其中的內容通過游戲表達出來。這種觀點主要存在于歐美國家,特別是新西蘭。采用這種方式學習者是主動地積極地接受知識,適合具有一定自學能力的成年人,編程游戲就是其中一種,這也是本文探討的重點。
編程游戲(Programming Game)是一類特殊的電腦游戲,通常以“機器人競技仿真”的形式出現,它們有一個共同的特征:游戲玩家在游戲平臺上使用某種編程語言創建和控制自己的機器人,把它放到賽場上同其他機器人比賽,直至分出勝負;游戲過程中,機器人不是由鍵盤、鼠標或操縱桿來控制,而是由游戲玩家為它設計的程序來自動指揮;游戲玩家最終目標就是編制一個高效的機器人控制程序來取勝。這類游戲具有很強的編程教學功能,以寓教于樂的方式,打破了傳統教育的模式,讓使用者在玩游戲的同時提高自身的學習水平,可以作為計算機語言課程有效的教學輔助工具。
2游戲化編程學習的實踐
游戲化編程學習是指在學習游戲化觀念的指導下,在教學設計過程中就培養目標、評價手段方面,就學習者年齡心理特征與教學策略等方面,借鑒游戲,設計、選擇適當的游戲化編程學習工具、評價方法和教學策略。
2.1 游戲化編程學習平臺的選擇游戲化編程學習平臺早期大多為歐美國家的編程業余愛好者自發組織開發,由于時間較早,界面較為簡單;近年來一些AI(人工智能)教育專家為自己的專業領域搞研究也開發了一些游戲化編程學習平臺,這些平臺融入了更多的人工智能的策略因素;在選擇游戲化編程學習平臺時,考慮到高校目前程序設計課程多為面向對象程序設計的這一特點,引入Robocode編程學習平臺。
Robocode是IBM的一位工程師MatNelson用Java語言所創造的機器戰斗仿真引擎,是一款專門為程序員設計的游戲半成品。是一個很容易使用的機器人戰斗仿真器,可以在所有支持Java2的平臺上運行。開發Robocode程序是一個極佳的Java學習過程,是編程人員(學生)之間的智力較量。程序完全是由JAVA編寫,并且玩家必須要創造一個繼承自Robot類的類。Robocode的基本設計思路是:將不變的事物與變的事物隔離開來,其中不變的事物是Robocode的程序庫,如對坦克的著色、畫出等,而變的事物是坦克戰斗策略的控制。這樣游戲者(學生)只需專注于設計戰斗策略,編寫機器人坦克智能程序,讓它能移動、進攻、防守、躲避、開火等,其對手則是其他程序員編寫的智能程序。在學生竭盡全力編寫自己的機器人去戰勝對手的機器人的過程中,學生的編程能力就在不知不覺中無形提高。
2.2 制定教學目標教學對象:軟件工程專業和計算機專業低年級學生,學生有C語言課程的學習經歷。
教學目標:①培養學生建立面向對象的程序設計思想;②理解Java語言對封裝、繼承、多態等面向對象程序設計特性的實現;③學生能夠使用Java語言來編寫程序解決實際編程問題,為后續課程打好基礎;④依據Robocode游戲規則,靈活創造出各種游戲策略;⑤培養獨立思考、自主探索的習慣,以及不斷進取的學習作風。
2.3 設計教學過程RoboCode把許多教學過程設計反映在其中,一個好的游戲化編程學習平臺的選擇意味著教學成功的一半,但RoboCode游戲化編程學習效果更取決于教師對平臺功能掌握程度與駕馭的本領。
整個教學過程中,采用演示、講解、編程、歸納、課外的教學模式,取得了良好的教學效果。
演示:抓住首次演示Robocode游戲時學生的癡迷,這時的學生很自然體現為學習的主體,教師的任務是讓他們的作為學習主體的熱情不要衰退,要因勢利導。介紹新知識點時,教師向學生演示采用相應技術的機器人控制程序,或者讓學生自己動手運行與觀察,通過形象直觀的演示,多數學生會對新知識產生濃厚的興趣,為下一步的學習做好鋪墊。
講解:演示結束后,教師要及時引導學生把注意力轉移到教學的實質階段――編程知識的學習,當講解到一些技術要點時,演示該技術在游戲中的具體運用,往往能起到事半功倍的教學效果。教師要做好學生學習前進方向的“領路人”,要注意多加點撥,適時提出思考要求。
編程:程序設計類課程屬于實踐環節很重的課程,所以教師應該精講多練,給學生充足的時間進行編程實踐,學生以小組為單位協作學習,每個小組3-4個組員,每個小組開發3-5個坦克控制程序。
比賽:進行小組間的坦克比賽,檢驗各小組學習的效果,游戲的勝負結果即對游戲者的評價。可以采用淘汰賽制或循環賽制,為避免兩組對抗時的偶然因素,還可以多局對抗制。對于學習深度已達到一定層面時,還可以調整比賽的時間參數長短,使學習者會針對性地重新調整游戲策略。教師在游戲化編程學習評價中,要充分利用RoboCode平臺的相關評價功能,充分調動學生的學習積極性。
歸納:比賽后,教師要及時引導學生找出勝利或失敗的原因,然后進入下一輪的編程和比賽,在循環比賽的過程中,學生的編程能力得到了極大的提高。同時,教師在歸納的時候要強調相應課程知識點的運用,以達到良好的教學效果。
課外:開展課外編程游戲競賽;召開技術講座或經驗交流會;為方便技術交流,可開設BBS專區以供討論學習。
3游戲化編程學習教學實踐中的幾點思考
游戲化編程學習教學實踐是在游戲化學習的理念指引下進行的一次探索性的教學實踐活動,從游戲化編程學習平臺的選擇、游戲化編程學習過程的設計與實施以及教學效果,我們有以下幾點思考。
3.1 提升了學生學習層次,強調了策略性學習游戲化編程學習教學實踐首先選取了一個學生感興趣的教學平臺,其次設計了符合課程特點的教學過程,充分調動了學生學習的積極性,在學習的過程中學生的角色發生了變化,由以前的被動變成現在的主動。
3.2 將游戲與學習相結合給青少年學習以極大的驅動力和持久的學習興趣建構主義教學論原則指出:“復雜的學習領域應針對學習者先前的經驗和學習者的興趣,只有這樣,才能激發學習者的學習積極性,學習才可能是主動的”。由此可見,學生學習主動性的激發與貼近學生興趣的游戲有很大的關系。
3.3 游戲化編程教學效果是多重的,有利于將學生迷戀于不健康的網絡游戲中解脫出來從游戲化編程學習中學習程序設計的效果是顯然的,而通過這一與電腦游戲看似類同的編程游戲,把一批迷戀于不健康網絡游戲中的學生解脫出來,讓他們學會編程,讓他們學會通過動腦來玩游戲,這將受到學校老師們、家長們的大力支持。游戲化編程學習教學實踐活動中就有原來是游戲迷的變成為編程迷的例子。
3.4 游戲化編程教學實踐可以實現教育者與被教育者雙向協同評價一方面教師可以對全體學生進行整體評價,另一方面學生在自主探索的過程中對自己的程序或策略進行評價,教師還可以根據對學生能力差異掌握的情況下,有意識的讓水平相近的學生進行互相評價。這種做法,有利于激勵所有的學生奮發向上。
4結束語
教學實踐證明,采用游戲化學習的教學模式,將Robocode引入到Java課程的實驗教學中,使學生對Java語言產生了濃厚的學習興趣,不但提高了學生的編程能力,還能鞏固其他知識,因為編寫Robocode不但會用到Java的編程知識,還會涉及到數據結構、設計模式、人工智能、數學、物理等方面。并且在游戲的過程中就完成了學習任務,充分調動了學生學習的積極性、主動性和創造性,培養了學生分析問題和解決問題的能力,培養學生的團隊協作精神,對提高程序設計課程教學質量有較大的現實意義。當然,Robocode游戲不可能囊括編程語言的所有方面,作為輔助教學工具,用來激發學生學習的熱情,無疑是十分有益的。
參考文獻:
[1]鮑春波.程序設計課程教學方法新探[J].學術問題研究(綜合版),2007(2):101-601.
[2]李其龍.從德國教科書看當代教學論思想[J].全球教育展望,2001(3):19-22.
[3]王梅,于京.應用于教學的Java編程競賽平臺的開發[J].科技信息,2008(18):70-72.
[4]江耿豪,鄭煒冬.編程游戲在計算機語言教學中的運用[J].漳州師范學院學報(自然科學版),2006(2):128-131.
[5]于海峰.對計算機教學中Java語言的思考[J].農業網絡信息,2006(4):82-83.
計算機編程自學教程范文6
關鍵詞:案例引導教學;任務實驗;自主學習
中圖分類號:G642文獻標識碼:A文章編號:1009-3044(2011)30-7471-02
Discussion of Teaching Method in High School Computer Foundation Course
WEN Chang1, HUANG Qin2
(puter Science College, Yangtze University, Jingzhou 434020, China; 2.Wuhan Railway Vocational & Technical College, Wuhan 430205, China)
Abstract: Control the basic knowledge in computer and have the computer application ability, is a request that arithmetic figure information turn the society to put forward to the university student. The educational teaching method in computer foundation in high school must reform continuously, then can adapt to the technical and quick development in computer. This text aims at the problem that university computer foundation teaching face, the study passes case example leading, mission experiment etc. teaching method, promote student's independence study, pushing the computer foundation education.
Key words: example leading; mission experiment; independence study
由于計算機在各地普及程度不同,致使學生已有的計算機水平參差不齊,給高校計算機基礎教學帶來一定困難。該課程的特點是知識點多、操作性強,若按傳統的單一的“灌輸式”教學方法來講授,現在大大壓縮的課時已滿足不了要求,而且不利于學生自學能力的培養。如何改進教學方法,兼顧不同水平學生,解決上述的問題和矛盾,都是我們急需探討的課題。以下筆者結合自己的教學感受談談教學方法的改進。
1 教學方法改進
對非計算機專業學生,要教會他們一些實用性強、操作難度不大、不用編程的方法,并培養一定的自學能力。若以傳統教學方法把內容灌輸給學生,學生完全處于被動學習狀態,容易喪失學習興趣。所以應以學生為主體、教師為主導,引導學生自主學習,才能收到事半功倍的教學效果[1]。
1.1 案例引導教學
課上講授新知識時,用案例演示,并在演示過程中以問題的形式引出各個概念和知識點,引導學生自主思考,然后教師給出答案和解決方法,讓學生在做某件“事”、解決某些“問題”的過程中將各個知識點理解消化。這種方法需要老師找到典型的案例,下面以電子表格Excel 制作的“學生成績統計表”為例講講具體實踐過程[2]。(見表1)
先把Excel 2007強大的“電子表格”與Word 2007中的“表格”進行比較,提出如何用Excel來制作表格。引出工作表、單元格等相關概念。通過對“總分”、“平均分”、“等級”列的填寫,引出公式和函數的使用及單元
格的引用。如總分和平均分即可用公式也可用函數,等級可用函數等。另外同一列又可用函數填充,自動生成結果,從而引出學生不易理解的單元格地址引用中的“絕對引用”、“相對引用”及“混合引用”概念。表格制作完成后還能對其中數據進行管理和分析,引出Excel又一大特色――強大的數據處理功能,如排序、篩選、分類匯總,另外還可為表格創建圖表、數據透視表等,以便對數據進行直觀的分析。
可見,這個典型案例基本涵蓋了Excel各知識點和相關概念,通過案例引導教學,使枯燥抽象的概念變得生動具體,易于學生理解掌握。
1.2 課件與板書融合
目前大多院校都已采用多媒體課件教學,若課件只是把黑板的內容搬到大屏幕上,教師只是播放課件,忽視了與學生的交流,就違背了計算機輔助教學的初衷。事實上,黑板加粉筆的講授方式師生交互性強,仍然具有多媒體無法替代的作用。對于一些類似于推導、運算過程,例如數制轉換,板書方式更能引起學生注意,引導學生思考;對于教學內容中較抽象的內容,例如計算機系統知識,用多媒體豐富的圖片、動畫、聲音等形式表現,使枯燥知識形象生動,能刺激學生感官,激發興趣,易于理解,這又是傳統板書方式不可比擬的。另外,某些簡單內容可直接讓基礎好的學生上臺演示操作,激發學生能動性??傊瑧斫膺@兩種教學方式相輔相成的作用,多與學生交流互動,有選擇地使用多媒體或板書。
1.3 加強上機實踐
計算機基礎最大特點就是操作性強。如果按實驗教材的操作步驟,要求學生完成上機作業,學生多無興趣。所以我們把實驗以任務的方式交給學生。在上新課之前提出上機任務,只給實驗要求不給操作步驟,基礎差的學生帶著任務與問題,聽課會更認真學習會更主動;有一定基礎的學生則可立即著手做,對其他同學也是鞭策與促進。由于任務以每章一個大作業的形式交給學生,不規定詳細內容,學生所交的作業內容豐富、形式多樣,體現出學生的創意,有些還反映出學生課外自學知識。這種任務驅動模式大大提高了實驗教學的效果,培養了學生帶著問題自主學習的能力。
2 結束語
針對計算機基礎教學面臨的問題,我們大力改進教學方法,通過案例引導、任務驅動和互動教學來調動學生學習的積極性。根據教學內容將多媒體課件和板書這兩種現代與傳統的方式融合,揚長避短,提高教學效果。這些教學方法之間相互聯系,相互作用,較好地兼顧了不同起點學生的情況,適應了本課程知識點多、操作性強、學時少的特點;激發了學生對計算機的興趣和熱愛,培養了他們的自學能力、綜合運用知識的能力等。
在今后的教學中,我們還要繼續對計算機基礎課程的教學進行探討研究,探索行之有效的教學方法,努力提高教學質量,在改革中求發展,使計算機應用基礎的教學更加符合計算機教育發展的客觀規律,培養適應社會需求的計算機應用人才。
參考文獻: