講義メモ 後半

p.48 変数の命名ルール

・必須ルール(守らないと実行できない)とチームルール(エラーにはならないが推奨されない、現場で認められない)がある
・必須ルール
① 大文字、小文字、数字、_、2バイト文字からなる
② ただし、先頭文字は数字禁止
③ 予約語(using、public、classなど)と重複は禁止
・主なチームルール
① 2バイト文字は推奨されない
② 大文字小文字の使い分けルールに従う(例:変数名は小文字 など)
③ 特殊な場合を除いてアンダーバーは使わない。特に先頭には置かない
④ 小文字にすると予約語と一致する単語は使わない(例:Using、PUBLICなど)
⑤ 1文字の変数名は特別な意味を持つ変数には使わない。使い捨ての場合はOK(例:i,j,kは繰返しカウンタ専用)

p.50 スペースの入れどころ

・必須スペース(守らないと実行できない)と、推奨スペース(エラーにはならないが推奨される)がある
・予約語の前後のスペースは必須。
・演算子の前後のスペースは任意で、チームルールによって推奨されることが多い
 例:「*」はC/C++でポインタを扱う場合(*C)と掛け算(A * B)で用いるので、見間違いやすい。
・また「{」「}」の前後に空白や改行が推奨される場合が多い

補足:変数名の長さ

・512文字程度が上限
・C言語では「型が異なるものには異なる名前を付ける」原則があるので、名前が長くなりやすい
・しかし、C#/C++/Javaなどでは(後述するポリモフィズムにより)「型にかかわらず、同じ意味のものは同じ
 名前にする」が原則なので、名前を長くすることは少ない。

p.52 パブリック変数とは

・プログラムは部品であるコンポーネント(モジュール)の組み合わせで実現されることが多い
・あるいは、複数のサブプログラムに分割してグループ開発することが多い
・複数の要素の間でデータを共有し受け渡す方法の一つがパブリック変数で「どこからも見える」存在になる
 ※ 見えてしまう、壊されやすいというデメリットもある
・Unityのスクリプトでは、クラスの先頭でパブリック変数を宣言することで「どこからも見える」変数になる
・宣言書式: public 型 変数名; //初期化も可能、複数記述も可能
 ※ 実務ではテスト時のみ用い、完成時には残さないことが多い
・なお、Unityのスクリプトでclassの前にもpublicがあるのは、Unityシステムから見える必要があるから

p.53 Chap1_10_1

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Chap1_10_1 : MonoBehaviour {
    public string text; //パブリック変数の宣言
    void Start() {
        Debug.Log( text ); //文字列変数の値を出力
    }
    void Update() {
        
    }
}

補足:Inspectorのパブリック変数に対する動作

・スクリプトが保存されると、Unity側で解析し、パブリック変数があればInspectorに入力欄が用意される
・ユーザがInspectorから入力した内容は保持され、最優先で利用される
・よって、プログラム側で初期値を設定しても、入力値によって上書きされる

アレンジ演習:Chap1_10_1

・パブリック変数の宣言を初期化にして値を設定する
・実行前にInspectorで値を入力してから実行し、結果を確認しよう
・Inspectorで値を消しても、長さゼロの文字列が渡されてしまうことを確認しよう
・変数名を変更すると、初回扱いになり、初期値がInspectorに表示されることを確認しよう
・なお、プログラム内でパブリック変数に値を代入でき、Inspectorの値も書き変わる
・ただし、スクリプトを再保存すると、Inspectorの値は入力値に戻されてしまうことを確認しよう

作成例

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Chap1_10_1 : MonoBehaviour {
    public string text2 = "ヴェルグリンド"; //パブリック変数の初期化
    void Start() {
        text2 = "セイラ";
        Debug.Log( text2 ); //文字列変数の値を出力
    }
    void Update() {
        
    }
}

アレンジ演習: p.46 chap1_8_2

・変数kakakuをパブリック変数にしよう
・そして、Inspectorで値を入力して動作を確認しよう

作成例

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Chap1_8_2 : MonoBehaviour {
    public double kakaku = 100; //パブリックな実数型変数の初期化
    void Start() {
        double urine = kakaku * 1.08; //実数型変数の計算式による初期化
        Debug.Log(urine); //実数型変数の値を出力
    }
    void Update() {
    }
}

アレンジ演習: p.46 chap1_8_2 続き

・実数1.08をパブリック変数taxにしよう
・そして、Inspectorで2値を入力して動作を確認しよう

作成例

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Chap1_8_2 : MonoBehaviour {
    public double kakaku = 100, tax; //パブリックな実数型変数の初期化と宣言
    void Start() {
        double urine = kakaku * tax; //実数型変数の計算式による初期化
        Debug.Log(urine); //実数型変数の値を出力
    }
    void Update() {
    }
}

提出:アレンジ演習: p.46 chap1_8_2 続き2

・税率を100分率で入力できるようにしよう
・例えば、8と入力したら価格を1.08倍した結果になること
・ヒント: 売値=価格×(100+税率)÷100

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です