公務(wù)員期刊網(wǎng) 論文中心 正文

層層遞進(jìn)學(xué)生建構(gòu)項(xiàng)目式程序設(shè)計(jì)

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了層層遞進(jìn)學(xué)生建構(gòu)項(xiàng)目式程序設(shè)計(jì)范文,希望能給你帶來靈感和參考,敬請閱讀。

層層遞進(jìn)學(xué)生建構(gòu)項(xiàng)目式程序設(shè)計(jì)

摘要:以AppInventor設(shè)計(jì)電子相冊為例,對層層遞進(jìn)引導(dǎo)學(xué)生建構(gòu)項(xiàng)目程序設(shè)計(jì)展開分析。根據(jù)《中小學(xué)信息技術(shù)指導(dǎo)綱要》的課程標(biāo)準(zhǔn),結(jié)合AppInventor的教學(xué)特點(diǎn)構(gòu)建了任務(wù)分解、逐個突破、不斷完善的項(xiàng)目式教學(xué)模式。分析了項(xiàng)目式教學(xué)模式的基本思路,并結(jié)合實(shí)例介紹了具體的應(yīng)用策略,總結(jié)了該教學(xué)模式的研究成效,發(fā)現(xiàn)通過層層遞進(jìn)的教學(xué)模式能夠引導(dǎo)學(xué)生發(fā)現(xiàn)程序設(shè)計(jì)的樂趣,提升學(xué)生的邏輯思維能力。

關(guān)鍵詞:層層遞進(jìn);項(xiàng)目式;程序設(shè)計(jì);AppInventor;電子相冊

1AppInventor應(yīng)用現(xiàn)狀

自20世紀(jì)50年代匯編語言誕生以來,程序設(shè)計(jì)語言的發(fā)展就伴隨著計(jì)算機(jī)硬件的發(fā)展而不斷提升和變化,目前已經(jīng)誕生了幾百種高級語言。雖然程序設(shè)計(jì)的核心思想沒有變化,但方式已經(jīng)拓展成為了可視化、模塊化、圖形化的編寫。目前,移動終端市場的操作系統(tǒng)主要為IOS和Android,而安卓系統(tǒng)憑借其開放性的優(yōu)勢已經(jīng)占據(jù)了越來越多的市場份額。其中的AppInventor以其可視化、模塊化和簡便化等特征讓缺少編程經(jīng)驗(yàn)的青少年可以輕松進(jìn)入安卓的編程世界。AppInventor在實(shí)現(xiàn)功能較為復(fù)雜的作品時(shí),對于學(xué)生編程思維和編程能力的要求較高。因此,需在實(shí)際教學(xué)中嘗試把大型作品進(jìn)行分解,把具體的代碼模塊學(xué)習(xí)融入到每個分項(xiàng)目中去,在保持作品完整性的同時(shí)降低學(xué)習(xí)難度,增加程序編寫的操作性和理解性。

2AppInventor項(xiàng)目式作品開發(fā)的基本思路

教師利用AppInventor程序設(shè)計(jì)的便捷性和開放性來讓學(xué)生通過模仿、調(diào)試、分享、改進(jìn)、創(chuàng)新、完善等步驟逐步設(shè)計(jì)作品,培養(yǎng)了學(xué)生學(xué)習(xí)程序設(shè)計(jì)的興趣和能力。一般程序設(shè)計(jì)的步驟主要包括分析問題、設(shè)計(jì)算法、編寫程序、運(yùn)行程序、分析結(jié)果。教師可在學(xué)生學(xué)習(xí)AppInventor程序設(shè)計(jì)的過程中重點(diǎn)強(qiáng)調(diào)需求分析、界面設(shè)計(jì)、模塊連接、調(diào)試運(yùn)行等步驟,對于程序語言編輯和算法思路的設(shè)計(jì)可以先不做過高要求,同時(shí)還要注意將語句學(xué)習(xí)融入到作品不斷升級完善的過程中去。

3層層遞進(jìn)引導(dǎo)學(xué)生建構(gòu)項(xiàng)目式程序設(shè)計(jì)在AppInventor設(shè)計(jì)電子相冊中的應(yīng)用

層層遞進(jìn)引導(dǎo)學(xué)生建構(gòu)項(xiàng)目式程序設(shè)計(jì)需要在教學(xué)實(shí)踐過程中提前設(shè)計(jì)好教學(xué)方案和詳細(xì)操作步驟,要根據(jù)不同的學(xué)習(xí)主題和內(nèi)容進(jìn)行靈活變動,以達(dá)到教學(xué)目標(biāo)。

3.1搭建基本框架,完成電子相冊初級版本

