特集:Small Basicで初プログラミング

超簡単「Small Basic」でプログラミングを始めよう!

デジタルアドバンテージ 一色 政彦
2009/08/25
Page1 Page2 Page3

Small Basicプログラミングの基礎

オペレーションの基本

 「TextWindow.WriteLine("Hello World")」というコードにより、先ほどのようなメッセージが表示されるわけだが、このコードについて内容を説明しよう。

 まず「TextWindow」は、上の画面のコマンド・プロンプトを意味する。

 そして「.」は、そのコマンド・プロンプト「〜の〜」という所属を意味する。

 続く「WriteLine」は、「1行を書く」という意味だ。つまり、その後の ( ) 内に記述されている「Hello World」という1行をコマンド・プロンプト上に書いて、われわれに見えるように表示しているわけだ。

 多くのプログラミング言語がそうだが、文字列(=複数の文字を並べたもの。この例では「H」「e」「l」「l」「o」「 」「W」「o」「r」「l」「d」という文字を並べている)は、ダブルクォーテーション(")で囲む必要がある。

 先ほど、1文字ずつ記述しているときに、右側のヘルプで気付いたかもしれないが、TextWindowは「オブジェクト」(Object)と呼ばれるもので、何らかのまとまった存在を表す。

 このオブジェクトの後に「.」を続けて、「オペレーション」(Operation:操作。ほかの言語では「メソッド」や「関数」と呼ばれる)を記述する。この例ではWriteLineというオペレーションを記述している。オペレーションの後ろには ( ) を付ける。( ) 内にはカンマ「,」で区切って複数の値を記述できる。この値は、「引数」(ひきすう:Arguments)と呼ばれる。引数がないオペレーションもある。

戻り値があるオペレーション

 また、オペレーションの中には「戻り値」(Returns)を持つものがある。戻り値とは、オペレーションの操作結果として返された値のことだ。そして、この値を受けるためには、変数が必要となる。この変数の名前は、任意の文字列を記述すればよい(ただし、オブジェクト名などに既にある名前は使えない)。

 例えば、次のコードでは、FileオブジェクトのReadContentsオペレーションにより、引数として指定されたfilepath変数(=「C:\Small Basic Projects\TextWindow1.sb」)のファイルの内容をすべて読み込んで、そのテキストを戻り値としてcontents変数に返している。contents変数に格納されたテキストはTextWindowオブジェクトのWriteオペレーションにより、コマンド・プロンプト上に表示されている。なお「=」は、右辺の値を左辺に「代入」するという意味がある。

'TextWindow.WriteLine("Hello World")
filepath = "C:\Small Basic Projects\TextWindow1.sb"
contents = File.ReadContents(filepath)
TextWindow.Write(contents)
戻り値があるオペレーション

 なお、1行目の先頭にシングル・クォーテーション「'」が記述されているが、この記述より後ろはコメントとして取り扱われ、実行されない。このように、既存の文をコメント化することは「コメントアウト」と呼ばれる。

オペレーションのまとめ

 以上のようにSmall Basicプログラミングでは、基本的に、このような「オブジェクトのオペレーション」の文を、たくさん記述していくことで、目的の処理を実現していくわけだ。

プログラミングの基礎(1):何らかの操作・動作を行う

' 引数なしのオペレーション
<オブジェクト名>.<オペレーション名>()

' 引数ありのオペレーション
<オブジェクト名>.<オペレーション名>(<引数1>, <引数2>, ……)

' 戻り値ありのオペレーション
戻り値 = <オブジェクト名>.<オペレーション名>(<引数1>, <引数2>, ……)

プロパティの基本

 Small Basicプログラミングで、「オペレーション」と同等に重要なのが、「プロパティ」(Property)である。「プロパティ」とは、何らかの値を設定/取得したり、何らかの性質を変更したりするためのものである。

 例えば先ほどのエディタ内に、次の太字の行を書き加えてみよう(複数の行を記述する場合には改行を行う)。

TextWindow.BackgroundColor = "Yellow"
TextWindow.WriteLine("Hello World")

 これを実行すると、次のように、背景色(BackgroundColor)が「黄色」(Yellow)で、「Hello World」という文字列がコマンド・プロンプト上に表示される。

プロパティの実行例

 このようにSmall Basicプログラミングでは、プロパティによりさまざまに性質や値を設定できる(この場合は、背景色という性質を変更している)。

 プロパティの記述方法は、先ほどのオペレーションとほぼ同じだが、 ( ) ではなく、「=」により値を代入するという違いがある。

プロパティのまとめ

 プロパティについてもまとめておこう。

プログラミングの基礎(2):何らかの性質や値を設定/取得する

' 値を設定するプロパティ

<オブジェクト名>.<プロパティ名> = 値

' 値を取得するプロパティ
変数 = <オブジェクト名>.<プロパティ名>

Small Basicによるグラフィックス・ウィンドウ

 先ほどはコマンド・プロンプトによるCUI(=テキストによるユーザー・インターフェイス)だった。Small Basicは、Windows上の通常のアプリケーションと同じグラフィックス・ウィンドウによるGUI(=グラフィカル・ユーザー・インターフェイス)にも対応している。

 コマンド・プロンプトは「TextWindow」オブジェクトを使ったが、グラフィックス・ウィンドウは「GraphicsWindow」オブジェクトを使う。あとは、先ほどと同様にオペレーションとプロパティを記述していくだけだ。

 例えば次のコードでは、背景色をアイボリー色(=クリーム色)に、タイトルバーを「初グラフィックス・ウィンドウ」に、横幅を320ピクセルに、高さを200ピクセルにして(=ここまでがプロパティの設定)、ウィンドウを表示している(=オペレーションの呼び出し)。さらに、左上隅が(0, 0)(=X座標「0」、Y座標「0」)として、(10, 10)から(100, 100)に向かって線を引き、(10, 100)から(100, 10)に向かって線を引いている(=オペレーションの呼び出し)。

GraphicsWindow.BackgroundColor = "Ivory"
GraphicsWindow.Title = "初グラフィックス・ウィンドウ"
GraphicsWindow.Width = 320
GraphicsWindow.Height = 200
GraphicsWindow.Show()
GraphicsWindow.DrawLine(10, 10, 100, 100)
GraphicsWindow.DrawLine(10, 100, 100, 10)
グラフィックス・ウィンドウのコード例

 これを実行すると、次のような画面が表示される。

グラフィックス・ウィンドウの実行例

 Small Basicでも、このように通常のWindowsアプリケーションが作れるので、頑張ればそれなりのプログラムが書けるだろう。

 ここまでSmall Basicの基本的な機能について紹介してきた。次のページでは、学習向けの機能を中心に、よりプログラミングを楽しむことができる高度な機能を紹介していこう。


 INDEX
  [特集] Small Basicで初プログラミング
  超簡単「Small Basic」でプログラミングを始めよう!
    1.Small Basic環境の概要/初めてのSmall Basicプログラミング
  2.Small Basicプログラミングの基礎/Small Basicによるグラフィックス・ウィンドウ
    3.カメを自由自在に動かそう/Small Basicプログラムを共有しよう


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH