自從計算機編程產(chǎn)生以來,算法設(shè)計就占據(jù)了重要地位。以一個著名的例子為證:大詩人拜倫的女兒愛達編制了世界上第一個完整的程序,此舉是為了實現(xiàn)同事的一個設(shè)想而拿程序來實驗算法的。可見,算法設(shè)計是在程序設(shè)計之前,成為了程序設(shè)計的基礎(chǔ)。但令人遺憾的是,計算機編程被納入教學(xué)之后,算法設(shè)計在很長的時期內(nèi)卻沒有得到應(yīng)有的重視。尤其是中小學(xué)編程教育的前一發(fā)展階段,是以計算機語言的語法教學(xué)為主體的,算法的概念得不到確立,甚至不少教材對它竟忽略不計。
在中小學(xué)教育中,從計算機語言向算法設(shè)計轉(zhuǎn)變,是隨著計算機教育轉(zhuǎn)向信息技術(shù)教育開始的。在2000年的《中小學(xué)信息技術(shù)課程指導(dǎo)綱要(試行)》中,明確提出了算法設(shè)計思想的重要性。新一輪的信息技術(shù)教材也開始以算法設(shè)計為核心內(nèi)容之一,以問題解決的算法設(shè)計與編寫實現(xiàn)為思路實施教學(xué)。2004年,高中新課程開始實施。在高中數(shù)學(xué)新課標(biāo)及新教材中,開始以10個課時左右的時間來開展完備的算法教學(xué),算法概念、算法描述、程序?qū)崿F(xiàn)都有所涉及。然而,在高中信息技術(shù)新課標(biāo)及其新教材中,算法卻有所減弱。在必修課中,算法僅作為計算機編程解決問題的一個環(huán)節(jié)簡要涉及。在“算法與程序設(shè)計”這門選修課中,算法相對比較完備,但受選修課的影響面窄等客觀因素制約顯得分量輕了許多。值得慶幸的是,高中必修課正在倡導(dǎo)的基于“工作需求”的“方法與過程”的學(xué)習(xí),倒是與生活算法很是切合。
隨著高中信息技術(shù)課程的cOA3FyG1JHsTmygqkCKRjhfKfAmEtlvi9Z/a1dZQMeE=改革,各地中、小學(xué)課程的改革也逐漸浮出水面,算法與程序也日益得到重視。尤其是在信息技術(shù)課程核心受到質(zhì)疑或者仍然需要不斷探索、完善的情況下,算法在“方法”與“過程”的規(guī)律性上所表現(xiàn)出來的強勢,就很值得我們看重了。對于在傳統(tǒng)的計算機編程算法的概念之外的形態(tài)與作用,無論是稱生活算法,還是叫工作需求,或是其他名稱,都不是關(guān)鍵。關(guān)鍵是,我們要在利用它的時候注意它的另一個重要認(rèn)知維度——人的思維方式與計算機的思維方式之區(qū)別。
我在講課時,經(jīng)常舉一個關(guān)于程序紊亂的故事:管理你生活起居的機器人的程序亂了,在你沉睡時竟把你搬到了學(xué)校,然后恭恭敬敬地遞上牙刷……學(xué)生笑過之后,一起討論機器人智慧的來源和思維單調(diào)性原因的所在。無論多么智能的程序,分解到最后仍然是一種人為算法的預(yù)定,多復(fù)雜的變化都應(yīng)有所準(zhǔn)備,總體上仍然是在執(zhí)行一種“串行”結(jié)構(gòu)。但是,人的思維卻并非如此,是類似“并行”的結(jié)構(gòu)。所以,人能夠隨時分散思維、跳躍思考、靈感突現(xiàn)……試問,有多少人的周末能夠按計劃度過?即使沒有別人突然的打擾,自己的突然決定也會把自己的算法修改得面目全非。在日常生活中,我們有很多時候預(yù)見性、過程性都是復(fù)雜多變的,不少事往往也有始無終。這與現(xiàn)階段的計算機算法有著非常明顯的差異。我們要從(生活)算法去認(rèn)知、學(xué)習(xí)、工作,還需要對算法的概念進行基于人的不同的思維方式發(fā)展與界定。所以面對機器智能時代,要關(guān)注大腦的活躍是不是會受到機器化的抑制,感性的東西是不是越來越少,遵規(guī)循律是不是越來越多。希望我們能夠重視對機器“思考”方式的革新,讓機器“思考”的方式更加人性化。以求我們思考的機器化也得到更具親和力的發(fā)展,永葆我們思維豐富的天性。
總之,在中小學(xué)信息技術(shù)課程中,我們要注重從計算機的優(yōu)勢特點來思索算法設(shè)計的發(fā)力點,要發(fā)揮計算機的處理速度快、能存儲、會判斷、自動化強等優(yōu)勢來補充、改善我們的生活與行為算法,并且以我們的思維方式不斷去影響、發(fā)展和創(chuàng)新更具智能化、人性化的算法。
蒼山點題
如果我們不反對做事需要有一定的方法,并且需要經(jīng)歷一個過程才能得出結(jié)果的話,那就不會反對我們的生活的確與算法有很大的關(guān)系。我們學(xué)習(xí)的恰恰就是各種各樣的生活算法的設(shè)計方法,或者說要實踐各式各樣目的的算法歷程。這就需要一種不斷培養(yǎng)自己的能力,尤其是基于或借助現(xiàn)代化技術(shù)來更好地設(shè)計與實現(xiàn)自己的算法,并得出良好的結(jié)果,這樣的能力在現(xiàn)代社會生活中很重要。但正是由于技術(shù)具有多面性、局限性和發(fā)展性,需要我們的算法及其設(shè)計能力都要不斷地更新與發(fā)展。不論算法在形式上如何發(fā)展,但有一點不變,即它永遠(yuǎn)是智慧的產(chǎn)物,其發(fā)展必將與智慧越來越親和。