国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

A-levelCom puting對(duì)“算法與程序設(shè)計(jì)”教學(xué)的借鑒*

2012-08-15 00:45周曉燕
中國(guó)教育信息化 2012年14期
關(guān)鍵詞:數(shù)據(jù)結(jié)構(gòu)編程程序

周曉燕

(蘇州外國(guó)語學(xué)校,江蘇蘇州 215011)

一、A-level Computing課程基本情況簡(jiǎn)介

A-level(General Certificate of Education Advanced Level)課程是英國(guó)劍橋考試中心(CIE,Cambridge International Examinations)的金牌課程體系,以其國(guó)際權(quán)威性為許多國(guó)內(nèi)高中出國(guó)班所采用。A-level課程包含70多門科目供學(xué)生選擇。A-level課程的學(xué)制一般為兩年,第一年稱為AS-Level;第二年稱為A2-Level。課程的考核被設(shè)置為四次考試,第一年前兩次考試通過,獲得AS-level證書,第二年再通過后兩次考試,獲得A-level證書。

我國(guó)信息技術(shù)課程的相關(guān)內(nèi)容為A-level中的兩門課程,涵蓋計(jì)算機(jī)應(yīng)用(Computing)和應(yīng)用信息通訊技術(shù)(ICT,Applied Information and Communication Technology)。其中Computing課程的內(nèi)容包括計(jì)算機(jī)原理、軟件應(yīng)用、計(jì)算機(jī)編程、數(shù)據(jù)結(jié)構(gòu)、軟件工程、網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)等方面。顯然算法與程序設(shè)計(jì)部分的教學(xué)內(nèi)容對(duì)應(yīng)于Computing課程中的相關(guān)內(nèi)容,同時(shí)這部分內(nèi)容也是Computing課程的重點(diǎn)所在。

二、Com puting課程中算法和編程教學(xué)的突出特點(diǎn)

1.大綱不指定編程語言

Computing課程在使用編程語言方面和中國(guó)差別很大,教學(xué)大綱中不指定編程語言。與之對(duì)應(yīng),考試中的相關(guān)試題或要求使用偽代碼和流程圖來描述算法,或由學(xué)生使用任意一種自己掌握的語言來做答。教材中,AS-Level部分沒有使用具體的語言,A2-Level部分使用 Pascal語言作為范例,但教材中并沒有專門的章節(jié)來學(xué)習(xí)Pascal的語法。此外,在大綱相應(yīng)的教學(xué)指導(dǎo)中,不建議選用可視化的編程環(huán)境。

事實(shí)上,Computing的教學(xué)大綱不指定編程語言,并非不做要求。恰恰相反,需要教師幫助學(xué)生自主選擇,掌握一門甚至多門高級(jí)語言。教材中用Pascal的程序作為例子來講解問題,也并非要求學(xué)生一定就要掌握Pascal,相關(guān)參考書所使用的語言也并不相同,但可作為參考或自學(xué)時(shí)用。

2.系統(tǒng)講述了數(shù)據(jù)結(jié)構(gòu)相關(guān)知識(shí)

Computing課程中,數(shù)據(jù)結(jié)構(gòu)的內(nèi)容相對(duì)全面且深入,很多算法,例如遞歸、遍歷、排序都是結(jié)合特定的數(shù)據(jù)結(jié)構(gòu)提出和講解的。內(nèi)容包括表、鏈表、棧、隊(duì)列和(二叉)樹。

3.軟件的完整開發(fā)過程是教學(xué)重點(diǎn)

Computing課程主要講解瀑布模型,屬于軟件工程的內(nèi)容。我國(guó)的教材中這部分內(nèi)容也占了相當(dāng)?shù)谋戎?,但并沒有在考核中體現(xiàn)。而Computing的第四次考核,就是要求學(xué)生自己選題,完成一個(gè)實(shí)際開發(fā)項(xiàng)目,考查學(xué)生在完成項(xiàng)目過程中的每個(gè)步驟并分步評(píng)分,程序編寫僅占比30%。從Computing教材來看,很多知識(shí)點(diǎn)都在這部分內(nèi)容中詳細(xì)敘述。例如可行性分析和需求分析、用戶界面、接口設(shè)計(jì)、軟件測(cè)試的原則和方法等。

特別需要強(qiáng)調(diào)的是,在開發(fā)過程中,文檔寫作被尤其看重,也是考核的評(píng)分依據(jù),包括分析文檔、技術(shù)文檔、測(cè)試文檔、開發(fā)記錄甚至代碼注釋等方面。

4.知識(shí)內(nèi)容廣泛

綜合教材和大綱要求,Computing課程中和算法與程序設(shè)計(jì)除了上文涉及的相關(guān)內(nèi)容,還包括如下方面:

