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