電子相冊的初級版本是點(diǎn)擊按鈕顯示一張與其所對應(yīng)的照片,如果能夠在顯示照片的同時(shí)出現(xiàn)歡迎語,則整個界面會更加友好。根據(jù)這一思路,完成電子相冊App1.0版本需要按鈕組件、圖像組件和標(biāo)簽組件,并調(diào)用“當(dāng)按鈕被點(diǎn)擊”與“顯示圖片”的代碼。在開始程序設(shè)計(jì)前,需要完成需求分析,并通過教師與學(xué)生的討論來完成相冊流程圖。流程圖是實(shí)現(xiàn)程序設(shè)計(jì)的基本依據(jù),流程圖的質(zhì)量直接決定了程序的質(zhì)量,需要學(xué)生認(rèn)真完成。完成流程圖之后,可以開始程序界面的設(shè)計(jì),這時(shí),可以讓學(xué)生發(fā)揮創(chuàng)意,設(shè)計(jì)出不同的相冊界面。完成組件的布局后,要分別設(shè)置其特有的屬性,可通過組件屬性面板并按照App的實(shí)際需求來進(jìn)行設(shè)置與修改,如圖1所示。設(shè)置好組件的屬性后,進(jìn)入邏輯設(shè)計(jì)環(huán)節(jié)。在電子相冊1.0版本中,主要是實(shí)現(xiàn)點(diǎn)擊按鈕顯示圖片這一功能??蓡螕暨壿嬙O(shè)計(jì)按鈕切換到程序設(shè)計(jì)視圖進(jìn)行代碼編寫,邏輯代碼如圖2所示。完成美麗校園App1.0版本的設(shè)計(jì)后,可以在模擬器中完成調(diào)試和修改,有了這個基礎(chǔ)版本的電子相冊,學(xué)生可以在此基礎(chǔ)上不斷升級,讓電子相冊功能更強(qiáng)大,或者是設(shè)置獨(dú)具特色的相冊。

3.2加入翻頁按鈕,讓電子相冊活動起來

通過點(diǎn)擊單個按鈕來顯示相應(yīng)圖片雖然比較直觀,但如果圖片數(shù)量較多,則需要布置同樣數(shù)量的按鈕,這既不利于布局,又不利于代碼的學(xué)習(xí)和提高。因此,可以參考將圖片瀏覽軟件中的翻頁功能加入進(jìn)來,以完成電子相冊2.0版本的制作。在開始設(shè)計(jì)之前,同樣需要繪制流程圖。由于2.0版本加入了翻頁功能,相應(yīng)的界面頁發(fā)生了變動,組件屬性可以參考圖3。翻頁功能是相冊2.0版本的關(guān)鍵,可以引導(dǎo)學(xué)生通過理解頁碼加減來理解翻頁。要實(shí)現(xiàn)加減就需要引入全局變量、取變量值和合并文本等控件,具體的邏輯設(shè)計(jì)可以參考圖4。實(shí)現(xiàn)翻頁的邏輯代碼不止一種,可以提示學(xué)生嘗試用不同的代碼來實(shí)現(xiàn),比如文本、列表等,關(guān)鍵是引入可以表示頁碼的代碼,實(shí)現(xiàn)頁碼的變換。隨后,可以在模擬器上完成調(diào)試和修改,加上了翻頁功能的電子相冊會變得更加完善。

3.3添加自動瀏覽,完善電子相冊整體功能

增加了翻頁功能后,用戶可以通過點(diǎn)擊上下頁按鈕來瀏覽圖片,如果此時(shí)想要點(diǎn)擊按鈕來實(shí)現(xiàn)自動瀏覽圖片的功能,就要引入新的控件,這對于程序設(shè)計(jì)又提出了新的挑戰(zhàn)。要想實(shí)現(xiàn)自動瀏覽功能,就需要在界面設(shè)計(jì)中添加非可視組件計(jì)時(shí)器,利用計(jì)時(shí)器組件的自動計(jì)時(shí)功能來實(shí)現(xiàn)順序播放。要想實(shí)現(xiàn)自動瀏覽需要解決兩個問題,一是怎樣讓變量按照順序依次變換,二是當(dāng)圖片播放到最后一張時(shí)怎么重頭開始播放。要實(shí)現(xiàn)這兩個要點(diǎn)并不困難,前者可以利用相冊2.0版本中的語句,只是現(xiàn)在需要將此語句連接到計(jì)時(shí)器中去,而后者則可以增加如果控件,讓程序運(yùn)行到最后一張時(shí)執(zhí)行回到第一張的語句。至此,電子相冊已經(jīng)完成了三個不同的版本,后續(xù)還可以在前面的基礎(chǔ)上增加不同的功能,比如直接跳轉(zhuǎn)至某一頁的照片、添加背景音樂、展示多個圖片,等等。同樣的主題會隨著功能的不斷變換和完善而制作出不同的電子相冊,而要想實(shí)現(xiàn)不同的功能自然會運(yùn)用到不同的控件和語句。隨著學(xué)習(xí)的不斷深入,學(xué)生在制作出功能各異的電子相冊的同時(shí)也增強(qiáng)了邏輯思維和編程能力。

4AppInventor項(xiàng)目式教學(xué)的研究成效

