Blockly を使用すると、ブロックのレンダリング、ドラッグ、接続の複雑さを気にすることなく、ドメインへのブロックの適用に集中できます。
次のような幅広い教育ユースケースに適用できます。
- テキストベースのプログラミングに向けて生徒に取り組む。
- 計算的思考を奨励する。
- 他の概念(物理学など)の計算による調査。
他にも、次のような多くの業界での活用事例があります。
- データ分析とクリーニング
- 自動化(ロボット工学、プロセス ワークフローなど)
- 構成(オンライン ショップ、IoT など)
強み
Blockly には多くの強みがあり、ブロックベースのプログラミング環境を構築するための最も一般的なオプションとなっています。
- 可用性。Blockly は NPM で公開されているため、他のウェブ依存関係が必要な場合と同じように要求できます。
- 充実した機能。Blockly には、一般的な 5 つのプログラミング言語(JavaScript、Python、Lua、Dart、PHP)でコードを生成する一般的なブロックがバンドルされています。さらに、活発なプラグイン エコシステムによって、さらなる機能も利用できます。
- カスタマイズ性。Blockly を使用すると、独自のブロック、フィールド、入力を簡単に定義できます。さらに、そのコア機能の多くは、独自のカスタム機能に置き換えることができます。
- 多言語対応。Blockly のブロックのコアライブラリには、アラビア語とヘブライ語の右から左へのバージョンを含む、90 以上の言語への翻訳が用意されています。
- オープンソース。Google は Blockly のテクノロジーを広く共有しているため、ともに次世代のデベロッパーを教育することができます。
代替方法
ユースケースによっては、Blockly 以外のライブラリを使用することが合理的な場合もあります。他にも次のようなオプションがあります。
- PXT: MakeCode を支える Blockly 上に構築されたエディタです。JavaScript のみを出力します。これにより、コードからブロックに変換できます。また、コンパイラとシミュレータもバンドルされています。
- Droplet: Pencil Code を強化するエディタです。入力してドラッグせずにブロックを作成できます。また、コードからブロックに移動することもできます。
- Node-red: ブロックベースではなくノードベースのプログラミング エディタですが、同様の機能を果たします。これは、業界でよく見られるハードウェア デバイスの相互接続で一般的です。