(4)先週覚えたけどブログにする程ボリューム無いから全部まとめてメモ
perl
Data::Validatorの、hashで引数渡さなくても良いStrictSequenceというのもある
リファレンスの例文
sub hoge { state $rule = Data::Validator->new( foo => 'Str', )->with('StrictSequenced'); my $args = $rule->validate(@_); } ----------------------- # hoge('fugu');でValidateしてくれる
比較の戻り値
return $fugu->name == 'フグ男' && $teng->search('fugu_info', { fugu_id => 1 });
- これだったら、最初の比較が通ったら、最後に比較されたsearchの結果が返ってくる
- 最初や最後の比較でfalseならfalseを返す
PACKAGE
- 自身のパッケージ名を返す(Row::Fuguとか)
- クラスメソッドを呼びたい時につかったりする
バッチプログラムの2つの認識
- 手動で実行するプログラム
- cronで定期的に処理を実行させること
テーブルにis_newカラムを付ける場合
- is_newは新規通知を出したい時に使うが、アイテムBOXに報酬を付与する仕組みの場合は受け取って欲しいのでずっと通知を出し続ける場合もある
historyテーブルに格納する内容
- deleteクエリが重かった時代にはテーブルにis_deleteフラグを持たせるけど、今はdeleteは軽くなってるので元のレコードを消すのも良い
- もちろんhistoryテーブルのカラムは出来るだけ元のテーブルを同じ構成にした方が分かりやすい
.proverc
- --exec "perl -Ilib -MTest:Flatten -MTest::Name::FromLine"みたいなのは、Test::Prettyに実装されてるので、cpanからinstallして--Prettyを.provercに追加すれば良いだけ
zsh
oh-my-zshのカスタマイズ情報
Unity
Textureの圧縮のベストプラクティス的なの
AssetPostProccessor
- http://docs.unity3d.com/Documentation/ScriptReference/AssetPostprocessor.html
- データがprojectViewにimportされたらhookしてくれるので,importしたデータのInspectorの値を設定するとか、色々使えそう
MonoのAOTコンパイラについて
- http://ufcpp.wordpress.com/2013/02/24/xamarin-2-0/
- iOSに色々AOTの弊害があるみたいだ
- http://www.slideshare.net/iseebi/ciphone-with-monotouch/
Genericsの値型問題
- ExecutionEngineException: Attempting to JIT compile method 'SometType`1
:.ctor ()' while running with --aot-only."と出る - http://docs-jp.unity3d.com/Documentation/Manual/TroubleShooting.html#iosRef
ダミーメソッドで解決とは
- Dictionary<int, T> で良いんだけどこの Tに取りうるオブジェクトをDictionary<int, Fugu> tmp = new Dictionary<int, Fugu> ()でいけるらしい
- Tにstruct,enumなどの値型を指定するとiOSでこの問題起こる
浮動小数の誤差によってテストこけた
- 誤差が出るので桁数を丸めるか、ToStringしてしまって比較しても良いかも
- http://dobon.net/vb/dotnet/beginner/floatingpointerror.html