a.教材從匯編語言開始講述計(jì)算機(jī)語言,然后是高級(jí)語言,再到邏輯語言。其中對(duì)匯編語言和邏輯語言分別單列一章做了詳細(xì)的介紹。例如匯編部分,包括處理器的結(jié)構(gòu)、指令格式和尋址方式三個(gè)小節(jié),并有多個(gè)匯編程序的講解。

b.通過和面向過程編程方法的對(duì)比,講述面向?qū)ο缶幊?。通過程序?qū)嵗?Pascal)解釋類和對(duì)象的基本概念。

c.教材結(jié)合操作系統(tǒng),講述文件系統(tǒng)、I/O控制、內(nèi)存管理的基礎(chǔ)知識(shí)。

d.此外,按照大綱的要求,還簡(jiǎn)單介紹了并行計(jì)算、網(wǎng)絡(luò)計(jì)算機(jī)等先進(jìn)技術(shù)。

三、借鑒和教學(xué)實(shí)踐

客觀地說,中外課程的差別主要是由信息技術(shù)課在高中學(xué)科體系中的地位不同造成的。Computing雖然是70多門供選擇的A-level課程之一,但是一經(jīng)選定,其地位就相當(dāng)于高考課程。而現(xiàn)階段,我國(guó)的信息技術(shù)課的內(nèi)容受課時(shí)限制,深度取決于會(huì)考要求。所以不可能照搬A-level的教學(xué)模式。他山之石,可以攻玉,Computing課程的許多做法和經(jīng)驗(yàn)都能給我們有價(jià)值的啟示,加以吸收借鑒,并用于教學(xué)實(shí)踐,提升教學(xué)效果。筆者在如下三個(gè)大方面對(duì)自己的教學(xué)進(jìn)行了探索和改進(jìn),取得了理想的效果。

1.程序設(shè)計(jì)中重要概念的明晰

對(duì)于程序設(shè)計(jì)中一些重要的原理概念,學(xué)生往往由于局限于按部就班地學(xué)習(xí)一種計(jì)算機(jī)語言(VB)的編程,對(duì)其比較模糊,需要由教師指出并重點(diǎn)講解。

例如算法和語法的區(qū)分。Computing課程在 AS-level階段脫離具體的編程語,用偽代碼或流程圖講算法,這樣算法和語法的區(qū)分不言自明。但這樣的教法在我們的課堂上采用還不現(xiàn)實(shí),筆者在教學(xué)中采取了幾個(gè)變通的措施:①直接講解算法和語法的分別,并把Computing的教學(xué)方法介紹給學(xué)生。②嘗試對(duì)某些知識(shí)點(diǎn) (比如循環(huán)或選擇)只講解算法,語法由學(xué)生自學(xué)。③在分析學(xué)生程序錯(cuò)誤的時(shí)候區(qū)分語法錯(cuò)誤和算法錯(cuò)誤。

再如 “程序=數(shù)據(jù)結(jié)構(gòu)+算法”這一著名公式所表達(dá)的思想。因?yàn)槲覀儧]有像Computing課程那樣系統(tǒng)學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,所以普遍的情況是學(xué)生對(duì)數(shù)據(jù)儲(chǔ)存方式在程序中的重要地位不明確。筆者在教學(xué)實(shí)踐中,嘗試通過舉例來講解如果數(shù)據(jù)結(jié)構(gòu)不同則算法不同這一基本概念。例如同樣是順序查找,數(shù)據(jù)儲(chǔ)存為一維數(shù)組和二維數(shù)組算法上就有區(qū)別,前者用一層循環(huán)即可,后者需要循環(huán)嵌套。

2.利用少量課時(shí)簡(jiǎn)單介紹和程序設(shè)計(jì)相關(guān)的知識(shí)和技術(shù)

Computing課程內(nèi)容廣泛,這當(dāng)然需要更多的課時(shí)。但如果我們教師仔細(xì)挑選內(nèi)容,認(rèn)真組織語言,利用少量的課堂時(shí)間給學(xué)生介紹一些相關(guān)知識(shí)技術(shù)完全可以做到,而這對(duì)學(xué)生是非常有益的。通過研究,筆者挑選了一些比較重要同時(shí)也容易講清楚的知識(shí)點(diǎn)補(bǔ)充給學(xué)生。例如可視化編程、機(jī)器語言和高級(jí)語言 (編譯器的作用)、編程方法和操作系統(tǒng)的關(guān)系等等。這些知識(shí)在Computing課程中都是教材內(nèi)容,筆者的課堂講述很大程度上就是對(duì)Computing教材內(nèi)容的重新組織和提煉。

