Discuss Scratch

aalaalscratcher
Scratcher
100+ posts

Scratch への提案

改ページ忘れてるぅ #8520

DeliciousTacos_S wrote:

パソコンの環境によってブロック数が100個や200個でも通信速度が遅くなり閲覧やプレイに支障が出ると思います。そのため変わらないように感じるのはあなたのパソコンの通信環境、スペックがいいからだと思います
では、その「ブロック数が100個でも遅くなる環境」の例を出してください
わたしの知る限りそのような環境は聞いたことがありません
殆どの場合、そこまで少ないブロック数でも重くなるのは
個人の環境が原因の場合や環境以外が原因の場合が多いです

Last edited by aalaalscratcher (Today 02:44:40)

mashu_Official
Scratcher
100+ posts

Scratch への提案

#8520
その程度のブロック数で重くなるってどれだけ低スペックなんですか…。本当にそうなら買い替えるべきです。
インターネットなどの問題の可能性もありますが。
被った

Last edited by mashu_Official (Today 02:49:02)

inoking
Scratcher
1000+ posts

Scratch への提案

#8517:

DeliciousTacos_S wrote:

inoking wrote:

一般に、他のスプライトを外部から操作することはよろしくありません。
メッセージを送るのはブロック量を増やすのであまり理想的ではないと思います
Scratch は「オブジェクト指向」的な作りになっているので
「理想的かどうか」であれば、メッセージのほうがより「理想的(設計思想に沿っている)」となるはずです。
それを崩すのはより現実に即したやり方かもしれませんが「理想的」とは言えないはずです。

代用方法はいくつも考えられますが
「現実的に」、動作に影響をきたすほどブロック量は増えません。
DeliciousTacos_S
New Scratcher
10 posts

Scratch への提案

aalaalscratcher wrote:

改ページ忘れてるぅ #8520

DeliciousTacos_S wrote:

パソコンの環境によってブロック数が100個や200個でも通信速度が遅くなり閲覧やプレイに支障が出ると思います。そのため変わらないように感じるのはあなたのパソコンの通信環境、スペックがいいからだと思います
では、その「ブロック数が100個でも遅くなる環境」の例を出してください
わたしの知る限りそのような環境は聞いたことがありません
殆どの場合、そこまで少ないブロック数でも重くなるのは
個人の環境が原因の場合や環境以外が原因の場合が多いです
教育用などの学校で支給されているパソコンや土日などインターネットがよく使われている環境(フリーWi-Fiなど)だと重くなりやすいです
(そうそうフリーWi-Fiで使う方は少ないと思いますが…)
DeliciousTacos_S
New Scratcher
10 posts

Scratch への提案

inoking wrote:

#8517:

DeliciousTacos_S wrote:

inoking wrote:

一般に、他のスプライトを外部から操作することはよろしくありません。
メッセージを送るのはブロック量を増やすのであまり理想的ではないと思います
Scratch は「オブジェクト指向」的な作りになっているので
「理想的かどうか」であれば、メッセージのほうがより「理想的(設計思想に沿っている)」となるはずです。
それを崩すのはより現実に即したやり方かもしれませんが「理想的」とは言えないはずです。

代用方法はいくつも考えられますが
「現実的に」、動作に影響をきたすほどブロック量は増えません。
ですがオンラインゲームなどだと飛躍的にブロック数が増えるのでその場合はメッセージはあまり理想的ではありません
(ブロック数があまりない作品などでは変数やブロック定義を使わなくてもメッセージを送ったほうが良いかもしれません理由はScratchを始めてすぐの方には使いやすいからです)
mashu_Official
Scratcher
100+ posts

Scratch への提案

DeliciousTacos_S wrote:

ですがオンラインゲームなどだと飛躍的にブロック数が増えるのでその場合はメッセージはあまり理想的ではありません
(ブロック数があまりない作品などでは変数やブロック定義を使わなくてもメッセージを送ったほうが良いかもしれません理由はScratchを始めてすぐの方には使いやすいからです)
そんなちょっとブロック増やすだけでは大きく動作は変わらないと思うのですが。
kurosio-ZP
Scratcher
14 posts

Scratch への提案

DeliciousTacos_S wrote:

ですがオンラインゲームなどだと飛躍的にブロック数が増えるのでその場合はメッセージはあまり理想的ではありません
(ブロック数があまりない作品などでは変数やブロック定義を使わなくてもメッセージを送ったほうが良いかもしれません理由はScratchを始めてすぐの方には使いやすいからです)
そもそもそもなのですが、そのブロックを使う機会もあまり多くないように感じます。
スプライト同士が干渉していると他の人がコードを見た時に、理解しにくいという欠点もあります。
DeliciousTacos_S
New Scratcher
10 posts

Scratch への提案

mashu_Official wrote:

