Scratch
编程语言学习环境 来自维基百科,自由的百科全书
Scratch是麻省理工媒體實驗室終身幼稚園組开发的一套以積木塊為基礎的視覺化程式設計語言開發平台,於150多個國家和地區發行,並提供60多種語言版本。Scratch由Mitchel Resnick和Andrés Monroy-Hernández創立。
![]() | |
编程范型 | 指令式,事件驅動 |
---|---|
設計者 | Mitchel Resnick、Andrés Monroy-Hernández |
實作者 | 麻省理工媒体实验室 終身幼稚園組 |
发行时间 | 2006 |
当前版本 |
|
型態系統 | 動態 |
實作語言 | Squeak(v1.4前) Actionscript(v2.0) HTML5 (v3.0) |
操作系统 | Windows、macOS、Linux、Android、ChromeOS |
許可證 | 開放源碼GPLv2和封閉性軟件 |
文件扩展名 | .sb、.sprite(v1.4前) .sb2、.sprite2(v2.0) .sb3、.sprite3(v3.0) |
網站 | scratch |
主要實作產品 | |
Scratch | |
受影响于 | |
Logo、Smalltalk、HyperCard、 StarLogo、AgentSheets、Etoys |
Scratch最初(1.0)可安裝在Mac OS X、Windows、Linux的平台上;2.0改使用ActionScript编制,3.0改使用HTML5編制,並可运行于浏览器。
主旨
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.