Snap!

以JavaScript編寫的圖形化程式語言

Snap! 是一款用JavaScript編寫的,在瀏覽器裏運行的圖形化程式語言,旨在賦予學生創作交互式故事,動畫,遊戲等作品,學習數學和計算概念。Snap!由Scratch語言衍生,包含和擴展了Scratch的功能。

Snap!語言
編程範型面向對象編程, 事件驅動編程
設計者布萊恩·哈維Jens Mönig
實作者Jens Mönig
釋出時間2011年
當前版本
  • 10.1.8(2024年10月22日;穩定版本)[1]
編輯維基數據鏈接
型態系統動態類型
實作語言JavaScript
許可證AGPL
文件擴展名.xml
網站snap.berkeley.edu/ byob.berkeley.edu/
啟發語言
Scratch語言

Snap! 不用在本地設備上安裝任何部件,只需網絡瀏覽器即可。

歷史

編輯

Snap! 4.0和前身BYOB頁面存檔備份,存於互聯網檔案館)由來自加州伯克利大學的Jens Mönig開發,可以運行在WindowsMac OS XLinux系統[3][4]布萊恩·哈維提供創意和文檔[5][6][7] 。加州伯克利大學在面向非計算機專業學生的名為「計算的美和樂趣」的課程上使用Snap!。[8]

運行平台

編輯

Snap! 4.0 可運行在Apple iOSMac OS XWindowsLinux 上,用Javascript編寫,使用HTML5 Canvas API令其具有良好的跨平台性。

對比之下,Scratch 2.0用ActionScript編寫,不能在蘋果公司的iOS系統上運行。

用戶界面

編輯
 
Snap 4.0 開發環境

屏幕佈局和Scratch2.0之前的版本一致。部件區域在左面,代碼區域在中間,右上部是運行區域,右下部羅列動畫人物縮微。

特性

編輯

區別於Scratch的最重要的特性為:

  • 高階函數,數學上稱為"Λ演算"
  • 嵌套列表,例如列表的列表
  • 角色嵌套
  • Snap!代碼可轉換為其他主流程序語言,如Python, JavaScript和C等.

參考

編輯
  1. ^ Release 10.1.8. 2024年10月22日 [2024年10月27日]. 
  2. ^ jmoenig/Snap. GitHub. [3 January 2022]. (原始內容存檔於2022-04-21). 
  3. ^ Scratch - Imagine, Program, Share. scratch.mit.edu. [21 May 2017]. (原始內容存檔於2014-02-18). 
  4. ^ Mönig's blog post announcing BYOB as bringing protypal inheritance to Scratch. [2015-03-27]. (原始內容存檔於2013-12-06). 
  5. ^ HomePage for Brian Harvey (bh@cs.Berkeley.EDU). people.eecs.berkeley.edu/~bh/. [19 January 2019]. (原始內容存檔於2019-04-03). 
  6. ^ Brian Harvey user contributions page. [2015-03-27]. (原始內容存檔於2014-02-16). 
  7. ^ Brian Harvey's homepage. [2015-03-27]. (原始內容存檔於2014-01-23). 
  8. ^ The Beauty and Joy of Computing course homepage. [2015-03-27]. (原始內容存檔於2014-01-23). 

外部連結

編輯