• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      Scratch語言對程序設(shè)計入門教學(xué)的意義研究

      2015-05-30 10:48:04朱贇
      軟件工程 2015年9期
      關(guān)鍵詞:教學(xué)探索程序設(shè)計

      摘 要:程序設(shè)計語言的入門教學(xué)常常會遇到學(xué)生基礎(chǔ)薄弱的問題,在課時不足的情況下導(dǎo)致教學(xué)的困難,或者因為例題艱深導(dǎo)致學(xué)生在入門前就已經(jīng)喪失了學(xué)習(xí)興趣。而Scratch程序因其對可視化操作、對結(jié)構(gòu)化程序設(shè)計的支持,能帶來程序設(shè)計的趣味性及可操作性。本文討論了程序設(shè)計教學(xué)的困境,Scratch程序作為前導(dǎo)課程的實踐以及可能會對教學(xué)帶來的幫助。

      關(guān)鍵詞:教學(xué)探索;程序設(shè)計;Scratch

      中圖分類號:G642 文獻標識碼:A

      1 引言(Introduction)

      1.1 基礎(chǔ)薄弱

      目前,中小學(xué)的信息化教育內(nèi)容參差不齊,有的學(xué)??赡軙谐绦蛟O(shè)計的教學(xué),有的學(xué)校則以Word、Excel操作為主,對程序設(shè)計的入門不重視[1]。很多剛進入大學(xué)的學(xué)生在程序化的思維方式方面還比較弱,要入高級程序設(shè)計語言的門還有很長的路要走。

      1.2 課時較少

      通常程序設(shè)計入門以C語言或C++語言為教學(xué)內(nèi)容。作為一種實踐性較強的語言,在一個學(xué)期中要完成程序設(shè)計概念和語法的教學(xué),又要在有限的時間里完成編程調(diào)試訓(xùn)練。如果學(xué)生沒有一定的基礎(chǔ)和自學(xué)能力,就很難適應(yīng)這種節(jié)奏。

      1.3 抽象帶來的問題

      語法、算法等抽象的教學(xué)內(nèi)容將降低學(xué)生的學(xué)習(xí)興趣,而學(xué)習(xí)興趣對教授與學(xué)習(xí)兩方面都非常重要。有的學(xué)生不能通過考核經(jīng)常就跌入補考和重修的循環(huán)。程序設(shè)計入門作為核心課程,這個課程出了問題將給計算機專業(yè)的后續(xù)課程帶來很多不好的影響,比如本專業(yè)學(xué)生對程序設(shè)計和其他專業(yè)技能缺乏信心以及實踐能力。

      2 程序設(shè)計課程的前導(dǎo)課程(Leading program of

      programming classes)

      學(xué)生在程序設(shè)計課程中,一方面要努力熟悉算法抽象、程序控制等一些全新的概念,一方面會遇到很多語法錯誤,必須要學(xué)習(xí)如何調(diào)試程序,理論加上實踐可能都是前所未有的挑戰(zhàn)。前導(dǎo)課程應(yīng)帶來有趣味的內(nèi)容,為學(xué)生補充各種必要的基礎(chǔ)概念,如抽象、邏輯、流程等,告訴學(xué)生如何在現(xiàn)實世界和計算機世界之間建立起一座橋梁。這樣的課程會對程序設(shè)計教學(xué)有很大幫助。

      3 Scratch簡介(Introduction of scratch)

      Scratch是美國麻省理工學(xué)院(MIT)媒體實驗室開發(fā)的一套“程序語言”,利用這個軟件可以輕輕松松地創(chuàng)造出互動式故事、動畫、游戲、音樂等令人驚嘆的作品,是一套簡單又有趣的軟件[2]。

      Scratch采用拖曳、組合的方式來設(shè)計程序。它是可視化的程序語言,具有所見即所得的功能。設(shè)計Scratch作品的過程是學(xué)生學(xué)習(xí)用計算機進行思考、分析、解決問題的過程,還能進行團隊建設(shè)方面的實踐。

      Scratch把程序命令歸為幾大部分:包括動作、外觀、聲音、畫筆、變量、事件、控制等,并用顏色來分類。學(xué)生只需要了解各部分模塊的功能,按照自己的想法拖到腳本窗口,并按一定規(guī)則堆積在一起,最后在瀏覽窗口就能根據(jù)命令腳本直接運行。通過可視化操作學(xué)生可以搭建起自己的程序,輕易地把自己的想法表達為計算機的程序。在這個抽象的過程中不用過分操心語法錯誤等問題。

      圖1為Scratch設(shè)計界面,左上為程序運行場景,左下為程序中設(shè)計的主體對象。一個項目可以有多個動畫主體(可以是動物人物或其他一些對象),中間是可視化程序模塊,右邊是程序窗口,利用鼠標可以把中間的程序模塊拖入右邊的程序窗口,經(jīng)過修改參數(shù)、安排程序模塊的順序和嵌套等工作,就完成了程序編制,接著程序可以在瀏覽器中執(zhí)行。

      4 Scratch對程序設(shè)計教學(xué)的支持(Supports to

      programming classes)[3]

      4.1 抽象

      現(xiàn)實世界的問題如何抽象為計算機世界的模型?第一步可以從學(xué)習(xí)抽象為計算機里的對象開始。我們把需要處理的內(nèi)容抽象為Scratch的動畫主體,比如一個人物或一個物體。動畫主體可以具有各種行為,比如在平面中移動。如圖2是一個負責(zé)動作的程序模塊,能控制動畫主體平移到坐標(100,200)處,其中白色的部分為可以修改的坐標值。

      4.2 結(jié)構(gòu)化程序

      Scratch具有可以拖曳的結(jié)構(gòu)化模塊。設(shè)計時候只需要把模塊拖入場景中,就可以實現(xiàn)循環(huán)或選擇的程序結(jié)構(gòu),并且能實現(xiàn)循環(huán)和選擇的嵌套,制作需要的程序流程。圖3演示了循環(huán)結(jié)構(gòu)的程序模塊,repeat后面的循環(huán)次數(shù)可以修改,可以看到循環(huán)程序模塊和循環(huán)體中的其他程序模塊的顏色是不同的,它們屬于不同的功能分類。

      Fig.4 Block to control choosing

      其中使用的橙色模塊i是Scratch的變量模塊。Scratch程序能夠使用數(shù)字和字符串變量。變量可用來控制某個圖形的大小或個數(shù),變量還能具有不同的作用域。由此我們向?qū)W生展示了變量存儲值、變量值影響程序結(jié)果以及變量的作用域等概念。

      Scratch具有列表的結(jié)構(gòu),列表可以存儲數(shù)值或字符串。列表可以具有作用域,可以獲得列表的長度。列表項具有添加、刪除、插入等操作,并能通過下標獲取特定的列表項。列表可以幫助學(xué)生學(xué)習(xí)數(shù)組的概念。

      Scratch的結(jié)構(gòu)化程序設(shè)計是可視化的,調(diào)試簡單,能幫助學(xué)生把精力集中在程序結(jié)構(gòu)上,而不需要為語法錯誤分心。

      4.3 面向?qū)ο?/p>

      Scratch能夠設(shè)置動畫主體,可以視為對象模塊。不同的動畫主體具有獨特的屬性,可操作自己的變量,能完成獨特的任務(wù)。在后續(xù)課程中這些概念很容易引申為對象及其屬性和行為的概念,這是面向?qū)ο蟪绦蛟O(shè)計的基礎(chǔ)。圖5為迷宮程序的設(shè)計,其中球體是一個對象,而終點方塊的是另一個對象。我們可以利用鍵盤移動球體,當碰到方塊對象時后者能做出贏得游戲的反應(yīng)。球體對象在移動過程中碰到障礙則會產(chǎn)生反彈。

      5 Scratch作為程序設(shè)計教學(xué)前導(dǎo)課程的實踐

      (Experiments in programming classes)

      在參考文獻[4]中提到的學(xué)校已經(jīng)嘗試使用Scratch平臺作為計算機專業(yè)課程的前導(dǎo)課程。學(xué)校把學(xué)生分為兩部分,一部分基礎(chǔ)薄弱的學(xué)生在第一個學(xué)期先參加Scratch課程,到第二個學(xué)期才開始學(xué)習(xí)高級程序設(shè)計語言。而另一部分基礎(chǔ)良好的學(xué)生則在第一個學(xué)期就開始學(xué)習(xí)高級程序設(shè)計。

      最終學(xué)過Scratch的學(xué)生,盡管基礎(chǔ)薄弱,他們的最終成績在通過率和平均成績方面都超過基礎(chǔ)良好的學(xué)生,并且在精通程序、喜愛專業(yè)課程、參與專業(yè)實踐等方面都有更好的表現(xiàn)。這些學(xué)生專業(yè)成績更好,對專業(yè)更熱愛,對程序設(shè)計更有信心。

      6 結(jié)論(Conclusion)

      程序設(shè)計是一種具有創(chuàng)造性的工作,它具有一定的抽象性,而且需要使用數(shù)學(xué)的方法去描述一些問題。這使得在語言程序設(shè)計的課程教學(xué)中,必須打破原有的教學(xué)模式和知識體系[5]。我們探索不同的方式幫助學(xué)生入門,Scratch可能是一個良好的平臺,它的可視化特性,對結(jié)構(gòu)化程序設(shè)計的支持,都能幫助學(xué)生在實踐中培養(yǎng)計算機思維方式,為程序設(shè)計入門打下堅實基礎(chǔ),為后續(xù)課程的挑戰(zhàn)做好準備。另一方面程序設(shè)計教學(xué)的困境也要需要在考核模式方面進行改革,激勵學(xué)生重視創(chuàng)新和實踐。

      參考文獻(References)

      [1] 張傳科.如何讓抽象的設(shè)計變得精彩——LOGO程序設(shè)計與

      Scratch[J].中國信息技術(shù)教育,2010,(5):29-31.

      [2] 陳捷.Scratch語言簡介及應(yīng)用[J].電腦知識與技術(shù),2009,5(26):

      7439-7440.

      [3] 朱贇,鄭曉妹.C語言程序設(shè)計教學(xué)前導(dǎo)課程研究[J].軟件導(dǎo)

      刊,2014,13(4):160-162.

      [4] M.Rizvi,T.Humphries,D.Major,M.Jones,and H.Lauzun.A

      NewCS0 Course for At-Risk Majors[C].The Proceedings of

      the 24th IEEE-CS Conference on Software Engineering

      Education and Training,Honolulu,Hawaii,May 2011: 314-323.

      [5] 劉興林.大學(xué)工科C語言程序設(shè)計教學(xué)探索與實踐——以五

      邑大學(xué)為例[J].軟件工程師,2014,17(5):39-40.

      作者簡介:

      朱 贇(1978-),女,碩士,講師.研究領(lǐng)域:計算機應(yīng)用.

      猜你喜歡
      教學(xué)探索程序設(shè)計
      基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
      計算機教育(2020年5期)2020-07-24 08:52:56
      從細節(jié)入手,談PLC程序設(shè)計技巧
      電子制作(2019年9期)2019-05-30 09:42:04
      高職高專院校C語言程序設(shè)計教學(xué)改革探索
      基于素質(zhì)教育視角下的民族高校邏輯學(xué)教學(xué)探索與實踐
      文教資料(2016年19期)2016-11-07 11:05:12
      高中數(shù)學(xué)課堂中德育溶合的探索
      試析網(wǎng)絡(luò)教學(xué)平臺在機械制圖課程教學(xué)中的應(yīng)用
      高分子材料與工程專業(yè)綜合實驗的教學(xué)探索
      中國市場(2016年36期)2016-10-19 04:57:58
      PLC梯形圖程序設(shè)計技巧及應(yīng)用
      辽源市| 中超| 天祝| 青州市| 无棣县| 明溪县| 彩票| 日土县| 阿鲁科尔沁旗| 桓台县| 浙江省| 治县。| 宁南县| 洛扎县| 淅川县| 津南区| 安顺市| 葵青区| 阳山县| 厦门市| 西丰县| 洪洞县| 崇左市| 临邑县| 金山区| 聂荣县| 信阳市| 涿州市| 海林市| 临城县| 民乐县| 贵阳市| 龙口市| 河曲县| 阳原县| 札达县| 苏尼特左旗| 五台县| 潜山县| 汝阳县| 柘荣县|