由于計(jì)算機(jī)程序設(shè)計(jì)需要較強(qiáng)的邏輯思維能力、語言表達(dá)能力和英語理解能力,大學(xué)生在學(xué)習(xí)過程中尚存在較大難度,對中小學(xué)生而言更是難上加難,而且傳統(tǒng)的先講解理論再實(shí)踐操作的教學(xué)方法也無法取得較好的教學(xué)效果。但幸運(yùn)的是,現(xiàn)在的編程軟件在不斷更新變化,給程序設(shè)計(jì)教學(xué)帶來了新的教學(xué)思路,能夠與層層遞進(jìn)項(xiàng)目式教學(xué)模式相結(jié)合,使學(xué)生在學(xué)習(xí)程序設(shè)計(jì)時(shí)更具有操作性和探究性,能夠聯(lián)系生活實(shí)際,進(jìn)而培養(yǎng)學(xué)生解決實(shí)際問題的能力。

4.1以項(xiàng)目為主體畫出思維導(dǎo)圖,培養(yǎng)任務(wù)分解能力

學(xué)生在解決綜合性問題時(shí),往往會手足無措,因此,教師要幫助學(xué)生提高任務(wù)分解的能力,把一個大項(xiàng)目分解成若干個小項(xiàng)目。以電子相冊為例,可利用思維導(dǎo)圖的形式嘗試把項(xiàng)目的完成步驟分解為流程圖、界面設(shè)計(jì)、組件設(shè)置、邏輯設(shè)計(jì)等幾大塊,然后再把大塊內(nèi)容細(xì)化,如圖5所示。完成任務(wù)分解圖后,嘗試按照詳圖一步步完成每個分項(xiàng)目,然后將分項(xiàng)目組合起來,完成整個項(xiàng)目的制作。按照“整體-局部-整體”的完成思路,不僅可以提高學(xué)生完成項(xiàng)目的能力,而且可以讓學(xué)生思考整體和局部之間的關(guān)系,提高學(xué)生從全局考慮問題的能力。

4.2以控件設(shè)計(jì)為載體,培養(yǎng)學(xué)生的編程能力

程序設(shè)計(jì)是通過特定計(jì)算機(jī)語言解決具體問題的過程。在進(jìn)行程序設(shè)計(jì)的過程中有一個重要的環(huán)節(jié),就是將問題通過算法的形式表述出來。在沒有可視化的控件作為設(shè)計(jì)載體之前,算法的理解和表達(dá)給學(xué)生的學(xué)習(xí)帶來了很大困難,而現(xiàn)在借助AppInventor的直觀設(shè)計(jì)環(huán)境,學(xué)生可以從簡單的程序開始,先不斷添加新的控件和功能,然后再通過理解控件之間的邏輯關(guān)系來逐步提高程序設(shè)計(jì)能力。同樣是實(shí)現(xiàn)圖片展示功能,方法是多種多樣的,比如直接設(shè)定語句,或先設(shè)置列表再選擇,或用隨機(jī)數(shù)來實(shí)現(xiàn)。

4.3不斷完善和創(chuàng)新項(xiàng)目,培養(yǎng)學(xué)生的創(chuàng)新能力

從相冊1.0版本更新到相冊3.0版本的過程中涉及了不同的設(shè)計(jì)思路,應(yīng)用了不同的控件和語句,使學(xué)生思考如何在同一主題的情況下實(shí)現(xiàn)不同的功能。在教師和學(xué)生、學(xué)生和學(xué)生的交流過程中,學(xué)生的創(chuàng)新能力得到了鍛煉。按照這樣的教學(xué)任務(wù)設(shè)計(jì)思路,還可以做出同一主題、不同設(shè)計(jì)思路的特色作品,比如畫圖板App、計(jì)算器App、找不同游戲App,等等,每一個App都可以按照從基礎(chǔ)功能到綜合功能的思路來進(jìn)行制作,讓學(xué)生在不斷豐富完善App功能的過程中提升程序設(shè)計(jì)能力。

5反思

程序設(shè)計(jì)的過程是先將現(xiàn)實(shí)中的問題用算法描述出來,然后再將算法轉(zhuǎn)為相關(guān)的程序設(shè)計(jì)語言,最后再通過計(jì)算機(jī)執(zhí)行相關(guān)語句來實(shí)現(xiàn)。利用可視化的軟件來編輯程序會更接近學(xué)生在生活中的思維方式。為了進(jìn)一步降低編程的難度,引導(dǎo)學(xué)生完成程序設(shè)計(jì),在實(shí)際教學(xué)中設(shè)計(jì)了層層遞進(jìn)的項(xiàng)目式教學(xué)方法,并將其運(yùn)用到了AppInventor程序設(shè)計(jì)的過程中,讓學(xué)生在學(xué)習(xí)的過程中能夠體會到編程所帶來的樂趣。但在教學(xué)過程中也暴露出了不少問題,比如怎樣更好地提升學(xué)生團(tuán)隊(duì)合作的能力,怎樣將模塊化編輯和代碼編輯緊密聯(lián)系起來,怎樣提升學(xué)生對于程序設(shè)計(jì)的理解,等等。在后續(xù)的教學(xué)中,將繼續(xù)以層層遞進(jìn)的項(xiàng)目式教學(xué)法為主線不斷更新和完善教學(xué)過程,增強(qiáng)各個項(xiàng)目的延續(xù)性,培養(yǎng)學(xué)生的邏輯思考能力。

作者:張遹東 單位:杭州師范大學(xué)東城實(shí)驗(yàn)學(xué)校