Blockly概述

2023-11-10

原文地址:https://developers.google.com/blockly/guides/overview
Blockly是一个用于Web、Android、IOS的可视化代码编辑器库。Blockly使用了相互关联的积木来表示表达代码中变量、逻辑表达式、循环等。它让用户能够了解编程,而不用面对命令行上让人恐惧和枯燥的代码和语法。

创建Blockly应用

在用户看来,Blockly能够非常直观的创建代码。对于开发者来说,Blockly本质上是一个由积木生成的代码组成的文本框。Blockly能够将积木导出为多种流行的编程语言:
- JavaScript
- Python
- PHP
- Lua
- Dart

Blockly可以通过如下几种方式来构建的应用:
1、集成Blockly编辑器。Blockly编辑器由工具栏、积木类型商店、用户搭建积木的工作区组成。了解更多关于Blockly集成的信息参见Get Started.
2、为应用程序创建积木。一旦你的程序包含的Blockly,你需要为用户编程创建积木,并将它们添加到Blockly工具栏。参见:Create Custom Blocks Overview.
3、构建应用程序的其余部分。严格来说,Blockly只是一种生成代码的方式。对你的应用程序而言其核心应该是如何处理这些代码。

Blockly的优势和其它选择

Blockly是一种使用越来越广泛的可视化编程环境。决定使用哪些技术到你的应用程序中是非常关键的事情,所以这里列出了Blockly几条最大的优势:
- 可导出代码。用户可以将基于积木编写程序导出为通用语言编程并顺利的过度到基于文本的编程。
- 开源。Blockly所有的一切都是开放的:你可以复刻它、Hack它、以及将它使用的到你的Web或app中。
- 可扩展。Tweak Blockly运行为你的API添加自定义的积木或删除不必要的积木和功能。
- 功能强大。Blockly不是玩具。您可以实现复杂的编程任务,如使用一块积木计算标准偏差。
- 国际化。Blockly已经被翻译成了40多种语言,包括对阿拉伯语和希伯来语重右到左的阅读支持。

即时包含所有的优点,Blockly也不能支持所有应用的解决方案。这里列出了其它的可视化编辑器,也许你能够发现更适合你的:

  • Scratch Blocks:由麻省理工学院开发的基于积木的可视化编程,提供了非常简化的编程模型,更适合儿童学习。
  • Droplet:一款强大的Pencil Code图形化的编辑器,其特点是能够从代码转换为积木。
  • Snap:基于Scratch-inspired的图形化编程语言,它并不只是一个库,而是套完整的开发环境。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Blockly概述 的相关文章

  • 牛客SQL练习一

    1 题目描述 查找最晚入职员工的所有信息 CREATE TABLE employees emp no int 11 NOT NULL birth date date NOT NULL first name varchar 14 NOT NU
  • springboot自定义favicon.ico

    先上效果图 1 在application yml文件中必须修改配置 spring mvc favicon enabled false spring mvc favicon enabled false 2 在static文件下 ico转化地址
  • LeetCode-Python-1248. 统计「优美子数组」(数组 + 数学)

    给你一个整数数组 nums 和一个整数 k 如果某个子数组中恰好有 k 个奇数数字 我们就认为这个子数组是 优美子数组 请返回这个数组中 优美子数组 的数目 示例 1 输入 nums 1 1 2 1 1 k 3 输出 2 解释 包含 3 个
  • base64格式图片展示

    后端发图片 为base64格式的 前端接收后页面展示图片 处理方法 let imageData data image png base64 res data image 后端传来数据 如果base64位图片没有带前面得头 data imag
  • clickhouse索引原理介绍

    clickhouse本身支持很多表引擎 这里只介绍其中最常用的MergeTree引擎 建表语句 name1 type1 DEFAULT MATERIALIZED ALIAS expr1 TTL expr1 name2 type2 DEFAU
  • cannot import name ‘Merge‘ from ‘keras.layers‘解决方法

    首先根据报错提示 找到对应的文件 看看Merge是否在keras layers里 发现现在已经改成下图的了 直接复制粘贴到代码里即可 报错提示为王 别再扎错方向
  • 数据清洗的基本流程_数据分析几步走?告诉你全面系统的流程

    通过对 谁说菜鸟不会数据分析 的阅读 我们知道数据分析的一般流程为 明确分析目标 一切以目标为导向 确定分析思路 数据获取 数据处理 清洗 转化 提取 计算等 数据分析及可视化 报表撰写 这就是数据分析的一般流程 本章我们就讲一下各个流程中
  • MySQl数据库必会sql语句(提升版)

    原文链接 http blog csdn net qq 32059827 article details 51778816 这一篇属于加强版 问题和sql语句如下 创建users表 设置id name gender sal字段 其中id为主键
  • 5V转1.8V稳压芯片,3.7V转1.8V稳压芯片

    5V转1 8V稳压芯片 3 7V转1 8V稳压芯片 5V转1 8V芯片 3 7V转1 8V芯片 5V转1 8V降压芯片 3 7V转1 8V降压芯片 5V转1 8V电路图 3 7V转1 8V电路图 锂电池3 7V输入和供电5V输入 降压转换成
  • 没有调试适配器,无法发送“variables”

    vs code调试报 没有调试适配器 无法发送 variables 今天在vs code调试node区块链应用时 点开打印内容 提示如上 并看不到打印内容 原因及解决方法 出现在这种情况是因为node调试比较特殊 执行调试完成之后进程退出
  • node接收文件

    目录 html nodejs详细实现 nodejs简单实现 html
  • 原生js + canvas 实现刻度尺效果

    欢迎访问我的 个人博客 手势事件 touchstart 手指按下 touchmove 手指移动 touchend 手指抬起 效果图 完整代码 ruler js var ruler 初始化刻度尺插件 el 容器 String height 刻

随机推荐