DeliciousTacos_S wrote:

ですがオンラインゲームなどだと飛躍的にブロック数が増えるのでその場合はメッセージはあまり理想的ではありません
(ブロック数があまりない作品などでは変数やブロック定義を使わなくてもメッセージを送ったほうが良いかもしれません理由はScratchを始めてすぐの方には使いやすいからです)
そんなちょっとブロック増やすだけでは大きく動作は変わらないと思うのですが。
ブロックを増やすだけで動作が変わらないは違うと思います。私は学タブでScratchをしているのですがブロックが100個以上あると動作が遅くなります。(個人の意見です。)学タブは学習するためのものなので低スペックのものが多いと思います。
DeliciousTacos_S
New Scratcher
10 posts

Scratch への提案

kurosio-ZP wrote:

DeliciousTacos_S wrote:

ですがオンラインゲームなどだと飛躍的にブロック数が増えるのでその場合はメッセージはあまり理想的ではありません
(ブロック数があまりない作品などでは変数やブロック定義を使わなくてもメッセージを送ったほうが良いかもしれません理由はScratchを始めてすぐの方には使いやすいからです)
そもそもそもなのですが、そのブロックを使う機会もあまり多くないように感じます。
スプライト同士が干渉していると他の人がコードを見た時に、理解しにくいという欠点もあります。
理解のしやすさで言えばメッセージを送るが少ない方が理解しやすいのかもしれません。「あまりにメッセージを送るが少なすぎると理解しにくくなりますが..」

Last edited by DeliciousTacos_S (Today 05:02:50)

DeliciousTacos_S
New Scratcher
10 posts

Scratch への提案

mashu_Official wrote:

#8520
その程度のブロック数で重くなるってどれだけ低スペックなんですか…。本当にそうなら買い替えるべきです。
インターネットなどの問題の可能性もありますが。
被った
学タブは買い替えることができません
aalaalscratcher
Scratcher
100+ posts

Scratch への提案

DeliciousTacos_S wrote:

ブロックを増やすだけで動作が変わらないは違うと思います。私は学タブでScratchをしているのですがブロックが100個以上あると動作が遅くなります。(個人の意見です。)学タブは学習するためのものなので低スペックのものが多いと思います。
学タブにしてもあまりにも低スペックすぎる可能性が
学習用タブレットは地域によって配られるものが違いますが
100個や200個で重くなるのを環境が原因だと仮定すると相当スペックが低いです
低電力モードがオンになっていないか
タブを開きすぎていないかを一度確認してみてください
Scratchが異常に重くなる原因は環境以外にも要因があります
また、環境をここで公開するには投稿するメッセージを書く欄の上にある
」とブロックの間にある地球儀のマークを押せば公開できます
My browser / operating system: ChromeOS 14541.0.0, Chrome 141.0.0.0, No Flash version detected
↑のように
これを使って環境を一度公開してみてください
mashu_Official
Scratcher
100+ posts

Scratch への提案

#8531に追加で使用している機種なども書いていただけるとより解決につながりやすいです。OS・ブラウザ情報だけで特定は難しいので…

Last edited by mashu_Official (Today 05:47:37)

kurosio-ZP
Scratcher
14 posts

Scratch への提案

DeliciousTacos_S wrote:

理解のしやすさで言えばメッセージを送るが少ない方が理解しやすいのかもしれません。「あまりにメッセージを送るが少なすぎると理解しにくくなりますが..」
他のスプライトを操作することは混乱を招く原因となります。
RICE-MAKER
Scratcher
40 posts

Scratch への提案

kurosio-ZP wrote:

他のスプライトを操作することは混乱を招く原因となります。

本当にそうでしょうか?「他のスプライトのX座標を10ずつ変える」とかなら混乱が起きるのはわかりますが、今回はあるなしです。そんなに混乱が起きるとは思えません。
Ke0
Scratcher
1000+ posts

Scratch への提案

要求する挙動がどうであれ、「オブジェクト指向に逆行する動作である」ことが論点です。混乱が起こるかはまた別問題ですが、「Scratchらしからぬ機能」の実装は望み薄だろうと思います。

私は内部的なことに通暁していないのでわからないんですが、「メッセージを介して間接的に操作する場合」と今回の提案のように「直接スプライトを操作する場合」、後者は見かけ上はすっきりしても内部的にはさして変わらないんじゃないでしょうか…?飛躍的に軽くなるなんてことは少なくともなさそうですが。

Last edited by Ke0 (Today 06:20:42)

DeliciousTacos_S
New Scratcher
10 posts

Scratch への提案

aalaalscratcher wrote:

DeliciousTacos_S wrote:

