- Source: Blockly
Blockly is a client-side library for the programming language JavaScript for creating block-based visual programming languages (VPLs) and editors. A project of Google, it is free and open-source software released under the Apache License 2.0. It typically runs in a web browser, and visually resembles the language Scratch.
Blockly uses visual blocks that link together to make writing code easier, and can generate code in JavaScript, Lua, Dart, Python, or PHP. It can also be customized to generate code in any textual programming language.
History
Blockly development began in summer 2011. The first public release was in May 2012 at Maker Faire. Blockly was originally designed as a replacement for OpenBlocks in App Inventor. Neil Fraser began the project with Quynh Neutron, Ellen Spertus, and Mark Friedman as contributors.
User interface
The default graphical user interface (GUI) of the Blockly editor consists of a toolbox, which holds available blocks, and where a user can select blocks, and a workspace, where a user can drag and drop and rearrange blocks. The workspace also includes, by default, zoom icons, and a trashcan to delete blocks. The editor can be modified easily to customize and limit the available editing features and blocks.
Customization
Blockly includes a set of visual blocks for common operations, and can be customized by adding more blocks. New blocks require a block definition and a generator. The definition describes the block's appearance (user interface) and the generator describes the block's translation to executable code. Definitions and generators can be written in JavaScript, or using a visual set of blocks, the Block Factory, which allows new blocks to be described using extant visual blocks; the intent is to make creating new blocks easier.
Applications
Blockly is used in several notable projects, including:
MIT's Scratch, visual programming environment for education
MIT's App Inventor, to create applications for Android.
MIT's CoCo, visual collaborative programming website for education.
Code.org, to teach introductory programing to millions of students in their Hour of Code program
Microsoft's MakeCode, "a free online learn-to-code platform where anyone can build games, code devices, and mod Minecraft"
RoboBlockly, a web-based robot simulation environment for learning coding and math
PICAXE, to control their educational microchips
SAM Labs, in STEAM learn-to-code "education solutions"
Features
Web-based using Scalable Vector Graphics (SVG)
Completely client-side JavaScript
Support of major web browsers including: Chrome, Firefox, Safari, Opera, Edge
Support for many programmatic constructs including variables, functions, arrays
Minimal type checking supported, designed for dynamically typed languages
Easy to extend with custom blocks
Clean code generation
Step-by-step code execution for tracing and debugging code
Localised into 100+ languages
Support for left-to-right and right-to-left languages
References
External links
Official website
Kata Kunci Pencarian:
- Blockly
- Made with Code
- List of JavaScript libraries
- Blocking
- The Block
- Scratch (programming language)
- Flowgorithm
- Blocker
- Visual programming language
- Code For Life