本頁使用了標題或全文手工轉換

Scratch

維基百科,自由的百科全書
跳至導覽 跳至搜尋
Scratch
Scratch Logo.svg
編程範型 指令式事件驅動
設計者 Mitchel Resnick
實作者 麻省理工媒體實驗室 終身幼稚園組
面市時間 2006
穩定版本
3.0 (離線版則是3.4)
( 2019/12/2 )
型態系統 動態
實作語言 Squeak(v1.4 前),Actionscript(v2.0 後),HTML5 (v3.0 後)
作業系統 Mac OS XWindowsLinux
許可證 開放原始碼GPLv2和封閉性軟體
副檔名 .sb , .sprite (1.x)
.sb2 , .sprite2 (2.0)
.sb3 (3.x)
網站 http://scratch.mit.edu/
主要實作產品
Scratch
啟發語言
LogoSmalltalkHyperCard
StarLogoAgentSheetsEtoys

Scratch麻省理工媒體實驗室終身幼稚園組開發的一套電腦程式開發平台,旨在讓程式設計語言初學者不需先學習語言語法便能設計產品。開發者期望通過學習Scratch,啟發和激勵用戶在愉快的環境下經由操作(如設計互動故事)去學習程式設計數學計算知識,同時獲得創造性思考邏輯編程,和協同工作的體驗。Mitchel Resnick 和 Andrés Monroy-Hernández 是 creater.

Scratch 開發平台可安裝在Mac OS XWindowsLinux的平台上;自2.0之後,換用ActionScript編制,Scratch已於2019年1月2日發布3.0正式版,換用HTML5編制。Scratch執行於瀏覽器。Scratch原始碼完全開放(但小貓圖案和scratch名稱受著作權保護)[1]

概覽[編輯]

Scratch 測試由麻省理工媒體實驗室終身幼稚園組於2006年發布[2]

Scratch適用於8歲以上用戶。即便用戶從未學過程式編程,通過拖曳預先設定好的積木式程式模件,堆疊出指令,設定或控制角色及背景的行動和變化,從而完成程式設計[3][4]

Scratch的1.x版本用Squeak編寫,從2.0開始改為ActionScript,自3.0後使用HTML5。Scratch 可安裝其發行的應用程式進行離線編輯。

介面與功能[編輯]

Scratch 離線開發平台 1.4 英文版在 Mac OS X Snow Leopard 的螢幕截圖
Scratch 線上開發平台 2.0 英文版的螢幕截圖。

Scratch 開發平台的使用者介面分為四部分:程式模件列表,程式設計平台,預覽窗口和角色列表。

程式模件列表將其分為8類:動作、外觀、聲音、畫筆、控制、偵測、運算、變數。程式模件各有不同的顏色和形狀,以便辨識。

Scratch 利用「廣播」功能實現事件驅動,協調各個子程式的執行。Scratch 能提前匯入圖片、音訊素材,支援一維陣列,以功能封裝的方式簡化了角色碰撞檢測功能。Scratch 不易出現導致程式完全無法執行的嚴重錯誤。

主要不足:Scratch 沒有針對本地檔案的輸入/輸出功能,不支援多維陣列和陣列巢狀,自訂子程式不支援設定形式參數也不支援設定返回值,無法進行角色的局部碰撞檢測,缺少並行控制,無物件導向特性,不方便進行邏輯條件的複雜組合,除錯困難。

用戶社群[編輯]

Scratch 被學校博物館 [5]社區中心等用作教學展示。例如,香港青年協會經常舉辦 Scratch 體驗活動,以推動學生發揮創意[6][7][8][需要更好來源]。Scratch 亦附設不同的語言介面,方便非英語用戶使用。此外,Scratch-TW則蒐集了Scratch相關的線上資源、介紹影片、創意程設思維教材[9],並進行中文化,以便台灣使用者之使用與推廣。均一教育平台也製作了一系列Scratch3.0基礎課程,免費開放提供教師、家長與學生能線上自學Scratch。

線上社群[編輯]

Scratch 設立了一個線上社群,其口號為「想像・程式・分享」,分享和創意是 Scratch 最重要的理念[10][需要更好來源]

