惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

K
Kaspersky official blog
云风的 BLOG
云风的 BLOG
IT之家
IT之家
T
The Blog of Author Tim Ferriss
C
Check Point Blog
N
Netflix TechBlog - Medium
宝玉的分享
宝玉的分享
T
Tailwind CSS Blog
G
Google Developers Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
F
Fortinet All Blogs
D
DataBreaches.Net
The Register - Security
The Register - Security
L
LINUX DO - 最新话题
W
WeLiveSecurity
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
V2EX - 技术
V2EX - 技术
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
小众软件
小众软件
F
Full Disclosure
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
I
InfoQ
S
Secure Thoughts
TaoSecurity Blog
TaoSecurity Blog
MyScale Blog
MyScale Blog
AI
AI
Recent Announcements
Recent Announcements
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Hugging Face - Blog
Hugging Face - Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
C
CXSECURITY Database RSS Feed - CXSecurity.com
V
Vulnerabilities – Threatpost
NISL@THU
NISL@THU
SecWiki News
SecWiki News
Cisco Talos Blog
Cisco Talos Blog
H
Heimdal Security Blog
Y
Y Combinator Blog
N
News | PayPal Newsroom
P
Privacy International News Feed
美团技术团队
Attack and Defense Labs
Attack and Defense Labs
D
Docker
PCI Perspectives
PCI Perspectives
Webroot Blog
Webroot Blog
A
About on SuperTechFans
A
Arctic Wolf
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
MongoDB | Blog
MongoDB | Blog
T
Threat Research - Cisco Blogs

夜行人

回家路上 第一期的直播演示项目 震动检测器 正能量 在线参观CodeLab Neverland 发布 CodeLab Adapter 3.3.1 DynamicTable 之 纸糊方向盘 CodeLab DynamicTable: 一个可实施的技术方案 CodeLab Insight 发布 Alpha 版 情人节 Home Assistant 周报 && IoT 周报 (02) Joplin: 关注隐私的 Evernote 开源替代软件 浏览器的未来与 Web 传感器 Home Assistant 周报 && IoT 周报 (01) 百宝箱(01) 论自由 介绍 WebThings Home Assistant 周报 && iot 周报 (00) 百宝箱(00) 毛姆读书心得 传世之作 周末徒步 CodeLab Adapter ❤️ Jupyter/Python 航班 躲雨 夏令营途中 [译]思想--作为一种技术 The future of coding 美国之行 三门问题的程序模拟 从Python转向Pharo https://blog.just4fun.site/post/iot/iot-open-source-projects/ Python异步编程笔记 https://blog.just4fun.site/post/iot/iot-open-source-hardware-community/ 万物积木化开发者社区 CodeLab ❤️ Blender Scratch3技术分析之云变量 API(第7篇) [译]对管道(Pipes)的偏爱 [译]提出正确的问题比得到正确答案更重要 蓝牙设备与Scratch3.0 创建你的第一个Scratch3.0 Extension Scratch3技术分析之项目内部数据(第6篇) Scratch3技术分析之社区 API(第5篇) Scratch3技术分析之User API(第4篇) Scratch3技术分析之项目主页API(第3篇) Scratch3技术分析之静态资源API(第2篇) Scratch3.0、micro:bit与Windows7 https://blog.just4fun.site/post/iot/zerynth-vs-micropython/ 核聚变、方所与半宅空间 可视化编程为何是个糟糕的主意 codelab.club周末聚会 关于codelab.club '下一件大事'是一个房间 Hungry Robot - Eat everything 编程作为一种思考方式 今日简史 史蒂夫·乔布斯传 罗素自选文集 https://blog.just4fun.site/post/edx/tianjin-scratch-ai/ https://blog.just4fun.site/post/edx/richie-cms-openedx/ 徒步武功山 WebUSB与micro:bit 积木化编程与3D场景 夜宿武功山顶 scratch3-adapter接入优必选Alpha系列机器人 https://blog.just4fun.site/post/edx/video-migration-note/ scratch3-adapter重构笔记 https://blog.just4fun.site/post/edx/edx-community-members/ 两种硬件编程风格的比较 使用micro:bit自制PPT翻页笔 柏拉图对话集 scratch3.0 + micro:bit 七月电影放映计划 非营利组织的管理 Screenly--用树莓派让任何屏幕变为可编程的数字标牌 以最佳实践开始你的Django项目 micro:bit与事件驱动 为Scratch3.0设计的插件系统(上篇) OCR应用一例 近两年读过的一些好书 blockly开发之使用python驱动浏览器中的turtle(2) 牛顿新传 文学理论入门 逻辑的引擎 人生的意义 blockly开发之生成并运行js代码(1) blockly开发之hello world(0) micro:bit使用笔记 神器之Termux https://blog.just4fun.site/post/iot/micropython-notes/ Cozmo what is this Scratch的前世今生 下段旅程 我行在远方 爆裂 途中杂记 https://blog.just4fun.site/post/edx/open-edx-startup/ cozmo系列之入门 - 有性格且可编程的机器人 PaperWeekly开发笔记 创业二三事
Snap! 使用笔记: 从 Scratch 进入 Snap! 的时机
种瓜 · 2023-03-01 · via 夜行人

