-
Scratch
(全球少兒圖形化編程工具(語言))
鎖定
- 外文名
- Scratch
- 上線時間
- 2007年1月8日
- 程序設計語言
- HTML/JavaScript 格式
- 相關軟件
- ScratchJR
- 類 別
- 編程工具
- 開發團隊
- 終身幼兒園團隊
- 最新版本
- 3.30.5
- 使用平台
- 電腦、平板電腦
- 文件格式
- *.sb
Scratch軟件介紹
Scratch是一種具有簡單視覺界面的編碼語言,可以通過Scratch創建自己的交互式故事、遊戲和動畫,並與世界各地的其他人分享創作。它促進計算思維和解決問題的能力、創造性的教學和學習、自我表達和協作以及計算領域的公平性。Scratch 始終免費,並提供 70 多種語言版本。
Scratch 專為 8 至 16 歲兒童設計,但適合所有年齡段的人使用。數以百萬計的人在各種環境中創建 Scratch 項目,包括家庭、學校、博物館、圖書館和社區中心。學生可以使用 Scratch 進行各個級別(從小學到大學)和跨學科(例如數學、計算機科學、語言藝術、社會研究)的學習。
Scratch大會
2008年7月24-26日,MIT的Scratch團隊舉辦了第一次的全球Scratch社羣聚會“Scratch@MIT”,約有300多位老師、研究學者、軟件開發者前來參與,該研討會的目的是
- 分享Scratch是如何在家裏、教室、社區中心被使用的故事。
- 參與要親自動手操作的工作坊,學習Scratch的新技巧和策略。
- 研討孩子們用Scratch學會了些什麼。
- 和MIT的Scratch團隊一起探索Scratch的未來發展方向。
第一個講題是Sowing the Seeds for a More Creative Society,由MIT媒體實驗室的龍頭老大Mitchel Resnick主講。
第二個講題是:Imagine-Program-Share: Stories from the Scratch Online Community(想象-編程-分享:Scratch線上社羣的故事),一個會議的開幕演講是多麼有重要性,他們居然“足甘心”地邀請四個在Scratch線上社羣很活躍的孩子從世界各地來參加,可見他們對孩子們的重視,真的不是説説而已。
Scratch發展歷史
Scratch1.x時期
Scratch1.x採用Smalltalk編寫。作為“OLPC(One Laptop per Child,每個孩子都有一台電腦)”項目的一部分,Smalltalk提出一個建議的語言學習順序,其中的每種語言都被設計成下一種的入門和基礎。這個順序是:Scratch-Etoys-Squeak-任意Smalltalk。在學習的過程中,每一種語言都提供了圖形化的編程環境,不僅是用於教會孩子們一些編程的概念,而且是包含物理和數學知識的模擬及講述故事的一些練習。Smalltalk和Squeak作為全功能的應用程序開發語言,在過去的數十年中已經變得十分有名了,而Scratch是孩子們學習的工具。在整個1.x系列中,Scratch官網基本保持不變。該版本的Scratch和網站沒有聯繫(除了發佈程序)。這在2.0時期中發生了變化,人們可以在網頁裏製作程序。
Scratch2.0時期
Scratch2.0是由andresmh於2010年1月在Scratch論壇上發佈的。它採用Flash編寫,支持了矢量圖。Scratch2.0分為離線版和在線版,在線版允許直接在Web瀏覽器裏創建、編輯和查看項目(不再需要上傳、下載項目或者安裝其它軟件),可以使用雲變量。離線版則只能本地製作程序,且無法使用雲變量。
Scratch2.0離線版在Scratch官網提供下載,便於在無法連接Internet的情況下使用,2.0版本加強了與外部鏈接設備的互動,例如Lego Wedo等。2020年,更加先進的3.0版本發佈後,官網不再提供Scratch2.0編輯器。
Scratch3.0時期
Scratch3.0放棄了Flash,採用了HTML5來編寫,HTML5是最新的HTML、CSS和JavaScript的總和,Scratch3.0首先將會使用WebGL、Web Workers和Web Audio Javascript Libraries。JavaScript是一種廣泛的語言,它支持所有瀏覽器和WebGL,從而跨平台使用。它經過了精心挑選,JavaScript運行不需要任何額外的插件。
[1]
Scratch3.0這個名字首先是由Scratch團隊的Andrew Sliwinski在2016年5月提出的。2018年1月,Scratch3.0的第一個公測版本(Scratch 3.0 beta)在Scratch官網上發佈
[2]
,Scratch3.0在線編輯器的發行版本在2019年1月發佈,而離線編輯器在2019年1月後也提供下載使用。
Scratch3.0不僅僅是重構,也增加了一些功能,比如“移到最後面”積木、“文字朗讀”“翻譯”擴展等。編輯器的外形看起來更加柔美,支持多次撤銷和重做。Scratch3.0保存的文件格式為.sb3,但它也可以讀取.sb和.sb2文件。
Scratch頁面佈局
菜單欄
導航欄是每個 Scratch 頁面頂部的欄。包含鏈接到首頁的 Scratch 圖標、單擊時會打開語言列表的地球圖標、文件和編輯菜單、教程等。用於文件新建、加載、保存、教程查看及作品搜索。當一個人在軟件中向上或向下滾動時,導航欄會保持在原位,始終可以快速訪問。
[3]
代碼塊選擇區
代碼塊選擇區位於主界面屏幕左側的區域。包含 Scratch 中的九個代碼塊類別,在類別的右側,顯示該類別對應的代碼塊。這些塊可以拖到代碼區中來製作腳本。擴展按鈕位於代碼塊選擇區的左下角,它允許用户添加自定義代碼塊作為擴展模塊,這些擴展代碼塊將被添加到代碼塊選擇區中,例如與其他設備通信的塊。
代碼編輯區
代碼編輯區是代碼塊選擇區右側的大空間,它是一個淺灰色的矩形。它是用於存儲運行項目的塊的區域。可以將塊從代碼塊選擇區拖動到代碼編輯區中,並排列成腳本。每個角色都有自己的腳本,可以在角色區選擇角色。
要在 Scratch 中編碼,只需從代碼塊選擇區中拖出塊並將它們組裝到代碼編輯區中即可。可以在該區域更改代碼塊的值。滾動條向各個方向延伸該區域。可以使用鼠標或觸摸板垂直滾動代碼區域。觸摸板還可以水平滾動該區域。
[4]
舞台
角色區
角色區位於代碼編輯區和舞台下方。它允許創作者快速切換角色並查看每個角色包含的不同腳本。在代碼編輯區使用的所有角色都會列表在此,可以通過單擊角色來訪問它們,每個角色有各自的腳本、造型及聲音。在角色的上方,有一個區域包含角色的名稱、位置、大小和方向,這些屬性可以直接在此處更改。
[6]
繪畫編輯器
繪畫編輯器是 Scratch的內置造型和背景編輯器。許多創作者 使用它製作自己的角色和背景。這些圖像包含兩種圖形類型:矢量圖形和位圖(光柵)圖形。矢量圖形將對象存儲為形狀或數學曲線而不是像素。這使得矢量圖形看起來更平滑,因為它們可以無限放大而不會出現像素化。位圖圖形,也稱為光柵圖形,將圖像存儲為網格結構中的像素數組。這使得它們更容易繪製和操作,但會導致它們在放大時顯得模糊或像素化。
繪畫編輯器最左邊的部分是造型窗格。它由用於創建新服裝的按鈕以及每個服裝的圖標組成,包括其造型編號和名稱,以及一個小預覽。在造型窗格中,列出了所選角色的每種造型。要在繪畫編輯器中編輯不同的造型,只需從窗格中單擊所需的服裝即可。
[7]
聲音編輯器
聲音編輯器允許人們製作、查看和編輯角色和舞台的聲音。左側的聲音列表用於在編輯區域中選擇要編輯的聲音。單擊聲音將選擇它,所選聲音的右上角還有一個“X”,用於刪除聲音。右鍵單擊聲音將顯示三個選項:複製、導出和刪除。編輯區域是聲音列表右側和舞台左側的部分。它的頂部有一個條形圖,中間有一個聲音,底部有幾個工具,包含“快一點”、“慢一點”、“響一點”等效果。
[8]
Scratch語言組成
Scratch運動塊
運動塊處理角色的移動。它們主要與角色的 x 和 y 位置和方向有關,舞台不包含任何 運動塊,因為它是一個靜止對象。
Scratch外觀塊
外觀塊與角色和舞台的外觀有關。其中一些功能是更換造型和應用圖形效果。
Scratch聲音塊
聲音塊與播放各種聲音有關,無論是 MIDI 音符還是保存的聲音。
Scratch事件塊
事件塊與項目中的各種觸發器相關,或者當一個部分向另一個部分發出運行信號時使用。
Scratch控制塊
控制塊以所需的方式運行項目的基本流程,無論是有預計的還是突發的。它們提供了循環各種塊和腳本的功能。它們“控制”項目並增強其運行。
Scratch偵測塊
感應塊與角色和舞台檢測條件相關聯。例如,偵測塊可用於檢測一個角色何時接觸另一個角色。
Scratch運算塊
運算塊用於處理項目中的許多數學函數,提供簡單到複雜的數學運算功能,包含加減乘除等數學運算塊、大小比較塊、邏輯運算塊和字符運算塊。
Scratch變量塊
變量塊包括兩個子類別:變量和列表,兩者都與存儲和訪問數據相關。變量塊用於存儲信息,例如項目中的分數,並將其用於代碼編寫等其他有益的目的。變量子類別用於保存與控制變量,例如修改變量值、顯示隱藏變量。列表子類別是包含多個變量的變量,可以向列表中插入、刪除或替換變量。
Scratch自制積木
自制積木是為選定角色保存自定義過程的塊。這些塊對於運行腳本和組織腳本非常有用。還可以將布爾值、數字和字符串輸入添加到自制積木。
Scratch在線社區
Scratch官方運營維護Scratch在線社區,用户能夠將他們的項目分享在Scratch網站並獲得反饋。項目可以直接從軟件上傳到 Scratch 網站,社區的任何成員都可以查看和下載完整的源代碼以進行研究。
Scratch 團隊與社區合作,為所有年齡、種族、民族、宗教、性取向和性別認同的人維護一個友好和尊重的環境。用户可以在開放的學習社區中與來自不同背景、年齡和興趣的其他 用户一起探索和實驗。成員可以分享他們的工作、獲得反饋並相互學習。
- 參考資料
-
- 1. Scratch - About (mit.edu) .Scratch[引用日期2024-04-10]
- 2. Scratch - About (mit.edu) .Scratch[引用日期2024-04-10]
- 3. User Interface .Scratch Wiki.2019-09-21[引用日期2020-03-28]
- 4. Code Area .scratch-wiki[引用日期2023-12-13]
- 5. Stage .Scratch Wiki[引用日期2023-07-11]
- 6. Sprite Pane .Scratch Wiki[引用日期2024-04-14]
- 7. Paint Editor .Scratch Wiki[引用日期2024-03-11]
- 8. Sound Editor .Scratch Wiki[引用日期2024-04-17]
- 9. Block Categories .Scratch Wiki[引用日期2023-12-25]