Scratch 最終成品並非原始碼,而是所有角色的行為和結合。用戶可以將原始檔案上傳至線上社群以供分享。線上社群的成員可以自由下載該專案的原始碼,來研究該專案的結構[11][12]。除此之外,各成員可自由評論、標籤和「讚」不同的專案以及發表和分享意見。

線上社群中有不同類型的專案,範圍包括遊戲動畫簡報聊天機器人。所有專案都以創用CC的特許方式發布,也可透過 Java appletFlash Player 播放。線上社群每月都有著一百萬點擊率,且擁有接近7,000,000已登記成員(截至2015年6月)[13],以及超過九百六十萬份作品在線上社群上分享[14]。該線上社群隨後開設了不同網頁,如 ScratchEd 和 ScratchR 等,以促進各使用者的交流。[15][16]

雲端平台[編輯]

Scratch 3.4 版本設立了雲服務,用戶可在遠端伺服器上存取和分享作品。[17]

衍生軟體[編輯]

從Scratch衍生出其它軟體[18],例如 Snap![19]編程貓

另見[編輯]

參考資料[編輯]

  1. ^ Scratch source-code download page http://info.scratch.mit.edu 網際網路檔案館存檔,存檔日期2012-06-18.
  2. ^ 麻省理工大學; Mitchel Resnick, John Maloney, Andres Monroy-Hernandez, Natalie Rusk, Evelyn Eastmond, Amon Millner, Jay Silver, Eric Rosenbaum, Karen Brennan, Amos Blanton, Brian Silverman, Paula Bonta, Yasmin Kafai, Kylie Peppler. Scratch: imagine, program, share. 麻省理工大學. [25 May 2007]. 
  3. ^ Scratch - Imagine, Program, Share. scratch.mit.edu. [2018-11-20]. 
  4. ^ Scratch: Programming for All. Resnick, M., Maloney, J., Monroy-Hernandez, A., Rusk, N., Eastmond, E., Brennan, K., Millner, A., Rosenbaum, E., Silver, J., Silverman, B., Kafai, Y. (2009). Scratch: Programming for All. Communications of the ACM, November 2009
  5. ^ Bricolage. [2018-11-20]. 
  6. ^ 青年協會. Scratch創意體驗學習活動 ─ IVE Tsing Yi. 2011-08-19 [2012-06-26] (中文(香港)‎). 
  7. ^ 青年協會. Scratch Day Hong Kong 2010 – 記者現場報導. 2010-05-26 [2012-06-26] (中文(香港)‎). 
  8. ^ 青年協會. LEAD @ e-zone科技創意夏令營2011. 2011-08-16 [2012-06-26] (中文(香港)‎). 
  9. ^ Chung, Karen Brennan, Christan Balch, Michelle. Creative Computing. scratched.gse.harvard.edu. [2016-07-25]. 
  10. ^ Monroy-Hernández, A. and Resnick, M. (2008). Empowering kids to create and share programmable media. ACM interactions 15, 2 (March 2008), 50-53[永久失效連結]
  11. ^ Monroy-Hernández, A., Hill, B. M., González-Rivero, J., boyd, d. (2011) Computers Can't Give Credit: How Automatic Attribution Falls Short in an Online Remixing Community. In Proceedings of the 29th International Conference on Human Factors in Computing Systems (CHI '11)[永久失效連結]
  12. ^ Hill, B.M, Monroy-Hernández, A., Olson, K.R. (2010) Responses to remixing on a social media sharing website. In AAAI International Conference on Weblogs and Social Media (ICWSM '10) 網際網路檔案館存檔,存檔日期2012-10-12.
  13. ^ 存檔副本. [2012年6月26日]. (原始內容存檔於2012年4月22日). 
  14. ^ Scratch usage statistics 網際網路檔案館存檔,存檔日期2013-05-29.
  15. ^ 存檔副本. [2010-07-28]. (原始內容存檔於2011-07-06). 
  16. ^ ScratchEd. scratched.media.mit.edu. [2018-11-20]. 
  17. ^ Scratch - Imagine, Program, Share. scratch.mit.edu. [2018-11-20]. 
  18. ^ Blocks - Scratch Wiki. wiki.scratch.mit.edu. [2018-11-20]. 
  19. ^ Snap! (Build Your Own Blocks) 4.2. byob.berkeley.edu. [2018-11-20]. 

外部連結[編輯]