コンテンツにスキップ

MiniScript

出典: フリー教科書『ウィキブックス(Wikibooks)』

概要

[編集]

MiniScriptは、シンプルで習得しやすい、現代的なスクリプティング言語である。Mini Micro向けに開発されたが、Unity等の他のプラットフォームでも利用可能である。

基本文法

[編集]

変数

[編集]

MiniScriptでは、変数宣言時に型指定は不要である。変数名は文字またはアンダースコアで始まる必要がある。

x = 42        // 数値
name = "Joe"  // 文字列
active = true // 真偽値

データ型

[編集]

主要なデータ型:

  • 数値(number):整数と浮動小数点数
  • 文字列(string):テキストデータ
  • リスト(list):順序付きコレクション
  • マップ(map):キーと値のペア
  • 真偽値(boolean):true/false
  • null:未定義値

制御構造

[編集]

if文

[編集]
if x > 0 then
    print "正の数です"
else if x < 0 then
    print "負の数です"
else
    print "ゼロです"
end if

for文

[編集]
for i in range(1, 5)
    print i
end for

while文

[編集]
while count > 0
    print count
    count = count - 1
end while

関数

[編集]

関数は以下のように定義する:

calcArea = function(width, height)
    return width * height
end function

呼び出し例:

area = calcArea(5, 3)
print area  // 出力: 15

コレクション

[編集]

リスト

[編集]

リストは順序付きのコレクションである:

numbers = [1, 2, 3, 4, 5]
print numbers[0]     // 最初の要素(1)を出力
numbers.push(6)      // 末尾に追加
numbers.pop          // 末尾から削除

マップ

[編集]

キーと値のペアを格納する:

person = {"name": "山田", "age": 30}
print person["name"] // "山田"を出力
person["city"] = "東京" // 新しいキーと値を追加

文字列操作

[編集]

基本操作

[編集]
text = "Hello"
len = text.len       // 長さを取得
upper = text.upper   // 大文字に変換
lower = text.lower   // 小文字に変換

文字列結合

[編集]
str1 = "Hello"
str2 = "World"
result = str1 + " " + str2  // "Hello World"

ファイル操作

[編集]

読み込み

[編集]
content = file.readLines("test.txt")
for line in content
    print line
end for

書き込み

[編集]
file.writeLines("output.txt", ["line1", "line2"])

エラーハンドリング

[編集]

try-catch構文

[編集]
try
    // エラーが発生する可能性のあるコード
    result = riskyOperation()
catch err
    print "エラーが発生しました: " + err
end try

ベストプラクティス

[編集]

コーディング規約

[編集]
  • インデントには2スペースまたは4スペースを使用
  • 関数名はキャメルケースを推奨
  • 変数名は意味のある名前を使用
  • コメントは適切に記述

パフォーマンス最適化

[編集]
  • 大きなループ内での重い処理を避ける
  • 不必要なグローバル変数の使用を控える
  • リソースは適切に解放する

デバッグ

[編集]

デバッグ技法

[編集]
  • print文によるデバッグ出力
  • 値の型確認
  • スタックトレースの確認
debug = function(value)
    print "DEBUG: " + value
end function

関連項目

[編集]

参考文献

[編集]