李磊+馮廷鈺
摘要:隨著科學(xué)技術(shù)飛速的發(fā)展,計算機技術(shù)已經(jīng)成為了我們生活中不可或缺的一部分,所以我們把如何培訓(xùn)學(xué)生編程思維作為本次培訓(xùn)的重點,在本次培訓(xùn)中我們把課程分為五個具體方面,分別是了解編程思維與基本技能,培養(yǎng)抽象思考能力,培養(yǎng)分析問題的能力,培養(yǎng)思維嚴密邏輯清晰的能力和學(xué)會運用讀,寫,改的編程方法解決問題的能力。
關(guān)鍵詞:計算機;編程思維;編程方法
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2016)15-0158-02
1 評估需求和確定教學(xué)目的
1.1 需求分析
編程能力的培養(yǎng)在教學(xué)過程中的重要性主要體現(xiàn)在以下幾點:
1) 在學(xué)習(xí)的過程中鍛煉學(xué)生的邏輯思維能力,更準確地抓住問題的本質(zhì),找出解決問題的方法;
2) 有助于更深入的理解計算機工作原理,更靈活的應(yīng)用計算機技術(shù)解決各自專業(yè)領(lǐng)域中的有關(guān)問題。
3) 培養(yǎng)學(xué)生的自學(xué)能力,綜合開放性實驗完成過程中,通過查找和閱讀資料能有效的啟發(fā)學(xué)生擴寬學(xué)習(xí)范圍,提高探索學(xué)習(xí)相關(guān)知識的積極性。
1.2教學(xué)目標
1.2.1 讓學(xué)習(xí)者了解編程思維與基本技能
學(xué)習(xí)者編寫程序或者編碼的質(zhì)量不高,最主要的原因在于教學(xué)過程中忽視了學(xué)習(xí)者思考習(xí)慣養(yǎng)成和能力訓(xùn)練。提高編程能力首先是培養(yǎng)編程思維, 即養(yǎng)成以程序的方式來思考問題,要使學(xué)習(xí)者理解編程語言也是一種語言,學(xué)習(xí)者應(yīng)該對一些基本的邏輯結(jié)構(gòu)了解。比如:循環(huán)結(jié)構(gòu)是編程語言中的重點和難點,在講解雙循環(huán)問題上時,可以利用九九乘法表,先讓學(xué)習(xí)者單循環(huán)打印1-9和換行,再讓他們思考九次“1-9循環(huán)和換行”怎么辦,學(xué)習(xí)者一般會想到只要在做一次循環(huán)就行,這時就可以提出雙循環(huán)概念,學(xué)習(xí)者根據(jù)學(xué)過的知識就可以很快解決,這種由簡單到復(fù)雜的教學(xué)手法,可以使學(xué)習(xí)者更好的理解。
1.2.2 培養(yǎng)學(xué)習(xí)者抽象思考能力
培養(yǎng)學(xué)習(xí)者抽象建模能力應(yīng)首先引導(dǎo)學(xué)生掌握編程的基本知識"并幫助學(xué)習(xí)者整理知識之間的聯(lián)系和線索"引導(dǎo)學(xué)習(xí)者從知識之間的聯(lián)系中去尋找解決問題的思路。
1.2.3 培養(yǎng)學(xué)習(xí)者分析問題的能力
在程序設(shè)計中"將待求解程序問題劃分為若干個處理步驟"將每個處理步驟封裝為處理過程或函數(shù)"當每個處理過程和函數(shù)解決和調(diào)試通過"則待求解問題得以解決# 又比如"程序設(shè)計語言的遞歸程序設(shè)計思想"將復(fù)雜的高階問題轉(zhuǎn)換為低階問題"當?shù)碗A問題得以解決"則高階問題依次求解。
1.2.4 培養(yǎng)學(xué)習(xí)者思維嚴密邏輯清晰的能力
所謂思維縝密"就是周到細致全面地考慮問題"枚舉清楚程序觸發(fā)的各種條件并明確其控制的有效性"控制好程序運行的各種狀態(tài)"盡可能地找出程序中的潛在錯誤。
1.2.5 運用讀,寫,改的編程方法
學(xué)習(xí)的能力和方法比掌握的知識更為重要, 培訓(xùn)者更應(yīng)該教會學(xué)習(xí)者編程領(lǐng)域的學(xué)習(xí)方法, 培養(yǎng)他們的學(xué)習(xí)能力, 而不是僅僅教給他們知識點。
1)讀代碼 :注重學(xué)習(xí)者閱讀程序能力的培養(yǎng), 要提高學(xué)習(xí)者的編程能力。
2)改代碼 :這個過程是第二階段,在讀透程序的前提,將例子程序作一些小的局部修改或擴展, 這樣做的主要目的是在熟悉一些語句用法。
3)寫代碼: 這個過程是第三階段,也可稱為是模仿階段, 在可以熟練改代碼的前提上,自己動手從頭寫一遍, 偶爾遇到一些小問題,可以通過對照范例來發(fā)現(xiàn)原因。這種學(xué)習(xí)方法強調(diào)了學(xué)習(xí)的漸進性, 能力逐步提高, 降低了學(xué)習(xí)的難度。
2 學(xué)習(xí)者和學(xué)習(xí)環(huán)境的分析
2.1 學(xué)習(xí)者分析
信息類型:入門技能,對該領(lǐng)域所具備的知識,對訪談的態(tài)度,對教學(xué)傳遞系統(tǒng)的態(tài)度,學(xué)習(xí)動機,學(xué)業(yè)能力水平,學(xué)習(xí)偏好,對培訓(xùn)機構(gòu)的態(tài)度,群體特征等。
數(shù)據(jù)來源:問卷調(diào)查,考試數(shù)據(jù),訪談,觀察等。
學(xué)習(xí)者特征:學(xué)習(xí)者應(yīng)是沒有編程基礎(chǔ)和經(jīng)驗但對于編程有一定興趣的大學(xué)生學(xué)習(xí)者可能知道一些編程語言的一些概念,但是沒有進行過具體的上機操作和編程邏輯思維的培訓(xùn)。學(xué)習(xí)者能夠了解計算機,對于計算機的基本使用沒有太大問題。認為將要學(xué)習(xí)的編程思維對于以后的編程學(xué)習(xí)很重要,好的編程思維可以幫助他們成為出色的程序員,而且這種思維可以使得他們以后無論學(xué)習(xí)哪種編程語言都會輕松應(yīng)對。
2.2 學(xué)習(xí)環(huán)境分析和應(yīng)用環(huán)境分析
信息類型:學(xué)習(xí)點的數(shù)量和特點,學(xué)習(xí)點對教學(xué)需求的滿足程度,學(xué)習(xí)點對學(xué)習(xí)者需求的滿足,模擬工作環(huán)境的可行性,管理/監(jiān)督支持,實施點的物理條件,實施點的社會環(huán)境,與工作環(huán)境相關(guān)的技能等。
數(shù)據(jù)來源:訪談,觀察,記錄,問卷調(diào)查。
學(xué)習(xí)環(huán)境特征:可以采用課上教學(xué)和課下教學(xué)的培訓(xùn)方案。課上教學(xué)可以包括:(1)課前回顧(2)課中啟發(fā)(3)課后小結(jié)三個方面課下教學(xué)可以構(gòu)造開放式的教學(xué)環(huán)境,可以將學(xué)生以3-5人為小組組織起來,自行尋找解決問題的思路和方法。促使學(xué)生誘發(fā)自己的內(nèi)在動力提高自己的編程思維和編程能力。
應(yīng)用環(huán)境特征:由于幾乎所有的學(xué)習(xí)者都是在校大學(xué)生,所以將培訓(xùn)班開設(shè)在學(xué)校即可,便于學(xué)習(xí)者學(xué)習(xí)。培訓(xùn)師在多媒體教室給學(xué)習(xí)者上課,每個人都要有一臺計算機,這樣學(xué)習(xí)者可以邊聽課邊練習(xí)。需要一個能容納20-30人的多媒體教室,可以設(shè)置一個班長,用以幫助培訓(xùn)師管理多媒體教室的日常事務(wù),比如:發(fā)放資料,教室的管理等。
2.3 績效目標
教學(xué)目標:學(xué)習(xí)者需要了解編程思維與基本技能,學(xué)習(xí)者需要增強抽象思考的能力,學(xué)習(xí)者必須掌握分析問題的能力,學(xué)習(xí)者需要具備思維嚴密邏輯清晰的能力,學(xué)習(xí)者能夠熟練運用讀,寫,改的編程方法。
績效目標:(1) 學(xué)習(xí)者需要養(yǎng)成思考能力,提高編程能力首先是培養(yǎng)編程思維,即養(yǎng)成以程序的方式來思考問題,學(xué)習(xí)者要理解編程語言其實也是一種語言,需要對一些基本的編程知識進行了解。(2) 學(xué)習(xí)者需要增強抽象建模能力應(yīng)首先掌握編程的基本知識,并可以整理知識之間的聯(lián)系和線索,學(xué)習(xí)者能夠從知識之間的聯(lián)系中去尋找解決問題的思路。(3)學(xué)習(xí)者能夠通過對復(fù)雜問題的簡單化來掌握分析問題的能力。(4)學(xué)習(xí)者需要了解所謂思維縝密,就是周到細致全面地考慮問題,枚舉清楚程序觸發(fā)的各種條件并明確其控制的有效性,能夠控制好程序運行的各種狀態(tài)并盡可能地找出程序中的潛在錯誤。(5)讀代碼:學(xué)習(xí)者對于網(wǎng)上搜集一些的編碼,經(jīng)過仔細研讀,通過了解其他程序員的代碼找出自身不足。改代碼:學(xué)習(xí)者通過自己的理解,將原先的代碼改動一部分,使程序出現(xiàn)新的功能。寫代碼:學(xué)習(xí)者運用所學(xué)知識可以自己編寫一個新的程序
2.4 教學(xué)策略