scratch3.0二次开发scratch3.0基本介绍(第一章)
为什么要自己开发而不使用官方版本?
这个问题要看我们的做少儿编程教育的需求是怎么样的。
scratch本身提供了离线版本以及官网在线平台供我们使用,这足以满足我们对于编程教学模块的需求。但是对于一些教育培训机构或者学校而言,他们可能需要在此基础上整合学生信息,整合课程体系,对学生的学习情况进行统一管理和在线数据分析,包括支持课程作品的分享与转发,构建自己的教学品牌并实现线上的传播推广,等等,都需要我们在支持编程教学功能的基础上,引入线上社区、课程管理、综合管理等更丰富的功能,而这些就是二次开发的主要工作。
为什么要选择3.0?
不管是从架构还是从UI上,3.0都比2.0都有了很大的改变。
特别是3.0采用HTML5而不是2.0版本使用的flash,随着H5技术逐渐发展,原本采用flash技术的已经逐渐在向H5转移,相对于flash来讲,H5在页面的装载速度上整体上会更快一些,另外也相对较为省电。更为重要的是,flash对于移动端没什么办法,IOS压根就不支持它。Scratch 3.0是可以在手机和平板上运行的,因为H5需要的是Javascript的支持,这在现代浏览器上基本都是没问题的,移动端也不例外。
另外Scratch 3.0是向下兼容的,因此原来2.0的项目在3.0上也是可以运行的,但从实际测试的效果来看,有些2.0的项目还是会让3.0崩溃。
所以如果计划采用Scratch的,选择3.0是肯定的,如果已经采用了2.0的版本,我的建议是逐渐迁移到3.0上,不管怎么说,单单移动端可以运行的理由就足够了,更不用说其他的一些新的功能比如声音控制Scratch项目。当然目前来开3.0还有一些功能上不稳定的地方,但在MIT和各位开源工作者的一起努力下,都会逐渐得到解决。
Scratch 3.0为我们开源了哪些东西?
https://github.com/LLK是scratch官方的git仓库。3.0相关的工程主要包括以下几个:
我们这里主要基于scratch-gui项目进行二次开发,它就是一个开源scratch 3.0编辑器,效果就是https://llk.github.io/scratch-gui/develop/。
在使用它创建作品的基础上,我们希望能够实现用户管理、用户社区、作品在线编辑和云端保存、作品分享、自定义品牌logo和角色等主要功能。
至于其他的项目,我也还没有开始研究,但是从项目介绍我们可以知道scratch-paint是绘图编辑器,scratch-www是像scratch官网一样的作品社区,scratch-I10n是国际化相关的,而如果想对scratch编辑器本身做更高级的扩展,可以研究scratch-vm项目,它本身也是被包含在scratch-gui项目中了。
下一章我们将开始着手拉取scratch-gui项目的代码到我们本地,搭建环境将它运行起来。
scratch3.0二次开发scratch3.0基本介绍(第一章)的更多相关文章
- 17 win7 sp1 x64/VS2015下配置creo4.0二次开发环境——调用了众多开源库(ceres-solver,PCL1.8.0,office 2016COM接口,MySql数据库等)
0 引言 本次开发环境的配置是在综合考虑了开源库的版本.VS版本以及CREO4.0的版本,同时针对甲方需求选择了win7 sp1 x64系统. 配置的过程中遇到了形形色色的问题,但是一一解决了.通过这 ...
- JMeter4.0二次开发之导入eclipse
1.先建立工程,命名为JMeter4.0. JDK版本为10.0.1 2.在官网下载src文件,通过文件系统导入到JMeter4.0工程中 3.在ant中选择download_jars,ant会自动下 ...
- HTML5 Canvas核心技术图形动画与游戏开发(读书笔记)----第一章,基础知识
一,canvas元素 1 为了防止浏览器不支持canvas元素,我们设置“后备内容”(fallback content),下面紫色的字即为后备内容 <canvas id="canvas ...
- React开发实时聊天招聘工具 -第一章
第一章 课程道学 6个页面 弱化css Antd-mobile作为组件库 Redux 状态管理 React-Router 路由 Axios异步请求 后端Express框架 Socket.io 数据库: ...
- CRMEB小程序商城v4.0二次开发对接集成阿里云短信
作者:廖飞 - CRMEB小程序商城研发项目组长 前言 cremb小程序商城v4.0版本支持短信平台为云信,但有部分用户有需求对接阿里云短信,这篇文章将对阿里云短信平台如何对接方以及对接流程详细说明. ...
- IDEA 编译 Jmeter 4.0 ( 二次开发_1 )
IDEA 编译 Jmeter 下载 http://jmeter.apache.org/download_jmeter.cgi 下载源码后解压『Jmeter』,我这边下载的是最新的『apache-jme ...
- IDEA 编译 Jmeter 5.0(二次开发)
windows10 操作系统,jdk1.8,Intellij IDEA 2018,jmeter5.0 1.下载 http://jmeter.apache.org/download_jmeter.cgi ...
- VC++第三方库配置-OpenSpirit 4.2.0 二次开发
在VS中右击项目,点击属性 1.配置属性--常规--输出目录:Windows\VS2010\debug\ 2.配置属性--常规--中间目录:Windows\VS2010\debug\ 3.配置属性-- ...
- TinkPHP框架开发的CRMEB小程序商城v4.0二次开发集成支付宝支付
前言 大家都知道支付宝支付和微信支付宝都只能局限在自己的平台,微信内支付宝支付是根本就不能使用,即使是公众号支付也需要跳转到外部浏览器才可以唤起支付宝支付,并且QQ浏览器唤起支付宝支付还是问题很多,所 ...
随机推荐
- python基础九之函数
1,函数的定义 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数分为自定义函数和内置函数,内置函数就是python内部自带的一些函数,如:print().int()等.自定义函数 ...
- React 简书
create-react-app jianshu yarn add styled-components -D 利用js写css样式 样式会更高效 https://github.com ...
- H3C 多路径网络中环路避免操作示例
- 【js】vue 2.5.1 源码学习 (十一) 模板编译compileToFunctions渲染函数
大体思路(九) 本节内容: 1. compileToFunctions定位 1. compileToFunctions定位 ==> createCompiler = createCompiler ...
- linux内核符号表
我们已经看到 insmod 如何对应共用的内核符号来解决未定义的符号. 表中包含了全局内 核项的地址 -- 函数和变量 -- 需要来完成模块化的驱动. 当加载一个模块, 如何由模块 输出的符号成为内核 ...
- 如何在很短的时间内将大量数据插入到ConcurrentHashMap(转)
将大批量数据保存到map中有两个地方的消耗将会是比较大的:第一个是扩容操作,第二个是锁资源的争夺.第一个扩容的问题,主要还是要通过配置合理的容量大小和扩容因子,尽可能减少扩容事件的发生:第二个锁资源的 ...
- javascript拷贝
function copy(obj){ //浅拷贝 var result = {}; for(var attr in obj){ result[attr] = obj[attr]; } return ...
- (转载)window安装mysql
一.MYSQL的安装 1.打开下载的mysql安装文件mysql-5.5.27-win32.zip,双击解压缩,运行“setup.exe”. 2.选择安装类型,有“Typical(默认)”.“Comp ...
- EF 配置多个数据库
1.先创建两个DbContext using System; using System.Data.Common; using System.Data.Entity; using System.Data ...
- 《提升能力,涨薪可待》-Java并发之AQS全面详解
欢迎关注公众号[Ccww笔记],原创技术文章第一时间推出 一.AQS是什么?有什么用? AQS全称AbstractQueuedSynchronizer,即抽象的队列同步器,是一种用来构建锁和同步器的框 ...