1. 程式人生 > >程式設計貓IDE體驗:對Scratch的改進

程式設計貓IDE體驗:對Scratch的改進

前兩天偶遇程式設計貓推介(為什麼沒有中文的程式設計?), 第一眼感覺像Scratch, 求證之下確實, 並且據說有改良. 今天非常粗淺地嘗試一下, 限於水平沒有做出很炫的效果, 不過頗有些發現.

首先上最終效果圖:
2018-02-06-1scratch_fibonacci
選擇了無趣的斐波那契函式, 在這個主打動畫和互動效果的開發環境裡應該屬於非常邊緣的使用者.

從頭開始說. 到官網上之後, 第一感覺是內容比較雜, 因為是衝著這個中文程式設計開發環境去的, 試了幾個連結才從"創作"進到一個類似的但是英文的介面. 因為只有這裡像帖子中的截圖, 於是試了"多語言"選項, 還好有"簡體中文". 也許因為筆者瀏覽器是英文介面, 因此預設英文環境?

“程式設計貓MOD程式設計器"好像是與MineCraft的整合, 但好像生成的程式碼需要到"Box”(程式碼島)執行, 時間有限就沒有體驗, 但希望網站的入口能夠調整一下, 或者把各個功能的關係介紹清楚一點.

(補記: 經官方論壇指出 “mod編輯器做的mod是放進多玩魔盒的手機版《我的世界》中體驗的,《程式碼島》是一個3D圖形化程式設計平臺哈,和mod編輯器沒關係”)

進入環境後, 比較了一下Scratch介面, 發現中間的控制元件欄作了修改, 採用了頂層選單, 點擊向右展開:
2018-02-06-2scratch_UI
與原版的佈局(下)相比, 猜測是出於最大化編輯框的考慮, 也許會對移動裝置更加友好, 但副效應是展開時容易遮住編輯框.
2018-02-06-3scratch原比較


嘗試過程中, 發現一些控制元件(如比較/邏輯運算)整合到了一個控制元件, 是個不錯的改進:
在這裡插入圖片描述
在這裡插入圖片描述

相比原版:
在這裡插入圖片描述

通過類似整合, 減少了控制元件數量, 另外增加了不少輔助功能的控制元件, 如"是整/質/正/負數", 等等. 不過, 在控制元件排序上, 還有改進空間, 比如運算部分:
在這裡插入圖片描述
頭尾兩部分都是邏輯運算, 但中間插了一塊數值運算.

在定義函式的過程中, 發現引數好像是自動識別型別, 輸入是文字的話, 比如"測試", +1操作就返回"測試1", 輸入2就返回3. 原版貌似是宣告引數型別.

體驗中最意外的是, 程式設計貓支援了函式返回值功能, 而即使還未釋出的Scratch 3.0(Scratch 3.0 - Scratch Wiki

)好像也沒有這個功能. 經斐波那契測試, 感覺對於絕大多數這個環境中的用途應該足夠了(函式內的區域性變數沒有深入測試, 不確定是否支援).

在漢化方面, 還有改進的空間, 比如控制元件的演示字串不少還是Hi, Hello, abc之類; 顯示(2/0)的結果是"Infinity", 仍然在某些地方把block翻譯成"積木"(原版的漢化版如此. 程式設計貓已經把新建block改成了"函式", 是個改進)

總體感覺, 開發者的改進是頗費了一番心思, 並且對缺失的關鍵功能做了突破. 個人比較期待的一個功能是, 函式釋出/共享, 以及官方維護一個比較常用的"標準庫", 比如更復雜的動作(轉圈, 加速等等), 更復雜的運算等等. 這樣就離一個實用的遊戲/動畫引擎和開發環境更近了一步. 而且利用他人開發的函式庫還可以促進團隊開發理念和開源互助的推廣, 也是少兒教育的一個重要部分.

矚目!