Scratchで関数(ブロック)を作ってみた。

この記事は約3分で読めます。

もっと効率よくできないかな?
同じ処理ならまとめることできないかな?

っと、考えだすと、よりプログラミング力もついていきます。

どうすれば効率よく、スッキリしたプログラミングコードになるのか?

このような、考え方をするのもプログラミング的な思考力だと考えます。

こちらの続きから
https://rsjobs.net/blg/skill/pg-thinking/

正方形、正三角形、星、円といった描画をするプログラム

これらを続けてするには?

どうすれば、よいかと考えてみましょう・・・(例が悪い?)

一つの図形であれば、こんな感じでもよいですが、

岡山市のプログラミング教室でボールが動いた軌跡のプログラム4-1
岡山市北区nプログラミグ教室「キュリオステーション岡山店」プログラミング例 動きの軌跡

これを連続して作ると・・・

岡山市のプログラミング教室でボールが動いた軌跡のプログラム5
岡山市北区nプログラミグ教室「キュリオステーション岡山店」プログラミング例 関数を作らない場合

こんな感じになります。

結果でみると、これでも、OKなのですが、何かごちゃごちゃしてスッキリしないプログラミングになっています。

なので、もっと、効率よく、スッキリ綺麗なプログラミングを考えます。

関数(かんすう)」といった言葉があります。

Excelなどで、使ったことがあるかと思います。合計を求める時に使うSUM

これも「関数」です。

共通して使えそうなロジックはまとめて一つにすることができるのが、「関数」です。

ということで、

共通して使えるのは、

繰り返しの部分、、、

パラメータとしては、回数、歩数、角度、待ち時間

を引き渡して作ると・・・

こんな感じになります。

これだと、同じ処理がまとまり、かなりスッキリしたプログラミングになります。

岡山市のプログラミング教室でボールが動いた軌跡のプログラム6
岡山市北区nプログラミグ教室「キュリオステーション岡山店」プログラミング例 関数の説明

Scratch では、関数 ではなく、「ブロック」と呼ばれています。

引数(ひきすう)に、関数に渡す値をセットして呼び出し、処理が終わると、戻ってくるものです。

「同じ処理であれば、一つにまとめることを考える。」

これも効率的な考え方であり、Java言語などで、よく使われる、クラスといったモジュールも同じ発想で作られたものです。

効率よく使いまわしができ、簡単に作れるのか?

といった、仕組みを考えることもプログラミングの考え方になります。

是非、Scratchのブロックを使いながら、修正も簡単にできる使いまわしのできる仕組み、ロジックを考えて下さい。

関数を作らなくても、見た目、同じように動くのも、プログラミングの面白いとこです。

いろいろなロジックが存在し、どれも動きは同じになりますが、より、簡単な?より解りやすいロジックを作っていければスキルアップしていくことでしょう。

プログラミングを考える課程において、様々な仕組みを考えます。

どうすれば、簡単に、効率的になるだろうか?

横着者の発想なのかも知れませんが、プログラミングにおいては重要なことです。

Java言語にしても、Python言語にしても、どのプログラミング言語でも、作った関数は、使いまわしができます。

どんどん使えそうな機能、関数、クラスモジュールを作って、部品として使うことで効率的に作っていくことができるのです。

作ったモノは自分の資産になりますので、ぜひ、モジュール化することを考えて下さい。

事例も多いので、参考書的な本⇒スクラッチプログラミング事例大全集

タイトルとURLをコピーしました