为什么要自己开发而不使用官方版本?

这个问题要看我们的做少儿编程教育的需求是怎么样的。

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基本介绍(第一章)的更多相关文章

  1. 17 win7 sp1 x64/VS2015下配置creo4.0二次开发环境——调用了众多开源库(ceres-solver,PCL1.8.0,office 2016COM接口,MySql数据库等)

    0 引言 本次开发环境的配置是在综合考虑了开源库的版本.VS版本以及CREO4.0的版本,同时针对甲方需求选择了win7 sp1 x64系统. 配置的过程中遇到了形形色色的问题,但是一一解决了.通过这 ...

  2. JMeter4.0二次开发之导入eclipse

    1.先建立工程,命名为JMeter4.0. JDK版本为10.0.1 2.在官网下载src文件,通过文件系统导入到JMeter4.0工程中 3.在ant中选择download_jars,ant会自动下 ...

  3. HTML5 Canvas核心技术图形动画与游戏开发(读书笔记)----第一章,基础知识

    一,canvas元素 1 为了防止浏览器不支持canvas元素,我们设置“后备内容”(fallback content),下面紫色的字即为后备内容 <canvas id="canvas ...

  4. React开发实时聊天招聘工具 -第一章

    第一章 课程道学 6个页面 弱化css Antd-mobile作为组件库 Redux 状态管理 React-Router 路由 Axios异步请求 后端Express框架 Socket.io 数据库: ...

  5. CRMEB小程序商城v4.0二次开发对接集成阿里云短信

    作者:廖飞 - CRMEB小程序商城研发项目组长 前言 cremb小程序商城v4.0版本支持短信平台为云信,但有部分用户有需求对接阿里云短信,这篇文章将对阿里云短信平台如何对接方以及对接流程详细说明. ...

  6. IDEA 编译 Jmeter 4.0 ( 二次开发_1 )

    IDEA 编译 Jmeter 下载 http://jmeter.apache.org/download_jmeter.cgi 下载源码后解压『Jmeter』,我这边下载的是最新的『apache-jme ...

  7. IDEA 编译 Jmeter 5.0(二次开发)

    windows10 操作系统,jdk1.8,Intellij IDEA 2018,jmeter5.0 1.下载 http://jmeter.apache.org/download_jmeter.cgi ...

  8. VC++第三方库配置-OpenSpirit 4.2.0 二次开发

    在VS中右击项目,点击属性 1.配置属性--常规--输出目录:Windows\VS2010\debug\ 2.配置属性--常规--中间目录:Windows\VS2010\debug\ 3.配置属性-- ...

  9. TinkPHP框架开发的CRMEB小程序商城v4.0二次开发集成支付宝支付

    前言 大家都知道支付宝支付和微信支付宝都只能局限在自己的平台,微信内支付宝支付是根本就不能使用,即使是公众号支付也需要跳转到外部浏览器才可以唤起支付宝支付,并且QQ浏览器唤起支付宝支付还是问题很多,所 ...

随机推荐

  1. H3C 查看RIP的debugging信息

  2. Python--day38--事件

    1,事件的方法: #set和clear #分别用来修改一个事件的状态 True或者False#is_set用来查看一个事件的状态#wait 是依据事件的状态来决定自己是否阻塞# False最 True ...

  3. Codeforces Beta Round #4 (Div. 2 Only) D. Mysterious Present(LIS)

    传送门 题意: 现在我们有 n 个信封,然后我们有一张卡片,并且我们知道这张卡片的长和宽. 现给出这 n 个信封的长和宽,我们想形成一个链,这条链的长度就是这条链中所含有的信封的数量: 但是需要满足① ...

  4. java 类加载器的委托机制

    l 当Java虚拟机要加载一个类时,到底派出哪个类加载器去加载呢? 1.首先当前线程的类加载器去加载线程中的第一个类. 2.如果类A中引用了类B,Java虚拟机将使用加载类A的类装载器来加载类B. 3 ...

  5. linux 读者/写者自旋锁

    内核提供了一个自旋锁的读者/写者形式, 直接模仿我们在本章前面见到的读者/写者旗标. 这些锁允许任何数目的读者同时进入临界区, 但是写者必须是排他的存取. 读者写者锁有 一个类型 rwlock_t, ...

  6. C# 从零开始写 SharpDx 应用 笔刷

    本文告诉大家如何在 SharpDx 里面使用笔刷,包括纯色笔刷.渐变笔刷和图片笔刷 本文属于 SharpDx 系列 博客,建议从头开始读 初始化 本文将会在 C# 从零开始写 SharpDx 应用 初 ...

  7. Java中i++和++i

    直接上代码: int i = 0;  for (++i; ++i <= 2; ++i) {   System.out.println("循环内的i=" + i);  }  S ...

  8. iptables总结,开启端口,查看端口占用情况

    Centos查看端口占用情况和开启端口命令 Centos查看端口占用情况命令,比如查看80端口占用情况使用如下命令: lsof -i tcp:80 列出所有端口 netstat -ntlp mac上查 ...

  9. Java中大量if...else语句的消除替代方案

    在我们平时的开发过程中,经常可能会出现大量If else的场景,代码显的很臃肿,非常不优雅.那我们又没有办法处理呢? 针对大量的if嵌套让代码的复杂性增高而且难以维护.本文将介绍多种解决方案. 案例 ...

  10. Vue+Element实现网页版个人简历系统

    这篇文章介绍一个使用Vue+Element实现的个人简历系统,主要用到的技术有:vue.element.css3.css定位. 作者在window10进行开发,目前只在chrome上进行过测试,没有大 ...