提供: Japanese Scratch-Wiki
(→実装) |
|||
(他の1人の利用者による、間の7版が非表示) | |||
1行目: | 1行目: | ||
− | {{ひらがなヘッダ}}[[ファイル:3.0開発者版 拡張機能.png|thumb|right|380px|拡張機能たち]] | + | {{ひらがなヘッダ}}{{注目の記事|2020年11月}} |
+ | |||
+ | [[ファイル:{{#setmainimage:3.0開発者版 拡張機能.png}}|thumb|right|380px|拡張機能たち]] | ||
'''拡張機能'''は、[[Scratch 3.0]]の機能のひとつで、ブロックを追加してScratchのプログラムを拡張するものである。拡張機能自体は[[Scratch 2.0]]にも存在したが、3.0のバージョンではより使いやすいものとなっている。拡張機能は、[[ライブラリー (3.0)|拡張機能ライブラリー]]から選択できる。 | '''拡張機能'''は、[[Scratch 3.0]]の機能のひとつで、ブロックを追加してScratchのプログラムを拡張するものである。拡張機能自体は[[Scratch 2.0]]にも存在したが、3.0のバージョンではより使いやすいものとなっている。拡張機能は、[[ライブラリー (3.0)|拡張機能ライブラリー]]から選択できる。 | ||
+ | |||
+ | 一度読み込まれた拡張機能を除去するには、拡張機能のブロックを全部削除してプロジェクトを保存し、{{キー押下|F5}}キーで再度読み込む。([[Scratch 3 (アプリ)|Scratch 3 アプリ]]では、一度終了し再度開く。) | ||
+ | |||
+ | == 種類 == | ||
+ | 拡張機能は、内部の仕組みから以下の2つに分類できる: | ||
+ | * サンドボックス化されていない拡張機能: 現在拡張機能ライブラリーから追加できる拡張機能。 | ||
+ | * サンドボックス化された拡張機能: 公式には読み込み手段は存在しないが、[[mod版Scratch|mod]]をすると読み込める。Web Workerを利用してサンドボックス化できる。 | ||
+ | |||
+ | また、拡張機能の内容から、以下のようにも分類できる。 | ||
+ | * 外部機器を扱う拡張機能: micro:bit、Makey Makeyなど | ||
+ | * APIを扱う拡張機能: 翻訳、音声合成 | ||
+ | * Scratch 2.0に存在したブロックを扱う拡張機能: ペン、音楽など | ||
+ | |||
+ | さらに、Scratchチームが作成した「公式」の拡張機能とmod等で追加された「非公式」の拡張機能という区分もできる。 | ||
== 一覧 == | == 一覧 == | ||
18行目: | 34行目: | ||
== 拡張機能に関する誤解や騒動 == | == 拡張機能に関する誤解や騒動 == | ||
* ペンブロックや音楽関係ブロックの拡張機能化に伴い、そのブロックが廃止されたと誤解した人がいた。 | * ペンブロックや音楽関係ブロックの拡張機能化に伴い、そのブロックが廃止されたと誤解した人がいた。 | ||
− | * | + | * Scratch デスクトップのバージョン3.14.0以前では、パソコン上にて、Bluetooth接続を行う拡張機能は、Scratch デスクトップであってもネットワーク接続も必要とした。よって、完全オフラインではBluetooth機器を扱えなかった。バージョン3.14.0以降では、Scratch デスクトップ上ではそのような拡張機能の使用にはインターネット接続は不要となった。 |
* Scratchのバグにより、開発中でライブラリーに追加されていない「音声認識拡張機能」が本番環境で使用できた時期があった。これは、JSONをハッキングして「読み込む拡張機能」の部分に<code>speech2text</code>を追加することで行える。現在バグは修正され、また音声認識拡張機能を含んだプロジェクトは削除/非共有になった。 | * Scratchのバグにより、開発中でライブラリーに追加されていない「音声認識拡張機能」が本番環境で使用できた時期があった。これは、JSONをハッキングして「読み込む拡張機能」の部分に<code>speech2text</code>を追加することで行える。現在バグは修正され、また音声認識拡張機能を含んだプロジェクトは削除/非共有になった。 | ||
+ | * Scratchの脆弱性、[[CVE-2020-14000]]は、拡張機能の自動読み込みに関連している。 | ||
== 実装 == | == 実装 == |
2020年12月10日 (木) 15:39時点における最新版
このきじは ひらがなのページがありません。ごめんなさい。
![]() |
この記事は2020年11月の注目の記事です。 |
拡張機能は、Scratch 3.0の機能のひとつで、ブロックを追加してScratchのプログラムを拡張するものである。拡張機能自体はScratch 2.0にも存在したが、3.0のバージョンではより使いやすいものとなっている。拡張機能は、拡張機能ライブラリーから選択できる。
一度読み込まれた拡張機能を除去するには、拡張機能のブロックを全部削除してプロジェクトを保存し、F5キーで再度読み込む。(Scratch 3 アプリでは、一度終了し再度開く。)
種類
拡張機能は、内部の仕組みから以下の2つに分類できる:
- サンドボックス化されていない拡張機能: 現在拡張機能ライブラリーから追加できる拡張機能。
- サンドボックス化された拡張機能: 公式には読み込み手段は存在しないが、modをすると読み込める。Web Workerを利用してサンドボックス化できる。
また、拡張機能の内容から、以下のようにも分類できる。
- 外部機器を扱う拡張機能: micro:bit、Makey Makeyなど
- APIを扱う拡張機能: 翻訳、音声合成
- Scratch 2.0に存在したブロックを扱う拡張機能: ペン、音楽など
さらに、Scratchチームが作成した「公式」の拡張機能とmod等で追加された「非公式」の拡張機能という区分もできる。
一覧
公式には、以下の拡張機能がある。
- micro:bit拡張機能 - micro:bitのサポート。ネットワーク接続、Scratch LinkとBluetoothが必要。
- ペン拡張機能 - ペンブロックが移動した。
- 音楽拡張機能 - 音ブロックの一部が移動した。MIDI楽器を扱う。
- ビデオモーションセンサー拡張機能 - 調べるブロックの一部が移動した。ビデオモーションを扱う。カメラが必要。
- 翻訳拡張機能 - Google翻訳を行う拡張機能。
- 音声合成拡張機能 - Scratchに文章をしゃべらせる拡張機能。
- Makey Makey拡張機能 - 本質的に() キーが押されたときブロックと同じだが、押された順番を考慮するブロックもある点が異なる。
- LEGO MINDSTORMS EV3拡張機能 - LEGOのMINDSTORMSをサポートする。ネットワーク接続、Scratch LinkとBluetoothが必要。
- LEGO WeDo 2.0拡張機能 - LEGO WeDo(2.0のみ)をサポートする。ネットワーク接続、Scratch LinkとBluetoothが必要。
- LEGO BOOST拡張機能 - LEGO BOOSTをサポートする。ネットワーク接続、Scratch LinkとBluetoothが必要。
- Go Direct Force & Acceleration拡張機能 - Go Direct Force & Accelerationをサポートする。ネットワーク接続、Scratch LinkとBluetoothが必要。
拡張機能に関する誤解や騒動
- ペンブロックや音楽関係ブロックの拡張機能化に伴い、そのブロックが廃止されたと誤解した人がいた。
- Scratch デスクトップのバージョン3.14.0以前では、パソコン上にて、Bluetooth接続を行う拡張機能は、Scratch デスクトップであってもネットワーク接続も必要とした。よって、完全オフラインではBluetooth機器を扱えなかった。バージョン3.14.0以降では、Scratch デスクトップ上ではそのような拡張機能の使用にはインターネット接続は不要となった。
- Scratchのバグにより、開発中でライブラリーに追加されていない「音声認識拡張機能」が本番環境で使用できた時期があった。これは、JSONをハッキングして「読み込む拡張機能」の部分に
speech2text
を追加することで行える。現在バグは修正され、また音声認識拡張機能を含んだプロジェクトは削除/非共有になった。 - Scratchの脆弱性、CVE-2020-14000は、拡張機能の自動読み込みに関連している。
実装
- 詳細は「拡張機能の実装 (3.0)」を参照
- 詳細は「Scratch 3.0の拡張機能を作ってみよう」を参照
拡張機能はほかのブロックと異なり、scratch-vmで定義されている。ライブラリー項目はscratch-guiで定義されている。