摘 要: 計算機分為硬件和軟件兩大部分,從邏輯角度而言,計算機的軟件部分可以使用高級語言轉(zhuǎn)化為低級語言控制運行計算機并得到結(jié)果,能夠有效地控制計算機完成相應(yīng)的工作。本文講述對包含多種計算機語言的NIIT教程的教學研究,并提出一些想法和對未來教學的探索。
關(guān)鍵詞: NIIT;計算機語言;教學方法
近年來隨著計算機軟件的飛速發(fā)展,印度國家信息學院(NIIT)跟中國許多高校都有著良性合作;由于教材都是純英文版,初學者有著雙重的語言壓力包括英文閱讀壓力跟編程語言閱讀壓力,往往教學效果不夠理想,學生跟不上課堂的節(jié)奏,教學質(zhì)量得不到保障。首先本文提出了NIIT教學過程存在的一些問題,然后針對相應(yīng)的問題提出了一些教學研究的想法和探討。
一、 NIIT教學中存在的一些問題
(一) 語言閱讀問題
NIIT往往是從大學第一學年便開始教學,對于大部分剛剛升入大學的同學而言,編程語言英文閱讀量是高中階段沒有遇到過的,往往閱讀時找不出重點,而且由于剛剛接觸專業(yè)知識,對專業(yè)術(shù)語不夠敏感,往往錯過重要知識點。英文解釋理解不夠透徹,也會加大程序代碼的理解難度。
(二) 學生基礎(chǔ)薄弱
對于專業(yè)的初學者,基礎(chǔ)都是相對薄弱的,需要慢慢積累,想要快速地進入狀態(tài)是有一定的難度的。NIIT課程包含JAVA、C、C++、C#等語言,還有一些常用的建模方法。由于語言的邏輯是有相關(guān)性的,上手一門語言后再學其他語言就會比沒有基礎(chǔ)的初學者相對比較容易一些。事實上學生會在很長的一段時間內(nèi)處于基礎(chǔ)起步階段。
(三) 自主學習意識弱
大學前的教育都是應(yīng)試教育和老師督促型教育,使得絕大部分學生都是服從心理,不去掌握自己的本學科的專業(yè)方向,進入大學之后,會有高等數(shù)學,大學物理等公共課程的困擾,再次讓學生們繼續(xù)高中的固定思維,缺乏培養(yǎng)自主思考和自主學習的意識。高等本科院校的每門課程是很重要的,雖然專業(yè)知識的課堂學習時間有限,作為工程性較強的計算機學科的學生應(yīng)該要學會多面思考和自主充分合理地安排自己學習時間,自主安排學習的計劃和任務(wù),以更好的心態(tài)來學習計算機入門編程語言。
二、 NIIT教學的探討與學習
(一) 理論與實踐同步
“紙上得來終覺淺,絕知此事要躬行”,行內(nèi)的大部分編程人員都認為,要學好編程就要多敲代碼,多敲代碼才能更加的理解代碼。大學課程任務(wù)重導(dǎo)致學生沒有充足課程時間進行實踐,常常是在學期末進行課程設(shè)計,學生無法將實踐與課堂同步,所以需要安排學生在相應(yīng)的時間及時進行一些實踐操作練習,同時布置一些編程任務(wù)和在線上討論,以更好的對編程語言進行理解,吸收。
(二) 改變教學方法
在NIIT教材中,包含了大部分的主流編程語言,學生或多或少對其中的一些語言有所了解,可以借助語言間的一些語言邏輯上的相關(guān)性,掌握一些開發(fā)的基礎(chǔ)經(jīng)驗,根據(jù)學生的學習效果,不斷地調(diào)整教學進度和教學方法,為學生后面的課程打牢基礎(chǔ),學生才會有更多的自主時間。
在理論相關(guān)的教學中,結(jié)合書上的例子(需要學生自己輸入、調(diào)試、運行)講述一些比較難懂的知識點,應(yīng)該具體的向?qū)W生展示知識點的運用效果,刺激學生的求知欲,學生在輸入代碼時需要在學生間巡視,以幫助學生所遇到的不能理解的地方,有利于提高學生的學習效率和學習熱情。
本文提出兩種使用案例教學的方法:第一種是分塊教授,即用一個經(jīng)典的比較短的例子實現(xiàn)相關(guān)知識點,比如可以在講述for循環(huán)的時候用楊輝三角例子來具體實現(xiàn),以便學生更加深入了解知識點,對知識點的運用和注意點都有更深刻的認識。第二種是整體教授,當學生掌握一定程度的知識點時,就是使用一個完整的軟件或者程序代碼,在敲代碼的過程中運用知識點,學生對自己所敲代碼的最后實現(xiàn)會充滿著期待,必定會全神貫注輸入代碼,調(diào)試并運行。
(三) 任務(wù)驅(qū)動式
這里本文提出1+2學習模式,就是貫穿整個1學期階段整體的項目任務(wù)驅(qū)動,可以進行一些小項目分組實現(xiàn),首先要給學生分組,并給每組分配不同的項目,再在每個小組分組,把每個工作分配到個人,給學生進行分工討論,以及項目開發(fā)所需要做的前期工作的時間,讓學生學會獨立思考以及分工合作,培養(yǎng)團隊精神,在充分發(fā)揮個人的能力和特點的同時并拓展創(chuàng)新思維。任務(wù)是分為以下兩個階段。
第一階段是授課階段學習任務(wù)的分配,第二階段是期末階段學習任務(wù)的分配。在授課階段,布置作業(yè)或者分配任務(wù)時需要考慮到學生的時間,一般只需要布置一些可以體現(xiàn)本節(jié)課堂知識點的小程序的設(shè)計就可以,當然不能壓制學生的自主發(fā)揮的空間,鼓勵學生在實現(xiàn)任務(wù)所要求的功能時,可以加入一些自己的元素,比如添加一些小功能等等,可以把學生的作業(yè)當作期末總成績的一項指標,刺激學生學習的積極性。而且當學生在實現(xiàn)過程中遇到一些問題時,教師需要能夠及時解答,或者當學生在實現(xiàn)自己所添加的小功能時,教師在解答問題的同時還要鼓勵學生多翻閱資料,增加學生對這一方面的興趣,潛在地指出學生的研究方向(這對準備讀研的學生尤為重要)。
在一學期教學的期末階段,時間相對比較充裕,學生可以學會規(guī)劃項目的功能,設(shè)計界面樣式,按鈕的設(shè)計,以及主要的功能和輔助功能的設(shè)計等等。教師可以幫助學生解決課程設(shè)計中所遇到的一些問題,指導(dǎo)學生把握項目的各個方面。在指點學生的過程中需要提出一些問題來考察學生的學習情況和知識點的掌握程度。
兩個階段都很重要,都能促進學生對編程語言的理解和運用,教師在教學的同時,應(yīng)當注重在這兩個階段對學生的編碼量,和代碼質(zhì)量的要求,有助于提高教學質(zhì)量,達到所期望的教學效果。
(四) 代碼回顧與創(chuàng)新應(yīng)用
在學生完成一個小項目后,需要提醒或督促學生對項目進行回顧,再吸收,看看學生一段時間后能不能讀懂自己所寫的代碼,以培養(yǎng)學生的編碼風格,教師要督促學生在編輯代碼的同時加上注釋,這樣可以增強代碼的可讀性和軟件的可維護性;并對學生所寫的代碼進行評分,并作為評總成績的一項指標。同時教師給出新的項目命題或者學生自主創(chuàng)新的IDEA讓學生學期結(jié)束后用學的東西去實現(xiàn)。
三、 結(jié)束語
本文提到NIIT的教學方式對學生的學習和對代碼的理解會有很大的提高。任務(wù)驅(qū)動式學習方式是以教師做好引導(dǎo),在教學方法,課后作業(yè),課程設(shè)計以及對學生的平常要求上都需要留意留心,并注重培養(yǎng)學生的自主學習以及創(chuàng)新能力。在學生之間互相的討論和學習給項目提供有效的幫助,而且有助于培養(yǎng)團隊精神。本文所提方法在教學的過程中,應(yīng)當是側(cè)向于引導(dǎo)的,大學教育不同于大學前教育,應(yīng)當側(cè)重于學生自主動手能力、興趣和團隊精神的發(fā)展。
作者簡介: 桂易琪,江蘇省揚州市,揚州大學信息工程學院。