書誌情報
- 著者: ykanda
- 発行日: 2010-12-09
- 最終更新日: 2011-09-05
- バージョン: 1.0.0
- ページ数: 165ページ(A4PDF版換算)
- 対応フォーマット: EPUB, PDF
- 出版社: 達人出版会
対象読者
Squrrelに興味のある方(初心者、または初心者に教える方)。組み込み言語に興味のある方。
著者について
ykanda
新潟県出身。ゲームにまつわるプログラムをする人。東京都内のゲームデベロッパにて、コンシューマゲームソフトの開発に従事。現行機種は大体さわりましたが、最近の話だとNintendo DSが多かったです。ジャンルでいえばRPGでしょうか。2010年夏ごろからフリーランスっぽく活動中。最近はスマートフォンやWebをターゲットプラットフォームとしたゲーム開発が興味の中心です。もちろん、コンシューマハードも機会があればまた触りたいと思います。
Squirrelはゲーム界隈では割と有名な言語でしたが、日本語の書籍などがどうやら無いようでした。業務で用いる際に、教本として使えそうなものでいまいち手頃なものが無かったため、自分で公式ドキュメントを和訳しつつ、サンプルなどを交えた文書を作成していました。これを高橋征義氏に持ち込んだのが本書が生まれたきっかけです。
電子書籍ではありますが、「本を書く」といったような事は今回が初めてです。至らぬ点もあるかと思いますが、本書がなにか皆さんのお役に立てれば幸いです。
目次
まえがき
- Squirrelについて
- Squirrelの応用分野
- 本書の概要
- 謝辞
第1章 はじめに
- Squirrelの特徴
- SquirrelとLuaの比較
- Squirrelのインストールと環境設定 (Windows)
- Squirrelのインストールと環境設定 (Linux)
- Squirrelのインストールと環境設定 (Mac OS X)
- "Hello Squirrel!"
- コメント
- コンソールへの出力
- はじめる!Squirrel
第2章 変数と値とデータ型
- データ型
- リテラル構文
- エスケープシーケンス
- 文字列操作
- 変数
- const
- enum
- 真偽値について
- 値の変換
- この章のまとめ
- 章末問題
第3章 演算子
- 演算子の種類
- 代入演算子
- 算術演算子
- インクリメント演算子とデクリメント演算子
- 関係演算子
- 論理演算子
- ビット演算子
- その他の演算子
- 演算子の優先順位と()による優先順位の制御
- この章のまとめ
- 章末問題
第4章 制御構文
- ステートメントとブロック
- if文、if~else文
- switch, case文
- while文
- do~while文
- for文
- continue文
- break文
- その他の制御構文
- この章のまとめ
- 章末問題
第5章 関数
- 関数について
- 関数の定義と呼び出し
- 関数の戻り値とreturn文
- 関数の再定義について
- デフォルト引数
- 可変個引数
- 関数の再帰呼び出し
- 末尾再帰
- この章のまとめ
- 章末問題
第6章 配列とテーブル
- 配列の生成とインデックス
- 配列に対する操作
- テーブルの生成
- テーブルアクセスの委譲
- テーブルの複製
- テーブルのスロットの追加
- 改めてルートテーブルについて
- テーブル要素の削除(delete)
- in演算子
- foreach文
- この章のまとめ
- 章末問題
第7章 クラス
- クラスの定義
- メンバ変数
- メンバ関数
- クラスオブジェクトとクラスインスタンス
- staticメンバ変数
- コンストラクタ
- instanceof演算子
- クラスの継承(extends)
- 継承元クラスの関数の呼び出しとオーバーライド
- parent
- in演算子
- foreach文
- この章のまとめ
第8章 高度な話題
- メタメソッド
- 協調動作
- 例外処理
- この章のまとめ
Squirrelに関する情報
- Squirrelスクリプトの構造
- Unicode
- 参考リンク
- 参考書籍
ビルトイン関数・メタメソッド一覧
- グローバルシンボル
- デフォルトの委譲処理(Default delegates)
- メタメソッド
Squirrel 3.0 について
- baseキーワードの追加
- delegateキーワードの廃止
- <=>演算子の追加
- ローカル関数ステートメントの追加
- 可変個引数(vargc, vargv)
- parentキーワードの廃止
- ラムダ(lambda)式の追加
- クラスインスタンス化の後でもクラスの持つ関数を追加/置き換えが可能になった
- JSON互換の記法でテーブルを記述できるようになった
- _newmemberメタメソッドへのisstaticパラメータの追加
- ライセンスの変更
- 配信サイトの変更