Scratchには、コードを簡略化、見やすくするために使用されるメッセージブロックと定義ブロックがありますが、今回はこの2つのブロックの使い分けについて紹介します。
まずこの場合、メッセージ1は、メッセージを送って「10歩動かす」が終わるのを待たずに「こんにちは!と言う」を実行します。
一方で定義1の場合、「10歩動かす」が終わるのを待ってから「こんにちは!と言う」を実行することになります。
そして一番の違いとして、定義は「引数」を扱うことができます。
ブロックを作成時に引数を追加することができます。
10歩動かしたあとに20歩動かすようにする場合、メッセージはブロックを2つ作らないといけませんが、定義であれば引数を指定することによって1つのブロックのみで完結することができます。
メッセージはこのように他のスプライトと同時にアクションを起こしたいときに使用することが多くなります。