WebStormの知識 -- Web開発のタスクの自動化
- JetBrains社が開発しているWeb開発向けのIDE
- 初期設定をしなくても使うことができる
- 新しいツールのサポートが早い
- 各種フレームワークが選択できる
- Webフロントエンド開発に必要なものは大体揃っている(HTML(5)+CSS+JavaScript)
- Javascriptのサポートが手厚である
用語
IDE:integrated development environment
参考
WebStorm / PhpStorm 基礎 シーブレイン社内勉強会
最強のJavaScript IDE 「WebStorm」を使ってみた | Web Scratch
- Bower
sudo npm install -g bower
フロントエンド用パッケージマネージャー
必要なライブラリを簡単にインストールすることができる
BowerをインストールするにはNode.jsのインストールが必要
参考
- Yeoman
sudo npm install -g yo
参考
- The web's scaffolding tool for modern webapps | Yeoman
- 今話題のワークフロー構築ツール「Yeoman」とは?:WEB制作を効率化! Yeomanを使ってみよう! 第1回 | エンカフェ
- gulp-angular
[create new project]-[Yeoman]-[install generator]でインストールする。
【C#】set{ }get{ } 使用例
使用例1
public GameDifficulty Difficulty { get { return _difficulty; } //difficultyを選択する //セットするときにイベントを呼び出す set { _difficulty = value; EventsManager.OnGameChangeDifficulty(_difficulty); ChangeGravityBasedOnDiffculty(); } }
使用例2
public GravityState LevelGravity { get { return _gravityState; } set { _gravityState = value; switch (_gravityState) { case GravityState.Down : Physics.gravity = Vector3.down * DefaultGravity; break; case GravityState.Up : Physics.gravity = Vector3.up * DefaultGravity; break; } EventsManager.OnGameChangeGravity(_gravityState); } }
【Unity エラー】Android Manifest SDK version番号揃える
すべてのAndroidManifestのandroid:minSdkVersionとandroid:targetSdkVersionの番号を同じにする。
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="23" />
error
Temp/StagingArea/android-libraries/android-notifications-release/AndroidManifest.xml:3] Main manifest has <uses-sdk android:minSdkVersion='15'> but library uses minSdkVersion='16
minSdkVersion='16に設定する。
【Xcode エラー】 process launch failed: timed out waiting for app to launch
process launch failed: timed out waiting for app to launch
【C#】デリゲート(delegate) 使用例 第三弾
1−0
void RewardTTP(string Id) { **.Instance.GiveRewards (Id, delegate(int errorCode) { ClaimItem (errorCode); }); } void ClaimItem (int errorCode) { if (errorCode == 0) { EventManager.OnUpdateNotif (true, ""); **.Achievement.ShowAchievementResultView (); } else if (errorCode == 204) { //Reward Redeemed EventManager.OnUpdateNotif (false, "You Already Claimed This Item"); } else if (errorCode == -1) { //Time Out EventManager.OnUpdateNotif (false, "Check Your Connection"); } }
2
public void GiveRewards(string Id, Action<int> callback){ callback(0); }
int型のアクションを呼ぶ。callback(0);の形で返す。
1−1
void RewardTTP(string Id) { **.Instance.GiveRewards (Id, delegate(int errorCode) { if (errorCode == 0) { EventManager.OnUpdateNotif (true, ""); **.Achievement.ShowAchievementResultView (); } else if (errorCode == 204) { //Reward Redeemed EventManager.OnUpdateNotif (false, "You Already Claimed This Item"); } else if (errorCode == -1) { //Time Out EventManager.OnUpdateNotif (false, "Check Your Connection"); } }); }
【Unity ライブラリ】"Easy Save 2" : List型のデータを保存
配列型ではセーブできなかったのArray型でES2に保存。
(保存したいデータに、項目が複数ある場合は新しくクラスを作って、IDをつけて保存するのも一つの手段。)
using UnityEngine; using System.Collections; using System.Collections.Generic; public class Test_List : MonoBehaviour { public List<bool> _isFinishStep; void Awake() { LoadData(); } private void LoadData() { if(ES2.Exists("isFinishTutorial")) { _isFinishStep= ES2.LoadList<bool>("isFinishTutorial"); Debug.Log("es Created"); } else { _isFinishStep = new List<bool> (); for(int i = 0; i < 11 ; i ++ ) _isFinishStep.Add(false); SaveData(); } } private void SaveData() { ES2.Save (_isFinishStep, "isFinishTutorial"); } private void Update() { if(Input.GetKeyDown(KeyCode.Space)){ _isFinishStep = ES2.LoadList<bool>("isFinishTutorial"); for(int i =0; i < _isFinishStep.Count ;i++){ Debug.Log("i " + i + " = "+ _isFinishStep[i]); } } } void FinishStep(int id) { _isFinishStep[id] = true; SaveData(); } }
同じクラス内に同じ名前のメソッド
同じクラス内で、引数または、アクセス修飾子(private,public, etc)が違えば、同じ名前のメソッドを定義することができる。
using UnityEngine; using System.Collections; public class Test_SplashScreen : MonoBehaviour { public void Test(int id) { } public void Test(string stg) { } private void Test() { } }