Blockly
作者 | Neil Fraser, Quynh Neutron, Ellen Spertus(英語版), Mark Friedman |
---|---|
開発元 | Google, MIT |
初版 | 2012年5月 (12年前) (2012-05) |
最新版 | Q1 2022 Patch 3 / 2022年6月8日 (2年前) (2022-06-08)[1] |
リポジトリ | github |
プログラミング 言語 | JavaScript |
対応OS | Android, iOS、Windows |
プラットフォーム | Webブラウザ |
サイズ | 150 キロバイト |
対応言語 | 50言語 |
対応言語一覧 英語 | |
種別 | ライブラリ |
ライセンス | Apache License 2.0 |
公式サイト | developers |
テンプレートを表示 |
Blocklyは、Googleが開発するブロックベースのビジュアルプログラミング言語と、エディターを提供するオープンソースのクライアント用JavaScriptのライブラリである[2]。
Blocklyでは、ビジュアルブロックを使用してJavaScript、Lua、Dart、Python、 PHPのコードを簡単に生成することができる。
Blocklyは、Apache License 2.0で提供されている。[3]
歴史
2011年の夏にBlocklyの開発が始まった。App Inventor内のOpenBlocksの代替になるものとして[4]、Neil Fraserが、Quynh Neutron、Ellen Spertus(英語版)、Mark Friedmanと共に開発を行った。
2012年5月にはMaker Faire(英語版)ではじめて一般公開が行われた。
UI
Blocklyのグラフィカルユーザインタフェース(GUI)は、デフォルトでは以下から構成されている[5]。
- ツールボックス(利用できるブロックが表示され、そこから選択できる)
- ワークスペース(ブロックをドラッグ・アンド・ドロップして、並べることができる)
- ズームアイコン
- ゴミ箱(ブロックを削除できる)
このエディターは、カスタマイズして使用可能な機能やブロックを制限するために、簡単に変更できるようになっている。
カスタマイズ
Blocklyには、一般的な操作をするためのブロックのセットが用意されており、ブロックを追加してカスタマイズすることができる。
新しいブロックは定義とジェネレータを必要とする。定義で、ブロックの動作(ユーザーインタフェース)を説明し、ジェネレータは、コードを実行可能にするために、コードを翻訳している。
定義とジェネレータは、JavaScript、またはブロックファクトリーを使用して、既存のブロックから作成することができる。後者の方が、より簡単にブロックを作成することができる。
ソフトウェア
Blocklyは以下のようなソフトウェアに使用されている。
- Scratch(教育のためのビジュアルプログラミング環境)[6]
- App Inventor(Androidでアプリを作成)[7]
- Code.org(Hour of Codeプログラムで、多くの生徒にプログラミングの入門を教えている)[8]
- MakeCode(誰でもゲーム、コードデバイス、マインクラフトのMODが作れる、無料のオンラインプラットフォーム)[9][10]
- RoboBlockly(英語版)(コーディングと数学を学ぶための、Web上のロボットシミュレーション環境)
- PICAXE(英語版)(教育用のマイクロコントローラを操作)[11]
- MCreator
特徴
- Web上で動作し、SVGを使用(Flashなし)
- クライアントサイドのJavascriptで完結
- 主要なWebブラウザに対応(Chrome、Firefox、Safari、Opera)
- 多くのプログラム方法に対応(変数、関数、配列)
- 最小限の型チェックをサポート
- カスタムブロックによる拡張が簡単
- コードの追跡とデバッグのために、ステップごと実行するモード[12]
- 100以上の言語に対応[13]
- 左から・右から読む言語の両方に対応[14]
脚注
- ^ “Release Q1 2022 Patch 3 · google/Blockly”. GitHub. 2023年4月4日閲覧。
- ^ “Blockly”. Google for Developers. 2023年10月11日閲覧。
- ^ Metz, Cade. “Google Blockly Lets You Hack With No Keyboard” (英語). Wired. ISSN 1059-1028. https://www.wired.com/2012/06/google-blockly/ 2024年2月2日閲覧。
- ^ “Is Blockly related to the programming language Logo?”. groups.google.com. 2024年2月2日閲覧。
- ^ “Google Blockly - A Graphical Language with a Difference”. www.i-programmer.info. 2024年2月2日閲覧。
- ^ “Scratch 3.0's new programming blocks, built on Blockly” (英語). 2024年2月2日閲覧。
- ^ “MIT's App Inventor”. ai2.appinventor.mit.edu. 2024年2月2日閲覧。
- ^ “Help Translate”. Code.org. 2024年2月2日閲覧。
- ^ “Microsoft MakeCode Computer Science Education” (英語). Microsoft MakeCode. 2024年2月2日閲覧。
- ^ “Microsoft MakeCode” (英語). Microsoft Research. 2024年2月2日閲覧。
- ^ “Blockly for PICAXE - Software - PICAXE”. picaxe.com. 2024年2月2日閲覧。
- ^ “JS Interpreter”. google.github.io. 2024年2月2日閲覧。
- ^ “メッセージ群別の翻訳状況 - translatewiki.net”. translatewiki.net. 2024年2月2日閲覧。
- ^ “RTL”. google.github.io. 2024年2月2日閲覧。
外部リンク
- 公式ウェブサイト