文章目录

前言

低门槛、宽围墙、高天花板 – 《终身幼儿园》

如果你是一位编程新手, Scratch 或许是最好的选择。 Scratch 拥有庞大的社区、友好的社区文化, 以及丰富而优质的学习资源。

Scratch 团队对于引入新功能非常克制, 这保持了 Scratch 的简单性, 对新手非常友好; 但也付出了代价: 没有持续迭代优化和解决一些棘手问题,以至于社区里许多老用户不满。

如果你是重度 Scratch 用户, 经常撞到 Scratch 的天花板, Snap! 可能是你下一步的理想选择。

Snap! 保留了 Scratch 的低门槛(比 Scratch 要高一些)和宽围墙,但试图拆除 Scratch 的天花板

在 Scratch 里想要的东西

作为 Scratch 重度用户, 在 Scratch 里编程时, 你有时可能会想要下列这些东西:

  • 暂停/恢复程序
  • 支持调试(断点积木)
  • 自定义舞台大小
  • 支持函数返回值
  • 自定义帽子积木, 以便于处理"事件"!
  • 对象级别的广播(不只是全局广播)
  • 携带数据的广播积木
  • 使克隆体可见
  • 嵌套列表
  • 嵌套精灵
  • 与网络交互
  • 可编程的角色服装
  • 增强自定义积木(更多类型(reporter…)、下拉菜单、输入类型、指定类别…)
  • 原地更换积木
  • 强大而简单的可扩展机制
  • 自省和元编程能力
  • 积木与代码(lisp code)的双向转化

Scratch Addons/turbowarp 以 hack 的方式实现了愿望清单的一部分, 但限于 Scratch 的架构设计, 有些愿望可能永远无法实现(诸如 嵌套列表, 会破坏兼容性)。

Snap! 实现了上述愿望清单的所有条目,以及更多你一旦使用就会觉得哇塞的功能 !

如果你正在做以下这些事情, 你的头可能在 Scratch 的天花板上磕的有点疼:

  • 试图理解 Scratch 社区里的大型游戏: 难以理解,代码可读性差, 背后的原因是 Scratch 缺少合适的结构来组织代码和进行抽象,导致了代码杂乱难读。
  • 制作大型项目(诸如一部动画片): Scratch 不支持暂停和恢复程序, 这导致你经常需要一遍遍从头播放项目来进入 bug 中, 此外,你也无法进行单步调试
  • 在 Scratch 里学习和复现一些复杂算法: Scratch 的列表不支持嵌套,这导致许多数据结构难以制作; Scratch 的自定义积木是 command 类型(没有返回值), 这也造成了许多限制。
  • 你想编写插件来扩展 Scratch 的能力(像我之前在CodeLab Adapter里做的事情): 在 Scratch “下一层” 编写 JavaScript 代码非常臃肿、低效, 最要命的是没有乐趣! 这是 Scratch3.0 糟糕的底层设计导致的(Scratch 初代代码要比 Scratch3.0 优秀许多,让人费解)

如果你恰好在做这类事情,或许正是从 Scratch 进入 Snap! 的好时机。

如果你已经进入了 Snap! , 好奇可以在其中做那些有意思的事情, 欢迎参考我的这些文章

参考