其中,可視化編程的概念筆者覺得尤為重要,因?yàn)槲覀兊膶W(xué)生一開始學(xué)習(xí)語言就是VB的編程環(huán)境,他們不知道非可視化編程是個(gè)什么樣子,甚至沒有程序從何處開始(入口)、到何處結(jié)束的概念。對(duì)此可由教師在課堂上編寫運(yùn)行一個(gè)命令行的程序讓學(xué)生有所認(rèn)識(shí)。

3.嘗試讓學(xué)生按照軟件開發(fā)流程完整地去做一個(gè)簡(jiǎn)單項(xiàng)目

這項(xiàng)工作是模仿了Computing考核的方式,但意義重大。我們是教學(xué)生做題目還是做項(xiàng)目,是編代碼還是編軟件。當(dāng)然在學(xué)習(xí)初期都是前者,但后者才是最終的目的。事實(shí)上,這項(xiàng)教學(xué)實(shí)踐也對(duì)應(yīng)了我國(guó)教課書第五章的內(nèi)容。這個(gè)教學(xué)環(huán)節(jié),讓學(xué)生親自動(dòng)手所產(chǎn)生的效果和講解一遍書本差別很大,況且現(xiàn)在很多學(xué)校教師對(duì)這部分內(nèi)容是讓學(xué)生自學(xué)的。

筆者在課程后期和學(xué)生共同選題,通過任務(wù)驅(qū)動(dòng)的教學(xué)方法,讓學(xué)生分組完成一個(gè)簡(jiǎn)單的項(xiàng)目,并借鑒Computing做法,要求學(xué)生做好文檔記錄,并將其和程序編寫共同作為評(píng)判依據(jù)。

雖然很多項(xiàng)目本身非常簡(jiǎn)單,有的是結(jié)合數(shù)學(xué)物理等課程,編寫軟件實(shí)現(xiàn)一項(xiàng)特定的計(jì)算;有的就是模仿我國(guó)教材內(nèi)容,對(duì)班級(jí)學(xué)生的各類信息進(jìn)行數(shù)據(jù)采集并做簡(jiǎn)單處理。“麻雀雖小,五臟俱全”,從需求分析到可行性分析、從方案設(shè)計(jì)到模塊設(shè)計(jì)、從編程到測(cè)試、從軟件維護(hù)到二次開發(fā),學(xué)生只有完整地經(jīng)歷一遍,才能對(duì)軟件開發(fā)的含義有所體會(huì),知道程序的編寫在其中起著核心但并非全部的作用。

當(dāng)然,由于各種局限,一個(gè)簡(jiǎn)單的項(xiàng)目不能說明所有問題,如果有時(shí)間,參考 Computing,還可以講解諸如文檔寫作的重要性、調(diào)試測(cè)試工作在項(xiàng)目中的地位、瀑布模型以外其他軟件開發(fā)模型等問題。

四、總結(jié)和后續(xù)工作

總體而言,Computing課程中算法和編程部分的內(nèi)容和教學(xué)方法與我國(guó)相比存在很大區(qū)別?!耙o學(xué)生一滴水,自己要有一桶水”,那么,對(duì)A-Level Computing課程的研究和思考,首先就是充實(shí)“一桶水”的過程。

更重要的是,如何將思考的成果融入自己的課堂,最終使學(xué)生受益。應(yīng)該說,上文介紹的三個(gè)方面還都是初步的嘗試,隨著課程改革的深入和高中信息技術(shù)地位的不斷提高,期望能有更多更有益的研究成果和教學(xué)創(chuàng)新。

猜你喜歡
數(shù)據(jù)結(jié)構(gòu)編程程序
數(shù)據(jù)結(jié)構(gòu)線上線下混合教學(xué)模式探討
編程,是一種態(tài)度
元征X-431實(shí)測(cè):奔馳發(fā)動(dòng)機(jī)編程
編程小能手
紡織機(jī)上誕生的編程
為什么會(huì)有“數(shù)據(jù)結(jié)構(gòu)”?
試論我國(guó)未決羈押程序的立法完善
“程序猿”的生活什么樣
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
高職高專數(shù)據(jù)結(jié)構(gòu)教學(xué)改革探討
揭西县| 弥渡县| 新巴尔虎右旗| 循化| 金秀| 中卫市| 云龙县| 静乐县| 会同县| 金昌市| 外汇| 象山县| 枣阳市| 田东县| 北辰区| 孝义市| 永福县| 申扎县| 巍山| 陇西县| 深圳市| 青阳县| 丽水市| 黑山县| 西乌珠穆沁旗| 胶州市| 麻阳| 米易县| 扬州市| 谢通门县| 宜城市| 黄大仙区| 永泰县| 平江县| 大港区| 石门县| 宁陕县| 阿拉善盟| 安吉县| 盐城市| 扎鲁特旗|