ブロックを増やすだけで動作が変わらないは違うと思います。私は学タブでScratchをしているのですがブロックが100個以上あると動作が遅くなります。(個人の意見です。)学タブは学習するためのものなので低スペックのものが多いと思います。
学タブにしてもあまりにも低スペックすぎる可能性が
学習用タブレットは地域によって配られるものが違いますが
100個や200個で重くなるのを環境が原因だと仮定すると相当スペックが低いです
低電力モードがオンになっていないか
タブを開きすぎていないかを一度確認してみてください
Scratchが異常に重くなる原因は環境以外にも要因があります
また、環境をここで公開するには投稿するメッセージを書く欄の上にある
」とブロックの間にある地球儀のマークを押せば公開できます
My browser / operating system: ChromeOS 14541.0.0, Chrome 141.0.0.0, No Flash version detected
↑のように
これを使って環境を一度公開してみてください
My browser / operating system: ChromeOS 14541.0.0, Chrome 142.0.0.0, No Flash version detected
申し訳ありませんでした別のデスクトップに大量のタブがありました。タブを全部消したところ軽くなりました。次からこのような混乱を招かないように尽くします…
面目ないです

Last edited by DeliciousTacos_S (Today 08:21:27)

DeliciousTacos_S
New Scratcher
10 posts

Scratch への提案

kurosio-ZP wrote:

DeliciousTacos_S wrote:

理解のしやすさで言えばメッセージを送るが少ない方が理解しやすいのかもしれません。「あまりにメッセージを送るが少なすぎると理解しにくくなりますが..」
他のスプライトを操作することは混乱を招く原因となります。
他のスプライトを操作するだけでどう混乱するのか教えてほしいです。
inoking
Scratcher
1000+ posts

Scratch への提案

#5834:

RICE-MAKER wrote:

kurosio-ZP wrote:

他のスプライトを操作することは混乱を招く原因となります。

本当にそうでしょうか?「他のスプライトのX座標を10ずつ変える」とかなら混乱が起きるのはわかりますが、今回はあるなしです。そんなに混乱が起きるとは思えません。
本当にそうです。

単純な作品はそうではないかもしれませんが、
複雑かつ大きな作品で、他人が作った場合や 自分が作ったものであっても日が経っていたような場合など
では十分にありえます。

「スプライトが突然消えてしまいます!」
「『これ以外のスプライトを隠す』がどこかにありませんか?」
「ありません!」
数日後。
「ありました。。」
というやり取りが目に浮かびます。

これは誇張ではなく、実際にこのようなやり取りはよくあることです。

こういったことになりにくいというのが
「オブジェクト指向」の「カプセル化」の考え方です。
調べてみてください。

Last edited by inoking (Today 09:19:17)

inoking
Scratcher
1000+ posts

Scratch への提案

#5835:

Ke0 wrote:

私は内部的なことに通暁していないのでわからないんですが、「メッセージを介して間接的に操作する場合」と今回の提案のように「直接スプライトを操作する場合」、後者は見かけ上はすっきりしても内部的にはさして変わらないんじゃないでしょうか…?飛躍的に軽くなるなんてことは少なくともなさそうですが。
小文字に対してですみません
単に隠される側のブロックが減ると言いたいのでしょう。
そういう問題ではなかったということはすでに明らかになっています。
abee
Scratcher
1000+ posts

Scratch への提案

このようなときは、Scratchの設計思想についてしらべてみると良いと思います。
私が特に重要だと考えているのが、
Maloney, J., Burd, L., Kafai, Y., Rusk, N., Silverman, B., and Resnick, M. (2004). Scratch: A Sneak Preview. Second International Conference on Creating, Connecting, and Collaborating through Computing. Kyoto, Japan, pp. 104-109.
です。
そこには、以前のバージョンではあるオブジェクトから他のオブジェクト(スプライトのこと)を直接操作できたけれども、オブジェクト間の結合が密になりオブジェクトの交換(再利用)が難しくなったため、それをできないようにすることにしたとあります。それに代わるものとして作られたオブジェクト間の結合を疎にする仕組みがメッセージです。
No inter-object script invocation. In Scratch 0.1, one object can invoke another object’s command blocks and scripts. For example, a “cat” object could invoke a “dog” object’s “chase” script. This feature was heavily used. As a result, very few of the studentcreated objects were self-contained; most objects had scripts that invoked scripts in other objects. Objects with such inter-object references cannot be easily exported and used in other projects (which would lack the object being referred to), making it difficult to support the free-form object exchange that we envision for Scratch. In fact, we realized that Scratch 0.1 actually encourages the construction of non exchangeable objects. Scratch 0.2 will therefore disallow directly inter-object script invocation, and we are in the process of designing more loosely-coupled ways for objects to interact.
このあたり、興味がある人は「デメテルの法則」も調べてみると良いかもしれません。

Last edited by abee (Today 10:16:06)

Powered by DjangoBB