40歳からのキャリアチェンジ

20代はエンジニア・PM、30代はWeb系エンジニア向けのキャリアアドバイザー。40代の今はフリーランスで開発含めて色々やってます。技術ネタとしてはRuby/RailsとJavaScript関連あたり

titanium でシングルコンテキストな書き方にチャレンジ

Capistrano勉強しようと決めてたのですが、@kaz_konnoさんが

私が #titanium でシングルコンテキストを使う一番の理由は、名前空間汚染を防ぐ事よりも、メモリ管理面、パフォーマンス面共に優れているからです。
http://twitter.com/#!/kaz_konno/status/118709817232728064

と書いていたのが気になりました。(というかTitaniumいじりたくなっただけなんだけどねっw)

気になったのは、パフォーマンスに関する所で、理由としては自分が作ってるアプリを実機に転送したら、一部機能が動作しないというのもあるのですが、それよりも想像していた以上に起動に時間かかったからこのあたり改善できる余地があるならどうにかしたいと思っていたからです

シングルコンテキストって?

twitterの#titaniumjpとかで、時折見かけていたシングルコンテキストの話題。よくわかってなかったので、以下の情報源を参考にしました

最初に着手したこと

自分はこれまで

var sampleObj = function(){};
sampleObj.prototype= {
  methodA:function(){
    //
  },
  propA:function(){
    //
  }
};

という書き方してきたので

(function(){
  //
})();

というソースを読みなれてないからイマイチ理解が進まないですがhttp://d.hatena.ne.jp/kaz_konno/20110704/1309799952:title=のひな形のソースはコード量少ないし、全体像をつかむ上では適切だったのでこちらのソースをまずは全部理解する所から着手しはじめました。
すでに上記ソースは読み終えて、githubのtweetaniumのソースもほぼ理解できたので、次回もう少し突っ込んだ所を書いていこうと思います