热门问题
时间线
聊天
视角
Scratch
編程語言學習環境 来自维基百科,自由的百科全书
Remove ads
Scratch是麻省理工媒體實驗室終身幼稚園組開發的一套以積木塊為基礎的視覺化程式設計語言開發平台,於150多個國家和地區發行,並提供60多種語言版本。Scratch由Mitchel Resnick和Andrés Monroy-Hernández創立。
Scratch最初(1.0)可安裝在Mac OS X、Windows、Linux的平台上;2.0改使用ActionScript編制,3.0改使用HTML5編制,並可運行於瀏覽器。
Remove ads
主旨
Scratch讓程式設計語言初學者不需先學習語言語法便能設計專案。開發者期望通過學習製作Scratch,啟發和激勵用戶在愉快的環境下經由操作(如設計互動故事、多人遊戲)去學習程式設計、數學和計算知識,同時獲得創造性的思考、邏輯編程和協同工作的體驗。
概覽
Scratch測試由麻省理工媒體實驗室終身幼稚園組於2006年發布[3]。
Scratch適用於全年齡層用戶。即便用戶從未學過程式設計,通過拖曳預先設定好的積木式程序模件,堆疊出指令,設置或控制角色及背景的行動和變化,從而完成程序撰寫[4][5]。
Scratch的1.x版本用Squeak編寫,從2.0開始改為ActionScript,自3.0後使用HTML5。Scratch 可安裝其發行的應用程式進行離線編輯。其中,1.x及2.0版本需要flash插件,3.0則不需要使用。
Scratch開發平台的使用者界面分為四部分:程序模件列表,程序設計平台,預覽窗口和角色列表。
在1.4版本中,程序模件列表將其分為8類:動作、外觀、聲音、畫筆、控制、偵測、運算、變量。2.0版本中,有動作、外觀、聲音、畫筆、變量、事件、控制、偵測、運算符和邏輯運算,更多模塊。3.0版本中,有動作、外觀、聲音、事件、控制、偵測、運算符和變數(雲端變數)、函式積木等,另外可以通過擴充功能增加更多模組,有畫筆、攝影機等,還能連接遊戲手把。程序模件各有不同的顏色和形狀,以便識別。
Scratch利用「廣播」功能實現事件驅動,協調各個子程式的運行。Scratch能提前導入圖片、音頻素材,支持一維數組,以功能封裝的方式簡化了角色碰撞偵測功能。Scratch不易出現導致程序完全無法運行的嚴重錯誤。
主要不足:Scratch沒有針對電腦文件的輸入/輸出功能,不支持多維度表格序列的嵌入,自定義子程序不支持設置形式參數也不支持設置返回值,無法進行角色的局部碰撞檢測,缺少並發控制,不方便進行邏輯條件的複雜組合,調試困難。
Scratch被學校、博物館[6]、社區中心等用作教學和展示。例如,香港青年協會經常舉辦Scratch體驗活動,以推動學生自由發揮創意[7][8][9]。Scratch亦附設不同的語言界面,方便非英語用戶使用。[10]
Scratch設立了一個線上社群,其口號為「想像·編程·分享」,分享和創意是Scratch最重要的理念[11]。
Scratch最終成品並非原始碼,而是所有角色的行為和結合。用戶可以將源文件上傳至線上社群以供分享。線上社群的成員可以自由下載該項目的原始碼,來研究該項目的結構[12][13]。除此之外,各成員可自由評論、標籤和「讚」不同的項目以及發表和分享意見。
線上社群中有不同類型的項目,範圍包括遊戲、動畫、簡報和聊天機器人。所有項目都以創用CC的特許方式發佈,也可透過JavaScript播放。線上社群每月都有着一百萬點擊率,且擁有74,734,356名註冊成員,以及超過八千二百二十六萬份作品在線上社群上分享(截至2021年8月6日)[14]。該線上社群隨後開設了不同網頁,如ScratchEd和ScratchJR等,以促進各使用者的交流。[15][16]
自Scratch 2.0版本起,Scratch團隊搭建了一個網站以供用戶們在線上傳項目,以及預覽他人的項目。[17]
衍生軟件
爭議
2020年8月,有多家中國大陸媒體指Scratch被發現在註冊賬戶時,將香港、澳門、台灣與中國並列劃入「國家」一欄。在平台的開放論壇上有部分用戶上傳的反中共言論,包括港獨、台獨、「借中美貿易摩擦抹黑中方」等言論。[20]目前,Scratch官網、論壇和wiki已被中國大陸防火長城屏蔽,在中國大陸無法正常訪問,僅能以離線版本編程。[21]
另見
參考資料
外部連結
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads