掲載数No.1プログラミング教室・ロボット教室検索サイト

Small Basicとは?|マイクロソフトの作った学習用プログラミング言語!

Scratch(スクラッチ)」がクリアできたら、プログラミングを深く学べる「Small Basic(スモールベーシック)」の体験学習でキマリ!

ライターの自己紹介

私は、2001年の近畿大学・在学中にIT系ベンチャー「(有)イナズマ」を起業しました。情報関連を含めて臨時講師をこなしつつ、IT企業でプログラマ兼ディレクタを非正規で勤め、最終的に近畿大学大学院修了し、博士(工学)号を得ました。
 
2020年現在は(有)イナズマ取締役と大学非常勤講師、芸術科学会正会員。そして技術実用書からSF文芸書までの執筆活動を行っています。著書は65冊へ到達しました。

著作の紹介

近著は『小学生と親が楽しむ初めてのプログラミング』(さくら舎)
この書籍は、ドラゴンからメカにヒーロー/ヒロイン、そんな独特ナビゲータとともに、大人も活かせる知識やプログラミング体験ができる内容となっています。

 

はじめに

プログラミングについて学んでいく際、Scratch言語では物足りなくなったり、もっとプログラミングの世界へ踏みこみたくなったりしたら、「急がば回れ」です。
「C(シー)」言語や「Java(ジャヴァ)」、「Python(パイソン)」と、とかく人気があって、多く使われているテキストプログラミング言語を思いつきますが、待ってください。
ややこしい面がたくさんある有名な言語へ進む前に、テキストプログラミング言語の感覚と雰囲気をつかみましょう。
「Small Basic」言語は、プログラミング学習をステップアップしていくのに最適だと、講師の経験則からしてもお勧めできます。
この言語の運営元が「マイクロソフト」(Windowsの会社)だという点も、安心感になりませんか?

プログラミング学習の歴史

 「プログラミングして(作業を示す言葉です)プログラムを作り、動作させる――」、これはシンプルながら、実は難しい問題です。
 
歴史をひも解けば、コンピュータは「暗号を見抜くため」に発明されました。
こうあります。
ですが伏せられている本音があって、「毎回毎回、機械を目的どおり動作させるのに、配線をやり直すのは……面倒くさいな!」という悩みから、プログラミングして機械を動かす考え方が生まれた、とまぁ、こんな説まであります。そうです。
 
「コンピュータ」のご先祖様は、たとえば「足し算」用に部品同士がつながれているとき「割り算」をさせたいのなら、改めて配線から、最悪は部品の交換も必要だったのです。機械にくわしい技術者しか、手に負えない代物でした。
 
ところが、いろいろとスマートフォンのように保存していく(覚えさせていく)部品のご先祖(現代のハードディスクやSSD(ソリッドステートドライブ))と、そんな機械が、あれこれ活かせる作業用の場所こと、現代で言うメモリ。
そしてそれら部品たちを管理するリーダー役のCPU(シーピーユー)が発明されて、またもや世界は一変します。
 
まず、基本は今も昔も変わらない「プログラミング」で、「部品同士のつなぎ方や、部品たちへの指示」を電気の信号として覚えさせます(保存)。次にメモリへ、その電気の信号を広げさせます(読みこみ)。
最後は、ここの電気の信号をあつかえるリーダー役ことCPUが、自動的に配線を変えたり、部品たちへ指示を伝えたりします。これでバッチリ♪
技術者が部品たちのつなぎ方を変える仕事と、同じ仕事が「誰でもできる」ようになりました。
 
そんな歴史を持つプログラミングには、外国語さながらに使う言葉や文字(テキスト)が独特で、そのすべてをまとめて「プログラミング言語」と呼びます。

プログラミング言語の進化

プログラミング言語は現在も進化をつづけ、「Scratch(スクラッチ)」言語にいたっては、絵文字(ブロック)を見て、積み木みたいに組み合わせていけば、スゴイ作業まで行えます。
 
さらに知っていると、得する言葉があります。
絵文字などのブロックを使って、本のような指示書となれる「プログラム」を作るタイプは「ヴィジュアルプログラミング言語」と呼ばれます。
もうひとつは今も、本格的な仕事の現場であつかえる「プログラム」を作るとき、呪文のごとき命令の単語から数値など、文字を使って作るタイプです。これは「テキストプログラミング言語」と呼ばれ、区別されています。
 
どちらもプログラミング言語ですが「Scratch(スクラッチ)」言語の動き方をこっそり支えているのは、テキストプログラミング言語のひとつ「C#(シーシャープ)言語」です。
まさしく、現代に生まれてきたばかりのヴィビュアルプログラミング言語には、ブロックだけでは作業できない限界があるのです。ですから学んでいくと、いつかテキストプログラミング言語をあつかうことになるでしょう。

「雰囲気がまるで違う!」 
「文字だけで、いったいどうしたら!」

お子さんどころか保護者の方、そして多くの方がパニックになること、必須です。
そこで「Small Basic(スモールベーシック)」言語の出番となります。この言語は動き方を命令する文字を、プログラミングして「プログラム」を完成させます。
早口言葉みたいでなにやら難しそう?
では図をご覧ください。

図 Small BasicとScratchの似た命令を比べたもの
(『小学生と親が楽しむ初めてのプログラミング』より抜粋)

「Graphicswindow . DrawText(グラフィックスウインドウ、ドット、ドロウテキスト)」は、絵を意味する「グラフィック」用のウインドウへ「文字を描く(ドロウ)する」命令です。Scratch言語では、命令のブロックに「ひょうじする」「~ という」と書かれているだけで、意味合いは同じです。
「While(ホワイル)」「EndWhile(エンド、ホワイル)」命令は、指定した約束事と比べて「~までまつ」というブロックの、そっくりさんです。

Small Basic言語の特徴

Small Basic(スモールベーシック)言語は、ほかのテキストプログラミング言語より、やさしくシンプルな書き方で、Scratch(スクラッチ)言語と、ほとんど同じように命令を行わせられます。まさにブロックをそのまま、文字の命令へ置き換えていけるのです。
これで「テキストプログラミング言語」の雰囲気とコツがわかってきます。
Small Basic言語を使ってみる最大のメリットです。
しかも、本格的な現場であつかうときに、たとえば「プログラムをソフトウェア(アプリ)として、ほかのソフトウェアに支えられず単独で動かせる」ため、シンプルなSmall Basic言語でも、それなりに仕事へ対応できます。

プログラムをどんどん発展させていくと、Scratch言語では、まだ実現不可能な、ややこしい指示まで応じられます。
 
Scratch言語は、ある程度パワーアップさせられるブロック(命令)たちを「自由に組み合わせられ」ますね。
それに対して、多くのテキストプログラミング言語は「ブロックで命令していく指示を、自由に作りだせる」点が、まったく違うのです。

図 ヴィジュアル・プログラミング言語 VS テキスト・プログラミング言語
(『小学生と親が楽しむ初めてのプログラミング』より抜粋)

図 Small Basic言語ならではの「星が舞う中の自由なキャラクタ操作」例
(『カンタン。タノシイ。カッコイイ。小学生からのプログラミング Small Basicで遊ぼう!!』から抜粋)

ただデメリットは、Windowsなどが現れる前のように、プログラムを文字で作っていく、わかりにくさです。
パソコンがみるみる普及した理由のひとつに、見た目で直感的に操作できるようになったから、という面があります。
まさしく見て直感的にプログラミングができる部分は、Scratch言語そのものですね!


まとめ

どんなにシンプルだとしても、プログラミングという新しい考え方を学ぶとき、「初めの一歩」が文字だらけでしたら、保護者や大人でも怖く感じてしまいます。
改めて、「Small Basic」言語という選択肢は、いかがでしょう?

コエテコ 読者会員募集!

いいね!すると、プログラミング教育に関する最新情報や
セミナー情報などを定期的にお届けします。

  • # セミナー情報

  • # 数値レポート

  • # FC募集

新たなスキル「プログラミング教育」を先取りしませんか? 今後のプログラミング教育流れ図
今から、先取りしませんか?
コエテコ経由の体験申し込みでアマギフ2000円分プレゼント!
お近くの教室を探す →

あわせて読みたいガイド

ガイドを読めばプログラミング教育がスッキリわかる!
プログラミングまるわかりガイドを読む

RECOMMEND

この記事を読んだ方へおすすめ